From cddfdc642e066624ad6c5a04ed3094bf471ca944 Mon Sep 17 00:00:00 2001 From: Arkanoid87 Date: Mon, 7 Jun 2021 01:21:12 +0200 Subject: [PATCH 001/170] gstreamer: move executables to bin output Co-Authored-By: Jan Tojnar --- pkgs/applications/kde/kamoso.nix | 2 +- pkgs/applications/misc/qt-video-wlr/default.nix | 2 +- pkgs/applications/networking/browsers/nyxt/default.nix | 2 +- pkgs/development/libraries/grilo-plugins/default.nix | 2 +- pkgs/development/libraries/gstreamer/core/default.nix | 6 +++--- pkgs/development/libraries/libextractor/default.nix | 2 +- pkgs/tools/networking/gmrender-resurrect/default.nix | 4 +--- 7 files changed, 9 insertions(+), 11 deletions(-) diff --git a/pkgs/applications/kde/kamoso.nix b/pkgs/applications/kde/kamoso.nix index 3e5eb53858f1..6d2c1a80c739 100644 --- a/pkgs/applications/kde/kamoso.nix +++ b/pkgs/applications/kde/kamoso.nix @@ -34,7 +34,7 @@ mkDerivation { ]; qtWrapperArgs = [ - "--prefix GST_PLUGIN_PATH : ${lib.makeSearchPath "lib/gstreamer-1.0" gst}" + "--prefix GST_PLUGIN_PATH : ${lib.makeSearchPathOutput "lib" "lib/gstreamer-1.0" gst}" ]; meta.license = with lib.licenses; [ lgpl21Only gpl3Only ]; diff --git a/pkgs/applications/misc/qt-video-wlr/default.nix b/pkgs/applications/misc/qt-video-wlr/default.nix index bdb434085da0..ffd22be085e1 100644 --- a/pkgs/applications/misc/qt-video-wlr/default.nix +++ b/pkgs/applications/misc/qt-video-wlr/default.nix @@ -1,6 +1,6 @@ { stdenv, lib, fetchFromGitHub, pkg-config, meson, ninja, wayland, pixman, cairo, librsvg, wayland-protocols, wlroots, libxkbcommon, gst_all_1, wrapQtAppsHook, qtbase, qtmultimedia }: let - gstreamerPath = with gst_all_1; lib.makeSearchPath "lib/gstreamer-1.0" [ + gstreamerPath = with gst_all_1; lib.makeSearchPathOutput "lib" "lib/gstreamer-1.0" [ gstreamer gst-plugins-base gst-plugins-good diff --git a/pkgs/applications/networking/browsers/nyxt/default.nix b/pkgs/applications/networking/browsers/nyxt/default.nix index 59bb2adbf518..ccbc7a8dc8fb 100644 --- a/pkgs/applications/networking/browsers/nyxt/default.nix +++ b/pkgs/applications/networking/browsers/nyxt/default.nix @@ -27,7 +27,7 @@ stdenv.mkDerivation rec { xclip notify-osd enchant ] ++ gstBuildInputs; - GST_PLUGIN_SYSTEM_PATH_1_0 = lib.concatMapStringsSep ":" (p: "${p}/lib/gstreamer-1.0") gstBuildInputs; + GST_PLUGIN_SYSTEM_PATH_1_0 = lib.makeSearchPathOutput "lib" "lib/gstreamer-1.0" gstBuildInputs; dontWrapGApps = true; installPhase = '' diff --git a/pkgs/development/libraries/grilo-plugins/default.nix b/pkgs/development/libraries/grilo-plugins/default.nix index 13ec503fae0e..0825281bb918 100644 --- a/pkgs/development/libraries/grilo-plugins/default.nix +++ b/pkgs/development/libraries/grilo-plugins/default.nix @@ -45,7 +45,7 @@ stdenv.mkDerivation rec { # * chromaprint (gst-plugins-bad) (substituteAll { src = ./chromaprint-gst-plugins.patch; - load_plugins = lib.concatMapStrings (plugin: ''gst_registry_scan_path(gst_registry_get(), "${plugin}/lib/gstreamer-1.0");'') (with gst_all_1; [ + load_plugins = lib.concatMapStrings (plugin: ''gst_registry_scan_path(gst_registry_get(), "${lib.getLib plugin}/lib/gstreamer-1.0");'') (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-bad diff --git a/pkgs/development/libraries/gstreamer/core/default.nix b/pkgs/development/libraries/gstreamer/core/default.nix index 2d43a02725f9..91ef1b2c4e18 100644 --- a/pkgs/development/libraries/gstreamer/core/default.nix +++ b/pkgs/development/libraries/gstreamer/core/default.nix @@ -24,13 +24,13 @@ stdenv.mkDerivation rec { version = "1.18.4"; outputs = [ + "bin" "out" "dev" # "devdoc" # disabled until `hotdoc` is packaged in nixpkgs, see: # - https://github.com/NixOS/nixpkgs/pull/98767 # - https://github.com/NixOS/nixpkgs/issues/98769#issuecomment-702296551 ]; - outputBin = "dev"; src = fetchurl { url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; @@ -92,14 +92,14 @@ stdenv.mkDerivation rec { ''; postInstall = '' - for prog in "$dev/bin/"*; do + for prog in "$bin/bin/"*; do # We can't use --suffix here due to quoting so we craft the export command by hand wrapProgram "$prog" --run 'export GST_PLUGIN_SYSTEM_PATH_1_0=$GST_PLUGIN_SYSTEM_PATH_1_0''${GST_PLUGIN_SYSTEM_PATH_1_0:+:}$(unset _tmp; for profile in $NIX_PROFILES; do _tmp="$profile/lib/gstreamer-1.0''${_tmp:+:}$_tmp"; done; printf '%s' "$_tmp")' done ''; preFixup = '' - moveToOutput "share/bash-completion" "$dev" + moveToOutput "share/bash-completion" "$bin" ''; setupHook = ./setup-hook.sh; diff --git a/pkgs/development/libraries/libextractor/default.nix b/pkgs/development/libraries/libextractor/default.nix index cef1fbc512ae..7251e5b645be 100644 --- a/pkgs/development/libraries/libextractor/default.nix +++ b/pkgs/development/libraries/libextractor/default.nix @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { (substituteAll { src = ./gst-hardcode-plugins.patch; load_gst_plugins = lib.concatMapStrings - (plugin: ''gst_registry_scan_path(gst_registry_get(), "${plugin}/lib/gstreamer-1.0");'') + (plugin: ''gst_registry_scan_path(gst_registry_get(), "${lib.getLib plugin}/lib/gstreamer-1.0");'') (gstPlugins gst_all_1); }) ]; diff --git a/pkgs/tools/networking/gmrender-resurrect/default.nix b/pkgs/tools/networking/gmrender-resurrect/default.nix index d4fc1b22e8f1..28125ce113da 100644 --- a/pkgs/tools/networking/gmrender-resurrect/default.nix +++ b/pkgs/tools/networking/gmrender-resurrect/default.nix @@ -4,9 +4,7 @@ let version = "0.0.9"; - makePluginPath = plugins: builtins.concatStringsSep ":" (map (p: p + "/lib/gstreamer-1.0") plugins); - - pluginPath = makePluginPath [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav ]; + pluginPath = lib.makeSearchPathOutput "lib" "lib/gstreamer-1.0" [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav ]; in stdenv.mkDerivation { pname = "gmrender-resurrect"; From 29526bc2eb9463515d0568c05e28b8a3bec09c91 Mon Sep 17 00:00:00 2001 From: Izorkin Date: Fri, 12 Nov 2021 13:22:24 +0300 Subject: [PATCH 002/170] curl: IDN support requires libidn2 package --- pkgs/tools/networking/curl/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index a5abbc26a741..0d229979f4cf 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -1,6 +1,6 @@ { stdenv, lib, fetchurl, pkg-config, perl , http2Support ? true, nghttp2 -, idnSupport ? false, libidn ? null +, idnSupport ? false, libidn2 ? null , ldapSupport ? false, openldap ? null , zlibSupport ? true, zlib ? null , opensslSupport ? zlibSupport, openssl ? null @@ -27,7 +27,7 @@ # files. assert http2Support -> nghttp2 != null; -assert idnSupport -> libidn != null; +assert idnSupport -> libidn2 != null; assert ldapSupport -> openldap != null; assert zlibSupport -> zlib != null; assert opensslSupport -> openssl != null; @@ -71,7 +71,7 @@ stdenv.mkDerivation rec { # applications that use Curl. propagatedBuildInputs = with lib; optional http2Support nghttp2 ++ - optional idnSupport libidn ++ + optional idnSupport libidn2 ++ optional ldapSupport openldap ++ optional zlibSupport zlib ++ optional gssSupport libkrb5 ++ @@ -101,7 +101,7 @@ stdenv.mkDerivation rec { (lib.withFeatureAs scpSupport "libssh2" (lib.getDev libssh2)) (lib.enableFeature ldapSupport "ldap") (lib.enableFeature ldapSupport "ldaps") - (lib.withFeatureAs idnSupport "libidn" (lib.getDev libidn)) + (lib.withFeatureAs idnSupport "libidn2" (lib.getDev libidn2)) (lib.withFeature brotliSupport "brotli") ] ++ lib.optional wolfsslSupport "--with-wolfssl=${lib.getDev wolfssl}" From 7497778795711d4a752cca9143038cd59aa8ea54 Mon Sep 17 00:00:00 2001 From: Izorkin Date: Fri, 12 Nov 2021 13:27:52 +0300 Subject: [PATCH 003/170] curl: add support zstd compression --- pkgs/tools/networking/curl/default.nix | 4 ++++ pkgs/top-level/all-packages.nix | 1 + 2 files changed, 5 insertions(+) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index 0d229979f4cf..7349197ba1de 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -3,6 +3,7 @@ , idnSupport ? false, libidn2 ? null , ldapSupport ? false, openldap ? null , zlibSupport ? true, zlib ? null +, zstdSupport ? false, zstd ? null , opensslSupport ? zlibSupport, openssl ? null , gnutlsSupport ? false, gnutls ? null , wolfsslSupport ? false, wolfssl ? null @@ -30,6 +31,7 @@ assert http2Support -> nghttp2 != null; assert idnSupport -> libidn2 != null; assert ldapSupport -> openldap != null; assert zlibSupport -> zlib != null; +assert zstdSupport -> zstd != null; assert opensslSupport -> openssl != null; assert !(gnutlsSupport && opensslSupport); assert !(gnutlsSupport && wolfsslSupport); @@ -74,6 +76,7 @@ stdenv.mkDerivation rec { optional idnSupport libidn2 ++ optional ldapSupport openldap ++ optional zlibSupport zlib ++ + optional zstdSupport zstd ++ optional gssSupport libkrb5 ++ optional c-aresSupport c-ares ++ optional opensslSupport openssl ++ @@ -102,6 +105,7 @@ stdenv.mkDerivation rec { (lib.enableFeature ldapSupport "ldap") (lib.enableFeature ldapSupport "ldaps") (lib.withFeatureAs idnSupport "libidn2" (lib.getDev libidn2)) + (lib.withFeature zstdSupport "zstd") (lib.withFeature brotliSupport "brotli") ] ++ lib.optional wolfsslSupport "--with-wolfssl=${lib.getDev wolfssl}" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6d76c692b5c4..169160b53971 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4404,6 +4404,7 @@ with pkgs; curl = curlMinimal.override ({ idnSupport = true; + zstdSupport = true; } // lib.optionalAttrs (!stdenv.hostPlatform.isStatic) { gssSupport = true; brotliSupport = true; From bc721b462ba9dc8a93d63f6b4310ef8c8e43e3e9 Mon Sep 17 00:00:00 2001 From: Izorkin Date: Fri, 12 Nov 2021 13:29:56 +0300 Subject: [PATCH 004/170] curl: add support sasl authentication --- pkgs/tools/networking/curl/default.nix | 3 +++ pkgs/top-level/all-packages.nix | 1 + 2 files changed, 4 insertions(+) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index 7349197ba1de..1570617ebc3b 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -8,6 +8,7 @@ , gnutlsSupport ? false, gnutls ? null , wolfsslSupport ? false, wolfssl ? null , scpSupport ? zlibSupport && !stdenv.isSunOS && !stdenv.isCygwin, libssh2 ? null +, gsaslSupport ? false, gsasl ? null , gssSupport ? with stdenv.hostPlatform; ( !isWindows && # disable gss becuase of: undefined reference to `k5_bcmp' @@ -41,6 +42,7 @@ assert wolfsslSupport -> wolfssl != null; assert scpSupport -> libssh2 != null; assert c-aresSupport -> c-ares != null; assert brotliSupport -> brotli != null; +assert gsaslSupport -> gsasl != null; assert gssSupport -> libkrb5 != null; stdenv.mkDerivation rec { @@ -77,6 +79,7 @@ stdenv.mkDerivation rec { optional ldapSupport openldap ++ optional zlibSupport zlib ++ optional zstdSupport zstd ++ + optional gsaslSupport gsasl ++ optional gssSupport libkrb5 ++ optional c-aresSupport c-ares ++ optional opensslSupport openssl ++ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 169160b53971..999345489ff5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4400,6 +4400,7 @@ with pkgs; curlFull = curl.override { ldapSupport = true; + gsaslSupport = true; }; curl = curlMinimal.override ({ From da30a0cfb834dade38c26dd71297b9cdab774fbb Mon Sep 17 00:00:00 2001 From: Izorkin Date: Sat, 13 Nov 2021 22:47:33 +0300 Subject: [PATCH 005/170] curl: add support rtmp protocol --- pkgs/tools/networking/curl/default.nix | 6 +++++- pkgs/top-level/all-packages.nix | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index 1570617ebc3b..3322165634bf 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -21,6 +21,7 @@ ), libkrb5 ? null , c-aresSupport ? false, c-ares ? null , brotliSupport ? false, brotli ? null +, rtmpSupport ? false, rtmpdump ? null }: # Note: this package is used for bootstrapping fetchurl, and thus @@ -44,6 +45,7 @@ assert c-aresSupport -> c-ares != null; assert brotliSupport -> brotli != null; assert gsaslSupport -> gsasl != null; assert gssSupport -> libkrb5 != null; +assert rtmpSupport -> rtmpdump !=null; stdenv.mkDerivation rec { pname = "curl"; @@ -86,7 +88,8 @@ stdenv.mkDerivation rec { optional gnutlsSupport gnutls ++ optional wolfsslSupport wolfssl ++ optional scpSupport libssh2 ++ - optional brotliSupport brotli; + optional brotliSupport brotli ++ + optional rtmpSupport rtmpdump; # for the second line see https://curl.haxx.se/mail/tracker-2014-03/0087.html preConfigure = '' @@ -110,6 +113,7 @@ stdenv.mkDerivation rec { (lib.withFeatureAs idnSupport "libidn2" (lib.getDev libidn2)) (lib.withFeature zstdSupport "zstd") (lib.withFeature brotliSupport "brotli") + (lib.withFeature rtmpSupport "librtmp") ] ++ lib.optional wolfsslSupport "--with-wolfssl=${lib.getDev wolfssl}" ++ lib.optional c-aresSupport "--enable-ares=${c-ares}" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 999345489ff5..9d94b57e4b3c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4401,6 +4401,7 @@ with pkgs; curlFull = curl.override { ldapSupport = true; gsaslSupport = true; + rtmpSupport = true; }; curl = curlMinimal.override ({ From 1e4864e29574992c4e51af7eafe8dc65f8181c3d Mon Sep 17 00:00:00 2001 From: Izorkin Date: Sat, 13 Nov 2021 22:49:32 +0300 Subject: [PATCH 006/170] curl: add psl support --- pkgs/tools/networking/curl/default.nix | 5 ++++- pkgs/top-level/all-packages.nix | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index 3322165634bf..c71e9823b21f 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -22,6 +22,7 @@ , c-aresSupport ? false, c-ares ? null , brotliSupport ? false, brotli ? null , rtmpSupport ? false, rtmpdump ? null +, pslSupport ? false, libpsl ? null }: # Note: this package is used for bootstrapping fetchurl, and thus @@ -46,6 +47,7 @@ assert brotliSupport -> brotli != null; assert gsaslSupport -> gsasl != null; assert gssSupport -> libkrb5 != null; assert rtmpSupport -> rtmpdump !=null; +assert pslSupport -> libpsl !=null; stdenv.mkDerivation rec { pname = "curl"; @@ -89,7 +91,8 @@ stdenv.mkDerivation rec { optional wolfsslSupport wolfssl ++ optional scpSupport libssh2 ++ optional brotliSupport brotli ++ - optional rtmpSupport rtmpdump; + optional rtmpSupport rtmpdump ++ + optional pslSupport libpsl; # for the second line see https://curl.haxx.se/mail/tracker-2014-03/0087.html preConfigure = '' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9d94b57e4b3c..a85f522e7973 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4402,6 +4402,7 @@ with pkgs; ldapSupport = true; gsaslSupport = true; rtmpSupport = true; + pslSupport = true; }; curl = curlMinimal.override ({ From 851b12b691c536ab203417fd7c876a694c290c70 Mon Sep 17 00:00:00 2001 From: Izorkin Date: Sat, 13 Nov 2021 23:51:30 +0300 Subject: [PATCH 007/170] curl: cleanup build configuration --- pkgs/tools/networking/curl/default.nix | 89 +++++++++++++------------- 1 file changed, 45 insertions(+), 44 deletions(-) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index c71e9823b21f..0961eaf3a53e 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -1,13 +1,7 @@ -{ stdenv, lib, fetchurl, pkg-config, perl -, http2Support ? true, nghttp2 -, idnSupport ? false, libidn2 ? null -, ldapSupport ? false, openldap ? null -, zlibSupport ? true, zlib ? null -, zstdSupport ? false, zstd ? null -, opensslSupport ? zlibSupport, openssl ? null +{ lib, stdenv, fetchurl, pkg-config, perl +, brotliSupport ? false, brotli ? null +, c-aresSupport ? false, c-ares ? null , gnutlsSupport ? false, gnutls ? null -, wolfsslSupport ? false, wolfssl ? null -, scpSupport ? zlibSupport && !stdenv.isSunOS && !stdenv.isCygwin, libssh2 ? null , gsaslSupport ? false, gsasl ? null , gssSupport ? with stdenv.hostPlatform; ( !isWindows && @@ -19,10 +13,16 @@ # not worth the effort. !(isDarwin && (stdenv.buildPlatform != stdenv.hostPlatform)) ), libkrb5 ? null -, c-aresSupport ? false, c-ares ? null -, brotliSupport ? false, brotli ? null -, rtmpSupport ? false, rtmpdump ? null +, http2Support ? true, nghttp2 ? null +, idnSupport ? false, libidn2 ? null +, ldapSupport ? false, openldap ? null +, opensslSupport ? zlibSupport, openssl ? null , pslSupport ? false, libpsl ? null +, rtmpSupport ? false, rtmpdump ? null +, scpSupport ? zlibSupport && !stdenv.isSunOS && !stdenv.isCygwin, libssh2 ? null +, wolfsslSupport ? false, wolfssl ? null +, zlibSupport ? true, zlib ? null +, zstdSupport ? false, zstd ? null }: # Note: this package is used for bootstrapping fetchurl, and thus @@ -30,24 +30,24 @@ # cgit) that are needed here should be included directly in Nixpkgs as # files. -assert http2Support -> nghttp2 != null; -assert idnSupport -> libidn2 != null; -assert ldapSupport -> openldap != null; -assert zlibSupport -> zlib != null; -assert zstdSupport -> zstd != null; -assert opensslSupport -> openssl != null; assert !(gnutlsSupport && opensslSupport); assert !(gnutlsSupport && wolfsslSupport); assert !(opensslSupport && wolfsslSupport); -assert gnutlsSupport -> gnutls != null; -assert wolfsslSupport -> wolfssl != null; -assert scpSupport -> libssh2 != null; -assert c-aresSupport -> c-ares != null; assert brotliSupport -> brotli != null; +assert c-aresSupport -> c-ares != null; +assert gnutlsSupport -> gnutls != null; assert gsaslSupport -> gsasl != null; assert gssSupport -> libkrb5 != null; -assert rtmpSupport -> rtmpdump !=null; +assert http2Support -> nghttp2 != null; +assert idnSupport -> libidn2 != null; +assert ldapSupport -> openldap != null; +assert opensslSupport -> openssl != null; assert pslSupport -> libpsl !=null; +assert rtmpSupport -> rtmpdump !=null; +assert scpSupport -> libssh2 != null; +assert wolfsslSupport -> wolfssl != null; +assert zlibSupport -> zlib != null; +assert zstdSupport -> zstd != null; stdenv.mkDerivation rec { pname = "curl"; @@ -78,21 +78,21 @@ stdenv.mkDerivation rec { # "-lz -lssl", which aren't necessary direct build inputs of # applications that use Curl. propagatedBuildInputs = with lib; + optional brotliSupport brotli ++ + optional c-aresSupport c-ares ++ + optional gnutlsSupport gnutls ++ + optional gsaslSupport gsasl ++ + optional gssSupport libkrb5 ++ optional http2Support nghttp2 ++ optional idnSupport libidn2 ++ optional ldapSupport openldap ++ - optional zlibSupport zlib ++ - optional zstdSupport zstd ++ - optional gsaslSupport gsasl ++ - optional gssSupport libkrb5 ++ - optional c-aresSupport c-ares ++ optional opensslSupport openssl ++ - optional gnutlsSupport gnutls ++ - optional wolfsslSupport wolfssl ++ - optional scpSupport libssh2 ++ - optional brotliSupport brotli ++ + optional pslSupport libpsl ++ optional rtmpSupport rtmpdump ++ - optional pslSupport libpsl; + optional scpSupport libssh2 ++ + optional wolfsslSupport wolfssl ++ + optional zlibSupport zlib ++ + optional zstdSupport zstd; # for the second line see https://curl.haxx.se/mail/tracker-2014-03/0087.html preConfigure = '' @@ -101,25 +101,26 @@ stdenv.mkDerivation rec { ''; configureFlags = [ + # Build without manual + "--disable-manual" # Disable default CA bundle, use NIX_SSL_CERT_FILE or fallback # to nss-cacert from the default profile. "--without-ca-bundle" "--without-ca-path" - # The build fails when using wolfssl with --with-ca-fallback - (lib.withFeature (!wolfsslSupport) "ca-fallback") - "--disable-manual" - (lib.withFeatureAs opensslSupport "openssl" (lib.getDev openssl)) - (lib.withFeatureAs gnutlsSupport "gnutls" (lib.getDev gnutls)) - (lib.withFeatureAs scpSupport "libssh2" (lib.getDev libssh2)) + (lib.enableFeature c-aresSupport "ares") (lib.enableFeature ldapSupport "ldap") (lib.enableFeature ldapSupport "ldaps") - (lib.withFeatureAs idnSupport "libidn2" (lib.getDev libidn2)) - (lib.withFeature zstdSupport "zstd") - (lib.withFeature brotliSupport "brotli") + # The build fails when using wolfssl with --with-ca-fallback + (lib.withFeature (!wolfsslSupport) "ca-fallback") (lib.withFeature rtmpSupport "librtmp") + (lib.withFeature zstdSupport "zstd") + (lib.withFeatureAs brotliSupport "brotli" (lib.getDev brotli)) + (lib.withFeatureAs gnutlsSupport "gnutls" (lib.getDev gnutls)) + (lib.withFeatureAs idnSupport "libidn2" (lib.getDev libidn2)) + (lib.withFeatureAs opensslSupport "openssl" (lib.getDev openssl)) + (lib.withFeatureAs scpSupport "libssh2" (lib.getDev libssh2)) + (lib.withFeatureAs wolfsslSupport "wolfssl" (lib.getDev wolfssl)) ] - ++ lib.optional wolfsslSupport "--with-wolfssl=${lib.getDev wolfssl}" - ++ lib.optional c-aresSupport "--enable-ares=${c-ares}" ++ lib.optional gssSupport "--with-gssapi=${lib.getDev libkrb5}" # For the 'urandom', maybe it should be a cross-system option ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) From 507301b3573d8607ef69c80251019938b955e251 Mon Sep 17 00:00:00 2001 From: Izorkin Date: Sun, 14 Nov 2021 18:19:55 +0300 Subject: [PATCH 008/170] curl: add support http3 protocol --- pkgs/tools/networking/curl/default.nix | 6 ++++++ pkgs/top-level/all-packages.nix | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index 0961eaf3a53e..9a5d2457573a 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -14,6 +14,7 @@ !(isDarwin && (stdenv.buildPlatform != stdenv.hostPlatform)) ), libkrb5 ? null , http2Support ? true, nghttp2 ? null +, http3Support ? false, nghttp3, ngtcp2 ? null , idnSupport ? false, libidn2 ? null , ldapSupport ? false, openldap ? null , opensslSupport ? zlibSupport, openssl ? null @@ -39,6 +40,8 @@ assert gnutlsSupport -> gnutls != null; assert gsaslSupport -> gsasl != null; assert gssSupport -> libkrb5 != null; assert http2Support -> nghttp2 != null; +assert http3Support -> nghttp3 != null; +assert http3Support -> ngtcp2 != null; assert idnSupport -> libidn2 != null; assert ldapSupport -> openldap != null; assert opensslSupport -> openssl != null; @@ -84,6 +87,7 @@ stdenv.mkDerivation rec { optional gsaslSupport gsasl ++ optional gssSupport libkrb5 ++ optional http2Support nghttp2 ++ + optionals http3Support [ nghttp3 ngtcp2 ] ++ optional idnSupport libidn2 ++ optional ldapSupport openldap ++ optional opensslSupport openssl ++ @@ -112,6 +116,8 @@ stdenv.mkDerivation rec { (lib.enableFeature ldapSupport "ldaps") # The build fails when using wolfssl with --with-ca-fallback (lib.withFeature (!wolfsslSupport) "ca-fallback") + (lib.withFeature http3Support "nghttp3") + (lib.withFeature http3Support "ngtcp2") (lib.withFeature rtmpSupport "librtmp") (lib.withFeature zstdSupport "zstd") (lib.withFeatureAs brotliSupport "brotli" (lib.getDev brotli)) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a85f522e7973..5390ff56a920 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4405,6 +4405,11 @@ with pkgs; pslSupport = true; }; + curlHTTP3 = curl.override { + openssl = quictls; + http3Support = true; + }; + curl = curlMinimal.override ({ idnSupport = true; zstdSupport = true; From 35223810a177e27921341c0f5a729bb907196419 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Thu, 9 Dec 2021 21:55:09 +0000 Subject: [PATCH 009/170] llvm_{5..12}: fix tests against upcoming gcc-12 In https://gcc.gnu.org/PR103598 we found out that gcc-12 changed __PRETTY_FUNCTION__ slightly and broke llvm-12 (and older) tests that rely on exact type match. llvm-13 already removed the qualified names from the expected output. This change changes expected output to avoid llvm:: namespace prefix. This is enough to get tests pass on x86_64 again. Tested against this week's gcc-12 and against gcc-10. --- .../compilers/llvm/10/llvm/default.nix | 26 ++++++++++++++++++ .../compilers/llvm/11/llvm/default.nix | 26 ++++++++++++++++++ .../compilers/llvm/12/llvm/default.nix | 27 +++++++++++++++++++ .../compilers/llvm/5/llvm/default.nix | 21 +++++++++++++++ .../compilers/llvm/6/llvm/default.nix | 23 ++++++++++++++++ .../compilers/llvm/7/llvm/default.nix | 25 +++++++++++++++++ .../compilers/llvm/8/llvm/default.nix | 26 ++++++++++++++++++ .../compilers/llvm/9/llvm/default.nix | 26 ++++++++++++++++++ 8 files changed, 200 insertions(+) diff --git a/pkgs/development/compilers/llvm/10/llvm/default.nix b/pkgs/development/compilers/llvm/10/llvm/default.nix index 30a2d016d67c..9633c3e44db1 100644 --- a/pkgs/development/compilers/llvm/10/llvm/default.nix +++ b/pkgs/development/compilers/llvm/10/llvm/default.nix @@ -122,6 +122,32 @@ in stdenv.mkDerivation (rec { rm test/ExecutionEngine/frem.ll '' + '' patchShebangs test/BugPoint/compile-custom.ll.py + '' + '' + # Tweak tests to ignore namespace part of type to support + # gcc-12: https://gcc.gnu.org/PR103598. + # The change below mangles strings like: + # CHECK-NEXT: Starting llvm::Function pass manager run. + # to: + # CHECK-NEXT: Starting {{.*}}Function pass manager run. + for f in \ + test/Other/new-pass-manager.ll \ + test/Other/new-pm-defaults.ll \ + test/Other/new-pm-lto-defaults.ll \ + test/Other/new-pm-thinlto-defaults.ll \ + test/Other/pass-pipeline-parsing.ll \ + test/Transforms/Inline/cgscc-incremental-invalidate.ll \ + test/Transforms/Inline/clear-analyses.ll \ + test/Transforms/LoopUnroll/unroll-loop-invalidation.ll \ + test/Transforms/SCCP/ipsccp-preserve-analysis.ll \ + test/Transforms/SCCP/preserve-analysis.ll \ + test/Transforms/SROA/dead-inst.ll \ + test/tools/gold/X86/new-pm.ll \ + ; do + echo "PATCH: $f" + substituteInPlace $f \ + --replace 'Starting llvm::' 'Starting {{.*}}' \ + --replace 'Finished llvm::' 'Finished {{.*}}' + done ''; # hacky fix: created binaries need to be run before installation diff --git a/pkgs/development/compilers/llvm/11/llvm/default.nix b/pkgs/development/compilers/llvm/11/llvm/default.nix index 81ac4cb1ed08..361ceb15d5af 100644 --- a/pkgs/development/compilers/llvm/11/llvm/default.nix +++ b/pkgs/development/compilers/llvm/11/llvm/default.nix @@ -120,6 +120,32 @@ in stdenv.mkDerivation (rec { rm test/ExecutionEngine/frem.ll '' + '' patchShebangs test/BugPoint/compile-custom.ll.py + '' + '' + # Tweak tests to ignore namespace part of type to support + # gcc-12: https://gcc.gnu.org/PR103598. + # The change below mangles strings like: + # CHECK-NEXT: Starting llvm::Function pass manager run. + # to: + # CHECK-NEXT: Starting {{.*}}Function pass manager run. + for f in \ + test/Other/new-pass-manager.ll \ + test/Other/new-pm-defaults.ll \ + test/Other/new-pm-lto-defaults.ll \ + test/Other/new-pm-thinlto-defaults.ll \ + test/Other/pass-pipeline-parsing.ll \ + test/Transforms/Inline/cgscc-incremental-invalidate.ll \ + test/Transforms/Inline/clear-analyses.ll \ + test/Transforms/LoopUnroll/unroll-loop-invalidation.ll \ + test/Transforms/SCCP/ipsccp-preserve-analysis.ll \ + test/Transforms/SCCP/preserve-analysis.ll \ + test/Transforms/SROA/dead-inst.ll \ + test/tools/gold/X86/new-pm.ll \ + ; do + echo "PATCH: $f" + substituteInPlace $f \ + --replace 'Starting llvm::' 'Starting {{.*}}' \ + --replace 'Finished llvm::' 'Finished {{.*}}' + done ''; # hacky fix: created binaries need to be run before installation diff --git a/pkgs/development/compilers/llvm/12/llvm/default.nix b/pkgs/development/compilers/llvm/12/llvm/default.nix index 30a1a7a16df8..185a8f6bf1b9 100644 --- a/pkgs/development/compilers/llvm/12/llvm/default.nix +++ b/pkgs/development/compilers/llvm/12/llvm/default.nix @@ -105,6 +105,33 @@ in stdenv.mkDerivation (rec { rm test/ExecutionEngine/frem.ll '' + '' patchShebangs test/BugPoint/compile-custom.ll.py + '' + '' + # Tweak tests to ignore namespace part of type to support + # gcc-12: https://gcc.gnu.org/PR103598. + # The change below mangles strings like: + # CHECK-NEXT: Starting llvm::Function pass manager run. + # to: + # CHECK-NEXT: Starting {{.*}}Function pass manager run. + for f in \ + test/Other/new-pass-manager.ll \ + test/Other/new-pm-O0-defaults.ll \ + test/Other/new-pm-defaults.ll \ + test/Other/new-pm-lto-defaults.ll \ + test/Other/new-pm-thinlto-defaults.ll \ + test/Other/pass-pipeline-parsing.ll \ + test/Transforms/Inline/cgscc-incremental-invalidate.ll \ + test/Transforms/Inline/clear-analyses.ll \ + test/Transforms/LoopUnroll/unroll-loop-invalidation.ll \ + test/Transforms/SCCP/ipsccp-preserve-analysis.ll \ + test/Transforms/SCCP/preserve-analysis.ll \ + test/Transforms/SROA/dead-inst.ll \ + test/tools/gold/X86/new-pm.ll \ + ; do + echo "PATCH: $f" + substituteInPlace $f \ + --replace 'Starting llvm::' 'Starting {{.*}}' \ + --replace 'Finished llvm::' 'Finished {{.*}}' + done ''; # hacky fix: created binaries need to be run before installation diff --git a/pkgs/development/compilers/llvm/5/llvm/default.nix b/pkgs/development/compilers/llvm/5/llvm/default.nix index fa99e275a623..2fbe251966dd 100644 --- a/pkgs/development/compilers/llvm/5/llvm/default.nix +++ b/pkgs/development/compilers/llvm/5/llvm/default.nix @@ -100,6 +100,27 @@ stdenv.mkDerivation ({ substituteInPlace unittests/Support/CMakeLists.txt \ --replace "add_subdirectory(DynamicLibrary)" "" rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp + '' + '' + # Tweak tests to ignore namespace part of type to support + # gcc-12: https://gcc.gnu.org/PR103598. + # The change below mangles strings like: + # CHECK-NEXT: Starting llvm::Function pass manager run. + # to: + # CHECK-NEXT: Starting {{.*}}Function pass manager run. + for f in \ + test/Other/new-pass-manager.ll \ + test/Other/new-pm-defaults.ll \ + test/Other/new-pm-lto-defaults.ll \ + test/Other/new-pm-thinlto-defaults.ll \ + test/Other/pass-pipeline-parsing.ll \ + test/Transforms/Inline/cgscc-incremental-invalidate.ll \ + test/Transforms/Inline/clear-analyses.ll \ + ; do + echo "PATCH: $f" + substituteInPlace $f \ + --replace 'Starting llvm::' 'Starting {{.*}}' \ + --replace 'Finished llvm::' 'Finished {{.*}}' + done ''; # hacky fix: created binaries need to be run before installation diff --git a/pkgs/development/compilers/llvm/6/llvm/default.nix b/pkgs/development/compilers/llvm/6/llvm/default.nix index 5925fab104fa..72932ab6b555 100644 --- a/pkgs/development/compilers/llvm/6/llvm/default.nix +++ b/pkgs/development/compilers/llvm/6/llvm/default.nix @@ -93,6 +93,29 @@ stdenv.mkDerivation ({ substituteInPlace unittests/Support/CMakeLists.txt \ --replace "add_subdirectory(DynamicLibrary)" "" rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp + '' + '' + # Tweak tests to ignore namespace part of type to support + # gcc-12: https://gcc.gnu.org/PR103598. + # The change below mangles strings like: + # CHECK-NEXT: Starting llvm::Function pass manager run. + # to: + # CHECK-NEXT: Starting {{.*}}Function pass manager run. + for f in \ + test/Other/new-pass-manager.ll \ + test/Other/new-pm-defaults.ll \ + test/Other/new-pm-lto-defaults.ll \ + test/Other/new-pm-thinlto-defaults.ll \ + test/Other/pass-pipeline-parsing.ll \ + test/Transforms/Inline/cgscc-incremental-invalidate.ll \ + test/Transforms/Inline/clear-analyses.ll \ + test/Transforms/LoopUnroll/unroll-loop-invalidation.ll \ + test/Transforms/SROA/dead-inst.ll \ + ; do + echo "PATCH: $f" + substituteInPlace $f \ + --replace 'Starting llvm::' 'Starting {{.*}}' \ + --replace 'Finished llvm::' 'Finished {{.*}}' + done ''; # hacky fix: created binaries need to be run before installation diff --git a/pkgs/development/compilers/llvm/7/llvm/default.nix b/pkgs/development/compilers/llvm/7/llvm/default.nix index e4410bedf917..8d31303f143e 100644 --- a/pkgs/development/compilers/llvm/7/llvm/default.nix +++ b/pkgs/development/compilers/llvm/7/llvm/default.nix @@ -110,6 +110,31 @@ in stdenv.mkDerivation ({ rm test/ExecutionEngine/frem.ll '' + '' patchShebangs test/BugPoint/compile-custom.ll.py + '' + '' + # Tweak tests to ignore namespace part of type to support + # gcc-12: https://gcc.gnu.org/PR103598. + # The change below mangles strings like: + # CHECK-NEXT: Starting llvm::Function pass manager run. + # to: + # CHECK-NEXT: Starting {{.*}}Function pass manager run. + for f in \ + test/Other/new-pass-manager.ll \ + test/Other/new-pm-defaults.ll \ + test/Other/new-pm-lto-defaults.ll \ + test/Other/new-pm-thinlto-defaults.ll \ + test/Other/pass-pipeline-parsing.ll \ + test/Transforms/Inline/cgscc-incremental-invalidate.ll \ + test/Transforms/Inline/clear-analyses.ll \ + test/Transforms/LoopUnroll/unroll-loop-invalidation.ll \ + test/Transforms/SCCP/preserve-analysis.ll \ + test/Transforms/SROA/dead-inst.ll \ + test/tools/gold/X86/new-pm.ll \ + ; do + echo "PATCH: $f" + substituteInPlace $f \ + --replace 'Starting llvm::' 'Starting {{.*}}' \ + --replace 'Finished llvm::' 'Finished {{.*}}' + done ''; # hacky fix: created binaries need to be run before installation diff --git a/pkgs/development/compilers/llvm/8/llvm/default.nix b/pkgs/development/compilers/llvm/8/llvm/default.nix index 8bb2293f8189..b5ec1f2d578e 100644 --- a/pkgs/development/compilers/llvm/8/llvm/default.nix +++ b/pkgs/development/compilers/llvm/8/llvm/default.nix @@ -104,6 +104,32 @@ in stdenv.mkDerivation ({ rm test/CodeGen/AArch64/wineh4.mir '' + '' patchShebangs test/BugPoint/compile-custom.ll.py + '' + '' + # Tweak tests to ignore namespace part of type to support + # gcc-12: https://gcc.gnu.org/PR103598. + # The change below mangles strings like: + # CHECK-NEXT: Starting llvm::Function pass manager run. + # to: + # CHECK-NEXT: Starting {{.*}}Function pass manager run. + for f in \ + test/Other/new-pass-manager.ll \ + test/Other/new-pm-defaults.ll \ + test/Other/new-pm-lto-defaults.ll \ + test/Other/new-pm-thinlto-defaults.ll \ + test/Other/pass-pipeline-parsing.ll \ + test/Transforms/Inline/cgscc-incremental-invalidate.ll \ + test/Transforms/Inline/clear-analyses.ll \ + test/Transforms/LoopUnroll/unroll-loop-invalidation.ll \ + test/Transforms/SCCP/ipsccp-preserve-analysis.ll \ + test/Transforms/SCCP/preserve-analysis.ll \ + test/Transforms/SROA/dead-inst.ll \ + test/tools/gold/X86/new-pm.ll \ + ; do + echo "PATCH: $f" + substituteInPlace $f \ + --replace 'Starting llvm::' 'Starting {{.*}}' \ + --replace 'Finished llvm::' 'Finished {{.*}}' + done ''; # hacky fix: created binaries need to be run before installation diff --git a/pkgs/development/compilers/llvm/9/llvm/default.nix b/pkgs/development/compilers/llvm/9/llvm/default.nix index f8c474775e48..ede271ffc30a 100644 --- a/pkgs/development/compilers/llvm/9/llvm/default.nix +++ b/pkgs/development/compilers/llvm/9/llvm/default.nix @@ -119,6 +119,32 @@ in stdenv.mkDerivation (rec { # Fix x86 gold test on non-x86 platforms # (similar fix made to others in this directory previously, FWIW) patch -p1 -i ${./fix-test-on-non-x86-like-others.patch} + '' + '' + # Tweak tests to ignore namespace part of type to support + # gcc-12: https://gcc.gnu.org/PR103598. + # The change below mangles strings like: + # CHECK-NEXT: Starting llvm::Function pass manager run. + # to: + # CHECK-NEXT: Starting {{.*}}Function pass manager run. + for f in \ + test/Other/new-pass-manager.ll \ + test/Other/new-pm-defaults.ll \ + test/Other/new-pm-lto-defaults.ll \ + test/Other/new-pm-thinlto-defaults.ll \ + test/Other/pass-pipeline-parsing.ll \ + test/Transforms/Inline/cgscc-incremental-invalidate.ll \ + test/Transforms/Inline/clear-analyses.ll \ + test/Transforms/LoopUnroll/unroll-loop-invalidation.ll \ + test/Transforms/SCCP/ipsccp-preserve-analysis.ll \ + test/Transforms/SCCP/preserve-analysis.ll \ + test/Transforms/SROA/dead-inst.ll \ + test/tools/gold/X86/new-pm.ll \ + ; do + echo "PATCH: $f" + substituteInPlace $f \ + --replace 'Starting llvm::' 'Starting {{.*}}' \ + --replace 'Finished llvm::' 'Finished {{.*}}' + done ''; # hacky fix: created binaries need to be run before installation From 4ecebc740948d261a7d59b4427f5842f59275668 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 12 Dec 2021 03:48:31 +0000 Subject: [PATCH 010/170] aws-sdk-cpp: 1.9.121 -> 1.9.150 --- pkgs/development/libraries/aws-sdk-cpp/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/aws-sdk-cpp/default.nix b/pkgs/development/libraries/aws-sdk-cpp/default.nix index 25570b7d03a0..a8759833afb0 100644 --- a/pkgs/development/libraries/aws-sdk-cpp/default.nix +++ b/pkgs/development/libraries/aws-sdk-cpp/default.nix @@ -18,13 +18,13 @@ in stdenv.mkDerivation rec { pname = "aws-sdk-cpp"; - version = "1.9.121"; + version = "1.9.150"; src = fetchFromGitHub { owner = "awslabs"; repo = "aws-sdk-cpp"; rev = version; - sha256 = "sha256-VQpWauk0tdJ1QU0HmtdTwQdKbiAuTTXXsUo2cqpqmdU="; + sha256 = "sha256-fgLdXWQKHaCwulrw9KV3vpQ71DjnQAL4heIRW7Rk7UY="; }; postPatch = '' From f24cab5396085e138ff82d53888af8a9a7d83055 Mon Sep 17 00:00:00 2001 From: Robert Scott Date: Sun, 12 Dec 2021 16:16:08 +0000 Subject: [PATCH 011/170] libjxl: fix/enable for aarch64 --- pkgs/development/libraries/libjxl/default.nix | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/libjxl/default.nix b/pkgs/development/libraries/libjxl/default.nix index 828090875e86..ba135466d078 100644 --- a/pkgs/development/libraries/libjxl/default.nix +++ b/pkgs/development/libraries/libjxl/default.nix @@ -39,9 +39,14 @@ stdenv.mkDerivation rec { }) ]; - # hydra's darwin machines run into https://github.com/libjxl/libjxl/issues/408 - # unless we disable highway's tests - postPatch = lib.optional stdenv.isDarwin '' + postPatch = '' + # "robust statistics" have been removed in upstream mainline as they are + # conidered to cause "interoperability problems". sure enough the tests + # fail with precision issues on aarch64. + sed -i '/robust_statistics_test.cc/d' lib/{jxl_tests.cmake,lib.gni} + '' + lib.optionalString stdenv.isDarwin '' + # hydra's darwin machines run into https://github.com/libjxl/libjxl/issues/408 + # unless we disable highway's tests substituteInPlace third_party/highway/CMakeLists.txt \ --replace 'if(BUILD_TESTING)' 'if(false)' ''; @@ -118,6 +123,5 @@ stdenv.mkDerivation rec { license = licenses.bsd3; maintainers = with maintainers; [ nh2 ]; platforms = platforms.all; - broken = stdenv.hostPlatform.isAarch64; # `internal compiler error`, see https://github.com/NixOS/nixpkgs/pull/103160#issuecomment-866388610 }; } From d5abc055d2062efacba35a0232977463918ba22f Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 31 Oct 2021 22:42:52 +0000 Subject: [PATCH 012/170] ncurses: 6.2 -> 6.3 The biggest nixpkgs-specific change is addition of printf()-style attribute annotations for many ncurses APIs. -Werror=format-security now flags parameter inconsistencies and fails the build. The fixes are usually one-liners like adding "%s" format string for non-literals or just using `hardeningDisable [ "format" ];` for software where backporting or fixing is not practical. Drop -DNCURSES_INTERNALS=1 workaround required only for ncurses-6.2 and build-incompatible with ncurses-6.3. --- pkgs/applications/audio/squishyball/default.nix | 2 -- pkgs/development/libraries/ncurses/default.nix | 4 ++-- pkgs/games/rogue/default.nix | 3 --- pkgs/tools/misc/wyrd/default.nix | 2 -- 4 files changed, 2 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/audio/squishyball/default.nix b/pkgs/applications/audio/squishyball/default.nix index b44efc1534f8..4a7f819e2904 100644 --- a/pkgs/applications/audio/squishyball/default.nix +++ b/pkgs/applications/audio/squishyball/default.nix @@ -16,8 +16,6 @@ stdenv.mkDerivation rec { buildInputs = [ flac libao libvorbis ncurses opusfile ]; - NIX_CFLAGS_COMPILE = "-DNCURSES_INTERNALS"; - patches = [ ./gnu-screen.patch ]; postInstall = '' diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index b7ca4df88857..6aa93e87da94 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { # Note the revision needs to be adjusted. - version = "6.2"; + version = "6.3"; name = "ncurses-${version}" + lib.optionalString (abiVersion == "5") "-abi5-compat"; # We cannot use fetchFromGitHub (which calls fetchzip) @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { rev = "v${version}"; in fetchurl { url = "https://github.com/mirror/ncurses/archive/${rev}.tar.gz"; - sha256 = "15r2456g0mlq2q7gh2z52vl6zv6y0z8sdchrs80kg4idqd8sm8fd"; + sha256 = "1mawdjhzl2na2j0dylwc37f5w95rhgyvlwnfhww5rz2r7fgkvayv"; }; outputs = [ "out" "dev" "man" ]; diff --git a/pkgs/games/rogue/default.nix b/pkgs/games/rogue/default.nix index 127d65ff362f..4865b85bbe38 100644 --- a/pkgs/games/rogue/default.nix +++ b/pkgs/games/rogue/default.nix @@ -15,9 +15,6 @@ stdenv.mkDerivation rec { buildInputs = [ ncurses ]; - # Fix build for recent ncurses versions - NIX_CFLAGS_COMPILE = "-DNCURSES_INTERNALS=1"; - meta = with lib; { homepage = "http://rogue.rogueforge.net/rogue-5-4/"; description = "The final version of the original Rogue game developed for the UNIX operating system"; diff --git a/pkgs/tools/misc/wyrd/default.nix b/pkgs/tools/misc/wyrd/default.nix index 491c362eed40..d1244cc73c47 100644 --- a/pkgs/tools/misc/wyrd/default.nix +++ b/pkgs/tools/misc/wyrd/default.nix @@ -9,8 +9,6 @@ stdenv.mkDerivation rec { sha256 = "0zlrg602q781q8dij62lwdprpfliyy9j1rqfqcz8p2wgndpivddj"; }; - NIX_CFLAGS_COMPILE = "-DNCURSES_INTERNALS=1"; - preConfigure = '' substituteInPlace curses/curses.ml --replace 'pp gcc' "pp $CC" ''; From cb955555df9bfff95f8a417927f6aca265da37ee Mon Sep 17 00:00:00 2001 From: Zhaofeng Li Date: Thu, 16 Dec 2021 20:44:56 -0800 Subject: [PATCH 013/170] libffi: Run test suite --- pkgs/development/interpreters/python/default.nix | 1 + pkgs/development/libraries/libffi/default.nix | 6 ++++++ pkgs/top-level/all-packages.nix | 3 +++ 3 files changed, 10 insertions(+) diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix index 1931867d14f9..4fd53eac6bcf 100644 --- a/pkgs/development/interpreters/python/default.nix +++ b/pkgs/development/interpreters/python/default.nix @@ -219,6 +219,7 @@ in { sqlite = null; configd = null; tzdata = null; + libffi = pkgs.libffiBoot; # without test suite stripConfig = true; stripIdlelib = true; stripTests = true; diff --git a/pkgs/development/libraries/libffi/default.nix b/pkgs/development/libraries/libffi/default.nix index 4332f43c5afb..6a22d585fbc8 100644 --- a/pkgs/development/libraries/libffi/default.nix +++ b/pkgs/development/libraries/libffi/default.nix @@ -1,6 +1,8 @@ { lib, stdenv, fetchurl, fetchpatch , autoreconfHook +, doCheck ? true # test suite depends on dejagnu which cannot be used during bootstrapping +, dejagnu }: # Note: this package is used for bootstrapping fetchurl, and thus @@ -39,6 +41,10 @@ stdenv.mkDerivation rec { dontStrip = stdenv.hostPlatform != stdenv.buildPlatform; # Don't run the native `strip' when cross-compiling. + inherit doCheck; + + checkInputs = [ dejagnu ]; + meta = with lib; { description = "A foreign function call interface library"; longDescription = '' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 012fda8f9eb4..1ef63911d1e1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17805,6 +17805,9 @@ with pkgs; libffcall = callPackage ../development/libraries/libffcall { }; libffi = callPackage ../development/libraries/libffi { }; + libffiBoot = libffi.override { + doCheck = false; + }; libfreeaptx = callPackage ../development/libraries/libfreeaptx { }; From 8e7acfc58727efbe9321fcb559cbf3c50a965374 Mon Sep 17 00:00:00 2001 From: David Guibert Date: Tue, 14 Dec 2021 14:47:24 +0100 Subject: [PATCH 014/170] aarch64: update bootstrap-files fixes #112086 Fetch bootstrap files built by Hydra and re-add them as FODs to skip currently dangling URLs. They are already available on https://cache.nixos.org https://hydra.nixos.org/job/nixpkgs/trunk/stdenvBootstrapTools.aarch64-linux.dist -> https://hydra.nixos.org/build/160330465#tabs-buildinputs These commands have been run to get the output hashes as FODs: nix store add-file --name bootstrap-tools.tar.xz $(nix-store -r /nix/store/9y4qnwflnxkjrqnfbzhsjv6zq2r0m48z-stdenv-bootstrap-tools --option binary-caches https://cache.nixos.org)/on-server/bootstrap-tools.tar.xz nix store add-path --name busybox $(nix-store -r /nix/store/9y4qnwflnxkjrqnfbzhsjv6zq2r0m48z-stdenv-bootstrap-tools --option binary-caches https://cache.nixos.org)/on-server/busybox --- pkgs/stdenv/linux/bootstrap-files/aarch64.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/stdenv/linux/bootstrap-files/aarch64.nix b/pkgs/stdenv/linux/bootstrap-files/aarch64.nix index 592f8ee6bef5..aa81cbd84af3 100644 --- a/pkgs/stdenv/linux/bootstrap-files/aarch64.nix +++ b/pkgs/stdenv/linux/bootstrap-files/aarch64.nix @@ -1,11 +1,11 @@ { busybox = import { - url = "http://tarballs.nixos.org/stdenv-linux/aarch64/bb3ef8a95c9659596b8a34d27881cd30ffea2f9f/busybox"; - sha256 = "12qcml1l67skpjhfjwy7gr10nc86gqcwjmz9ggp7knss8gq8pv7f"; + url = "http://tarballs.nixos.org/stdenv-linux/aarch64/c7c997a0662bf88264db52cbc41e67884eb7a1ff/busybox"; + sha256 = "sha256-4EN2vLvXUkelZZR2eKaAQA5kCEuHNvRZN6dcohxVY+c="; executable = true; }; bootstrapTools = import { - url = "http://tarballs.nixos.org/stdenv-linux/aarch64/c5aabb0d603e2c1ea05f5a93b3be82437f5ebf31/bootstrap-tools.tar.xz"; - sha256 = "d3f1bf2a1495b97f45359d5623bdb1f8eb75db43d3bf2059fc127b210f059358"; + url = "http://tarballs.nixos.org/stdenv-linux/aarch64/c7c997a0662bf88264db52cbc41e67884eb7a1ff/bootstrap-tools.tar.xz"; + sha256 = "sha256-AjOvmaW8JFVZaBSRUMKufr9kJozg/tsZr7PvUEBQyi4="; }; } From deb7e771aad39d437daacd65a91aea0ad73c55c1 Mon Sep 17 00:00:00 2001 From: K900 Date: Sun, 26 Dec 2021 11:02:26 +0300 Subject: [PATCH 015/170] rust/hooks: ensure the build output ends up in the right place Otherwise cargoInstallHook can fail to find and actually install it. --- pkgs/build-support/rust/hooks/cargo-build-hook.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/build-support/rust/hooks/cargo-build-hook.sh b/pkgs/build-support/rust/hooks/cargo-build-hook.sh index 54ed765012b9..7503fae4cd7f 100644 --- a/pkgs/build-support/rust/hooks/cargo-build-hook.sh +++ b/pkgs/build-support/rust/hooks/cargo-build-hook.sh @@ -6,6 +6,9 @@ cargoBuildHook() { runHook preBuild if [ ! -z "${buildAndTestSubdir-}" ]; then + # ensure the output doesn't end up in the subdirectory + export CARGO_TARGET_DIR="$(pwd)/target" + pushd "${buildAndTestSubdir}" fi From afcb6d3e10a11914d6f7a7ab155c6c8a27c74e8a Mon Sep 17 00:00:00 2001 From: TredwellGit Date: Sun, 26 Dec 2021 14:03:10 +0000 Subject: [PATCH 016/170] glibc: 2.33-59 -> 2.33-62 --- .../libraries/glibc/2.33-master.patch.gz | Bin 65714 -> 69704 bytes pkgs/development/libraries/glibc/common.nix | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/glibc/2.33-master.patch.gz b/pkgs/development/libraries/glibc/2.33-master.patch.gz index 50f74b15822e9b9fa94b55c722e059a5d650f168..aecf1550feffdb6cce55dad4088b4f6f0fe6dbae 100644 GIT binary patch delta 8309 zcmV-*Ad26zfdt5)1h5_Of9zdbcN;g7ewNPuh>m7wELkMe0QxH1IY*<*M7y%=BPvcd zjt{3VXo)r{YDmhK=Vbr;)&=NBlPy`fJnVxNMKrr{M**lRRDI>-bIaW6qT@9ZUZGxC z88U`rCB_J)z;p&_A*!m2dOHcXMYExZF{B`VtcG^3iYwS#8j{^vf17^f0x|HxJp0T} z-ZtJ3F(UtDVC*N)cssGFh9^HCF@Vu$^g_imqlZBUaB}e-G5V?xfl zLTR*Tg!3p0;na%-NP&TnY3$bUEf=u|(+GmqVvJ_SH(3tC8%5;3yoKYJtJ!kQ)9^UQ z&_fNg+Um0xe+rS6p%NKtM^hgv1_BDo6a*Skg|I2)Wf0^EbLH)JEUqvt(=~V6M2J{y zF(@IwA|4r`n>AXB8NZNehF8E%0H`fz(6(^6%!4ghgU7&rvsJ~o?r64vQ?7^3w+v;* zFapGUyR{)aC;PLo;+)wQ;tn6jI8;*m5zI&F2U%Jbf4Lv|D)D6&R7s)ZECWum^21Qy zr#YsvDkpt3XrQ}%SJSip(uV96aiC$;RX7-kFs%H%OjF&h-{~l%t<~vBK$pBxPbhDf zKY(+_ZNvM2N<;hMoz%OM?eW942rZs=7Qiv>g)%n z`xuF+e_=`1Grg7K-P`ot=I(FHq$pF(%|PoB=&#-IP47h=!EH+~vTKFFmjBM?#TEWz zv4kTO|1n);_%SKRiyQoh9#5zESyucNWPAEt0 zykCFyI;ZuK6npg$Em_tH)2_Ce@4ZEOOungEYU`%*&L|NG4C8z($@iH-;R(DQ94=g<4+2j6?Yx`mw{o(x}m zzdTOYO;bve4ILaUqWWT53(S?~rHYcEf6NC1AH+440h#5G(|WI$`LODHJw3+_qkwag zLz?5*eftz<=;=!AxhV?8Q;aF&oVCbhP7%X@aE11uPrb7lGCdc+|1icv{>;M|%lmT< zV=U=69>$P`M)J&MQ_wXOm^KV7`n176$XE|Jym)nf=DpVQ3<8|DyuNSgoq_n877sIagj@vC#lXW zQ8VlhW2w5}A#|^Rx08D^-4pQ|e|#{-8$IWcmL9swvHXT{kp}eDh86WwN7H3t--}cM zAxLxQ8;Qel zb}_vD-r3q|u8+`_Q4_9BW&$XBvw{S+(kpN0jJ1-XzPpb4?%f;tUEdX&oZScOVX1Z+ z&lhH&cIyW06EcuRNY3VTv6FcvEOxp;YCJvpdVx^oFoY#4s_L?)*$wIXj0lb!RIW8X zAfpv{MXiNoO-~&6xo?Pse;7xbEy+jNaT_WNQvTxe8|cHSbPy&Kr#+^A*Vt`p04 z20SJ?2vQ(V;yCFmQ7jSb3&if`Kn!@N~TpAOE?>3F7r4jk}^?=lrj=gsl!}HWs&@@*xG0ae>VF__dDU9 z6nm<+gctU#WAzV)_Mi*te4bqw6nqz1tA!m2x(8^P=duZJ*C0KAc@T4z2~~n+=6bU5e0K`TUFy?Y_5WV zHVnVIgqhY$s4~}+mXl*P`3&=9i!{KU#=+0~l;L$W!nqMRJ+|=-R=#&I8CT2Jbx_OV z?*Puv*}{AEf8=n6wte37f*!1$*lkFtN9Yv4B zm5x*?iz0bYu>&*>zkSpv2sIe4im)rMt#T(s$}Cb0nGz;tl@w(zf(Jz9)nYn?<<%r? z#m`3kym=j+U7Y{V_RFJ}@H;|bju71b;u${Tf;8!vf7|<*;ldzPATHL1a)%`U?t1?X zmSgk}8^z?Z8gKk{9`;h$VBTMCm@0o33U(8qdG`U(!$x*_HU0n@{2pfNiwz8k@e#e< zs8-am5ZnTeoyE_~i;bY?Z~t{Jf*nd<6fa(gJ!`;&fH9DHqWcqAEU5P9jQ39@tPJ?Q zcOq9_f7^+SMWS>BT=ZZ7+e`+#Oe(SmCUUiyj)`1NLK8_bPi&xLp2*?FIs86)BDvW6 zCz9WHPGn#w(p1?@r1QYzNG2!djKXL}1TBRzX-E*}P3j}o)7prvMKQq~;ixixq}gIx zMHuuwx|Qf#_>O^r`2*RLjWTAp zO~OQ`Wte~{h2hh4G@4)A)(i@RgL1d}$X;<5VVOeVcuA-VU*{kw6|45kt62@DuRf;B ze{I;I&>6&TRKQ!9bbVlymZ-r1HscrUcs*$EXFv<>M<4X(kpZ_@e^Kg*rWdKGIL3GFL&2GIpj=y$DiF=NZuCUD=lE z=eQxo=*Ybbf9dLk0K`<;n5X#eb>($bGN)S?;_vE|0&F1BU`6zC?f3d5m zQ!@lcyT~uh4uTyy#ulWp#zs@w46%T~dOQNyw9x|1F%0VVh|-c-hhcP0lj;oJiH+C$ zvrSeIE?4VC0MLtza}JnHWiW67+xjh**ry4~dxpRh8sv zp315!0-?i5R=J=3A)#6Zo}cW6f9YNrtO?cEH_OSMcQ`Z17d*_w4=z5?NNPB%OMLTw zdSkhNRw^fvA3I8AqpjuqWE2Nm49)<_t!4{leHqEmd#I)$Gstz*VNy4B^vLcKtztkd6n4{d{p+-mhB^k|d4aW2v zNyfIowvLB6^wZ?s*3Ny>eFsbZD2KiWI9x4~2zby;2^~b0gzkkpLq646Q`Lke`J|wgFzN&QiVEC()KP!$$8_Vf07pr!89ua)7-xL%Wp3k zo6XqLm-di>c{cGR$iV2WjAK7~2gEZW4VjIN!D?V4COna6M$d1v1i?FRXfS55cbaUq zfV2&DeLE>hZ#YAp(j536HeSChbFY763Q1D=&byg?(({{Q&s!89e-W?6uzOAX&~~tn zlOg)HuuBV`KW}+`c`sohBKo1Bjf{@%$(TcwlIp6a(@pO`HoZ4BSESTx+$N;JZ|hY; ztUPhaozJZ>B4DO<5M%)eBPz~fAonb4Phod{V{qR2j)ZQQ-vp#?nrwJ5ya3k5;B;bO zn6pg^1PYU0qFLVHe`Y@ZI3WD~o4NkzUNdwiDu5KOZ(Rjy|DjE4`)@ZT#puAD4_%#1 zxYK>4JKUA-#%7gV!}l3EelKcWaQ6jJwwz7J1?*9LQ#;Cvf7yDdyitWBP0#ZQXr?di ztq?sPeM0-QuH>TU9sh7~^wa3|`N^C8iz8?)W1EKzZf>k2e>%t0UUDt1tvK#PcBnY? zGCJ&3vzD6M6f!)zczN^^PG_`%<~$?Vtl4PtZ_O-NXsd^hh1C(?b=vnMUrRH$kB7&0 zwnI#PzSCp0v}^m4)FGehw6jmw&DEOs`mhE<+LlxT7MtZ1!E=U*G0C>lFk0PcBZ(NI(#g}PEf zIvB{ZN`tt_{jysFwpK)2`?dC(fh!0Y13w%{{9T5`FRtN?$rd0w5Z?UquD_gr#>1(3 zJBNJ`W?E}8TY)%NmI&+Ay)yozZcGM@0ZsAJ3B9-jQ;hvB(k z!ZE>xcDnQ|9V(TMw~jid1@`Ve-Q4Az2(oUYUKNws;&!fU-0SfrO6nwhVuzoZhp=5t z4CZ^oB{-@X^OQP6%*p=nzY*7)9~-FhXX`5Ie_Fi&vH>t|aQK_i;KVK2a=R(SNWbRZ z{&A4rEky=K8f~+}p79`ThN!dEq>V@IQmY}q9qL&WMUeV>JN~*B* z5$6ZwHPzhVzs!KDZWrDG9P!!p)y#W7T@+vPEs-c5>;=JIn66#X7^x@<-cIy8cGf&N ze?B4R>-5}P;F`AH>9_}Ei>ZaiSy;70sHCHI7}~e!8D0lk$3TQr3^b3?1}Dbs2aez| z2Li+@vG}5@M~12L$g$9j#jrR$&~ zPhTBSRy=1Jk%(vHD6PQ?c2esn)}e!78KC78-c?b) zoMzW-;51&chj&K-^Ct_=j86Q<_>)T<-`TTmY!w`?Wr7K$h3`m~ageb8lh7q`CG|fY zTf>?`Y=EgIQOF zXMik#B4MUvZ!Tm{2{%__bIHOhlov=(C3P;(A~?OWKQql~Jkc zp83MeS`ct9*um*}lRESLf3-Sv+8)F8Ix@f25#@Gdx!w_2k9Ct0+axB7yh#M}P>)*i zotwMqkX-H1rklS`Mrm>&KTY3@=?&3&F%M}*-TsSp((9n1Rnmj)!)8-<*jCpRP!9;6 ziJPgRIU0sES|uKAA#Te-Jrt4e4u$lcxvkJ+)l+GEMW(R6{4{hke+AAI!?;W3#f2Rh z>g8PZTJt57l|g}gJR11~=6BakTKB1>q)}b?wZ1gt2ZQe9Q2rx`0S2=kfxsOBwK`u4 zcR|X1y=XU0)x9VZPf4%R@U&Ht)Fl-0yn(wW&GdJhZm5;PVBnM)xMPVepk08{kqqVE z719q}0t@O^M7Fyte>ozTMuLXeBTN`p_)FtB`E)%s^f;GM5B6TzeVwdfJ+M*kMX47R z_=`VxvpJs*a5TVl$S6(XN16DPLi$ynrh&+{sB)32pz`w&fmO;V!1%B_@Pl;|pY;on z=F(#@2x6IuxQbHshzk%> z%H)d|Beiyo>-n~>&%9|l)7_uQ;!kRzXO*WS9t;vyl|`Zxb&qfH1BI<9{_ammesgiy z6VltI&j5+$^kQ_n|M#QQ;Sa~hCqHcykQ+r48tLnDXU}_vT2phufzS^u7qA+fRVyZZ zm+R?u_U6^;fB6vz+xu^h*gVVdILP1(58jN9&-Y&*jSvh1kB(<-5C&UOH6CRpLfMRp zDjTuPv)#@>sq1qd*L(Bct=AUZe|*7BBVd8pMEBRgK=ov0Kw6n*EO2zJbsCRX*XW!d zk>}io>CWUay>VJdbz<|H5uxLi&(?O|>J;4r(O(-0fA*tQ$l?7T00030|Lk2`Z__Xo ze&<(|F|n2|RqEUtB#^j03?YGFk4Te~xLcrYN}WjX!f)qXoZ88^*1^uwBqRrU3Ia+JA%{96fVF}F+iRYSFyo^t8$J`UHNk#n`{rn4q7xpeiI z4rDs&e;RS+WPRJm*2c57%&$xy(})sD;X-P-dAd(jpTJm_KC@r}7UTH*XZfOOVD{ zxHQgDd)jk}{EmBgi9&hww%L_cqw$!Fs0U%>kx&F(7HZv?;|T;yg8*jWry0Imh=LgcPeogIu5G1tnVDT|O~*X= z8Zfa`!cS5Fwy!(clb%=zkyQp?^CagQs10QfP|k^H8mH&Bn66vMQsJ2qmBFx3n8CIP ze|q`WpvRJd#^4zhld_S^OO5YHS^;cf2$!Lg`z4;;^K5*A7vkRY3*!G&TMXq@1EoKF zHhS^t)!7-|$1?GuV^DL^A(2)Lon63&_%Bxhu9|eqHmKG9nXydaxjcGe;{iIpIOs^Z z_o|}j@C<7<8kJw0a1WfoXs|9=mm9)re=v+kBcRH8%$=4Gwfw3!T-|oOhK1i{iIsu4 zp%Nvh1SjL04DopMGnsVF!NL%$o8>D4+oBU0Izf+oPmr6Hq4!}pRkP0MOb=;Hm$a%W zH`}JRMlg?ZJz*d^ThN%p=?%=p290cHsK3`G($1jTL~e*m^CgKaJB=K9K4)%+f5995 zg4sK%qRi`{&U$iHU6y%kLGvyr=UDf<%RtNIHp%3U*Bhm+7ghJWNQXU=UNfZ*jn-o0 znUCLW@UDO@g?${8TmL*3wDVS6k0|}l0qrh=nx#J%i^R`F?h6@yr)lCH zbbsIfvb~Nzuc{UFcZ9#v>H!D0M+aZ^k2vvP-}Do@ncg5tOcyDa>f31ie?#fhV^~L& ztHRSTDyaeiR*Z0Yh8@QvtIchY;U~t!pTbHYWgUhnL1@#4gk{;s#5N|f!PtJ9*nbx` zm{KlQ7T=M}5o|7OMjl8Mc~@U`uD!bQM3ZZj#dC5AoG-%%)0<+PaP+_!?Rbn6xPj|< zE3T8tDcEvvyQyP5*h;fIe;bWcf^nO|fXt7_RrY1O{62B?m{m>v)W*;X(Obik1A#lA z4b|fD7&bhH(`26%>e8fxK?-YfAp7v&Wj`IrK5DZc`W}Lv;wBRUEgi0pqY+m$(HB#R zyJq7#|LLncR6L}>z894pLR^LO&fwCCITYHI!*rPyelQ<~HrmB+$@Q&|SfI7Vg)9PPdGC_xPrJeA6!g00960a@_~n)jTlHH<(>fJb2@y@e=_CyeH^ zV6D`s4}t4SvX(t{1QxijJ}7|T219}i6%>3mV8I6KgG9}ef34(^$((H`s$P|p!tKZ3 z9r3<5`~vDp)%`GuCggRE<_C(1;L269G4Fj`Y*p2Q<*aKsOFR*4M?9x_p#MlMxL|tn z1>PdHy1+y=M%IsICSjH3Nv-2tUy=P&*|k#Kv10(;6Q_3qj8XCaL^|AaDW z{$<8Ruf7=$j4AEJD9Yw^(rkLZ*D9AU0!ajeente)mYq4(1*A(Lv(1_<69kVAQl(+uGjEjdxY~WZ%EhI;$Aib0hoH>2Bmp|Bgzxh-rD$%QOe*RF3$0$;B){oEYaW>1YEOnn zJL89Q+5e@uY9HPDmq8?@(>8;}IA!E&mZk(pkinMlV$DJYhh2+h40@teB{X@0DWgC@ zf7CW;CUV_(uLu3lZWj(|7qp6x<54@!yxY_gwlv%fHu+2Z7|78m7PHq^@c_qW%-x?m z4qO46!!00000|No6$U2B6d6n*Z$f5=m5p%c>ut*|#&*w_X|yO+I`Sj|@Gx}qzC z{rcUH7%k4$x7x(3`M}(pdvXq*qQ5V;LJBESF+us)KT%6k!-_wHn4e-nDs|dAwVn5mdx|A6oukB7uYOi|fF+Ym7b-;ae^U zGfE-=k105hlk$5H0nd00z9UNjz-qo)#ev#vrY&Ir_}7g-l%T=*VHrQ+RNJJlE2M-M zWh8t9-^&Y-DkvR?>b$qaY(LWp`T-gHeS%Qcx3qfAKSL=pY~QGF6?2-pJvo)teiZu=f2ai_@xe@e;zQn+ z?}rqT|1dE2ljl60*j$67U-}GS^a)R);+nCGqyyNwm_~{|`Z$a_L5d5XVpKderlWI= z3AoZI5US!8YILNTqaPB5=Iik2SXCxM8)C=S9f%)Ja`CR8zcv~q=1!f6=gkuZ>+0z8l?{5|2WtfK=janVnhJ8uq-hOdrZla4z$ z>N`LDbg*CFdHe@%Hlkj_3C=AopjUH7)3VE7Eq;Ywu(ZZPf23pI^^lJ#j{U-OqcoIJ z0WTa0KME4z<+)7YztQKnN_sFnC`tDl;)4$DGs42$KYr;j569Nx4l)2;4valdC$aD} z#xuft6b7*BMFOlqU&th?-{Bcou?O7 zQ(NWZE(SEvUVh!vvzllrdqw1HXmu~>^+XU9Zki{FZujrBRMPb7v}B-7-f&lV&JKTo z=8V&Z^OX&adUN{v03#%Zhy8nZgPNXV+aJ-L9 zL<^N2rJ=b$S>Nn7K^==|b*IwKhKIaPFX$G>y_plj!) z`6Bs~sw@$~jP5XoPoqI$B4xU|nyM|M8Z|G%f9EtCU5+MH2_n$2KdIIXi%#Uea(@5a zY3gV>FGJ?(2xdtj9YYf9|JV-m|Mg=BIuh+!t=|)>$fLojue|a_omSnZR2Lg`)4m-pS~J!jt$}3 ze^>^>tPPR)nxILqFR^!OGuz?I<1;+G;C%O;BjVkq)E|F79Sq+b_GOhNScu}^a>9i?8BRPY9)W!KRx)t`MqA*@!`?njq~ez zzHaJLvTSJKXb9D#c`YzklIC6*`+3^yf4N|;c?!fVUC-;iTIa*A@74Uw8%Bh4k}1ux z?Vde_9(uaOJ$H#l@g;J~)Ye+mGA|LszjuN0piiBX2`W8je||B>O8&~l80-6M7GtdG z4=%<~gj({XuBPD8P*B>CSoG-v|3I-HaB%kewC}v!Kj6c!$47%R2YU<`c0}1|e~LA| zOnB~57%|~OndI;B#gD6}~ zKP|(VZ|o+K2xMzU9M;u8UnIWg`jx^Sf(&Ja@I1Fr1rkh%NWv|HxbS3@rP52|M5l$Q z6!wR)RO{d&w6B1>lY27R6VVEMe=zZlo-(DSgGc4qenVcQ9(}d6qHa?2bXnNdG1_eanugG zn728y$E_@mGh$AC8X}K(4dz(Y%n%eZFqUxQh@+5a4s?yvq3Vk66lRATe`sSmO^NPi z1MlD2-r8PlAK_6(O}IA75GXp6j10Ei$**UOwW849U9rA9_cFihyG+wz_ueWk)%N1# z3#(5%)dTDkGLS_`Rx{ezQBDqnoi>mbCp~$4fl%d;!V(=-Rb7{AO1?g0g5w00YK<2t zXa$n!X(8L37TdFL``Ta4{t6r7c?@-X*_iS}_)-q?O#$`JJ z9g_|S5|Jlqob;6>mW1^MVs|qU18(;9Pn}LzZtqs!1jGO7n36*RCYvpb{0pkAw~~z+ zGRsBIP4lwsp=jP2!Kw{oOQRAKpR;QU-OgxljQ2C}B<@Vq zQ8kX&v#Nv^I)kAtb(|zBOM^J`3NUyIi znezNVgYA?iVc-W*=C=~)nQ{#RJ#&plZA=O$e|*lM{me15@u!B%<3pvp@#rYosb#5T zqirVV)C1vs>_ zzEd~}^P5&dfjTc_Qsj|@wLzvbjr=UmV=tCch9b;$km@kc;y=Z$je+ndlN;LK3HGGe z^QuUAVb?l#{~)yoZAhmxb(InME~-|gZ3)^3=K~;}59b$kfBKIP7d1q!Ljt3$ZId&t zGbmM)68haBpD=VLZ;y+R4w0Y*i(~qd8WTwpS;hOn_rh=s+LcBW%<{S@M%l=01%qrD zeRU2!t>6vr?f$ zFPB*sKj_#2nTDS(`V)lL8!Vf!OUc%`6QE>f2~ws6abCn(o(lf~Q+c_X7Grri3rF#D z5I;{|{gboPe|KK>U%}51jX6Sa``R&j#2Ivq1G34fdNXW5GvV$TNfAYcp>9_#KH1`E3Vx#0aB2_pl3?(N8> zWZRLEe~3LDf)?HD!8D^_mPv$qpd**7Y3a!2EYy+2d18rr|`3OM{>3IcO<8` zcBF4R(%f>9_>P`|`2*XNgEA(ICBe@Uk!k4(H`JLFe~BAtk-1=3r#f>z=_!?Ez7GEiiNR-gmS*-+lRxU&F|A4lWyTF0>0)2v(>yD11#k>-9D1S)dlBo1Pk z?P ze}_TrLo_4r zc#wMse$&|}?)hvIo9PzfBxQZ$_e?wq2 zt9+z)5bUTHY(XAtd}ykhAr=r=k6QpAZCGMBhC$sPQeFz{Fp92uq^dxBW^?NO`6fFE z=gap+0MN6uQzlHNIvBWsWBtlGzS9_OK7+zgX;4KHBr*>Ju#D2ki$zhmMG>b-n#iKa ze4&F-7OAT~%cz#V*>6 zQ#lUZsOD5Q-dZkCL2)p}U=NVpYNk;3my!Lvhi(cAgPbXj;pKyH^*fop6!Q?o+ty*X znH3NMeKUk;)rciL+KRpa?dh~c4HLacG$W;mcZ*B~>;horksiFXZeD}je~0xqL!XJp zf#L1FOldF4v$Rms_hjl7pz+E$4*Wb;Sr8R&u0i4x@snWw7Pe^Zf?UZB%BY0hGlohL5(lTN`9OtWWTnwwjH>Ge5dvzb`> z+%7WE&xTKe0*v0tD00L1AUtF8kXddFb_0_z;fg#letuiT_uo4MgE50|rzutoMB7N$ zvvE#-!wLG7W}x?Q@cMb4I^C(MBu?aeXF9pnvuU>Hl-Uj9wHS48f59KxBF z(t_*HJ04%oD;S7~erRMv(Xu@rF-0l4t|~d*bpE#K{8(v4p0~`~gcA6y8YQI4la}0i z-5MhTdRqIw^1&GKA{BwStFYOH?d46td21RO-O#@=Sl!gwaA9x;s*SNp-%R=ETu~GanvxGIXc=D0et3 z-HpsBxq|N#I`~~yzTox^AT^&{jxv~|c&B!#vj5uqP<_J!O`2WDC7_wEw7Wudd3cNQ zXKmTVuJiKkS^wwZo71Bo_s{z9w2W;YFu1vij%aO9yU8`Tf3e~?6WOL>>Sa8zQ%o9e zZd1vifA*^X3RY)~f#xzpn5;Qy^4mo(SZJ$E&{PrNP7+CDBG9koqLeY(BN zXlYkAk=!A-Ro=<%)naSSd2?6+A$26xfYqv$7(6GK8MAbRskOv2+cP?6f?g6E*-h*P zmT`p)fLn|Tf4q7!XR`^aV8#w)szC9$)$N`zJBQSL0QV$WG!!ol16_E2((B2*Nc<>E z-Mrlcwo*mY`?ZqHz!e0Hfgd$U{2hkG&#qvNQ6-oTgf~CG>&|DNaB*6s&R`yd9+)o> z;X(XyZmfMrvFMt4s=7R#cW+?g{3sgV7-yan?iPQ`f4c?By?Ko;&Ujs;t^7(Hbjam@!FKEt6eDwLL%Avx-ZbM=>>o;tp?`I=0@<;OP6egHyqRW5|WJ+x#po zE|r$lnmeWe_U=60+~JZ4vTj+gvhk$6p6LqrdUTGKIvJn%!q3e`m@dW!^L?Qu)Lb*> zD!mLTC;NkcA+9%HHc;iyS6$MTdjV_%P~2egHaD%onH#ocXHkiiPd+(PJK{qXPiRKW{bw diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix index 6fa46d6d6c10..1bc5bf08ee46 100644 --- a/pkgs/development/libraries/glibc/common.nix +++ b/pkgs/development/libraries/glibc/common.nix @@ -44,7 +44,7 @@ let version = "2.33"; - patchSuffix = "-59"; + patchSuffix = "-62"; sha256 = "sha256-LiVWAA4QXb1X8Layoy/yzxc73k8Nhd/8z9i35RoGd/8="; in @@ -63,7 +63,7 @@ stdenv.mkDerivation ({ [ /* No tarballs for stable upstream branch, only https://sourceware.org/git/glibc.git and using git would complicate bootstrapping. $ git fetch --all -p && git checkout origin/release/2.33/master && git describe - glibc-2.33-59-gf9592d65f2 + glibc-2.33-62-gc493f6a0e4 $ git show --minimal --reverse glibc-2.33.. | gzip -9n --rsyncable - > 2.33-master.patch.gz To compare the archive contents zdiff can be used. From 972337dd36117b1c6a53151f8f350e7fa3008dcf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sun, 26 Dec 2021 21:10:47 +0100 Subject: [PATCH 017/170] pandoc: keep generated postInstall ...otherwise the man page disappears. Fixes #144605 --- pkgs/development/tools/pandoc/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/pandoc/default.nix b/pkgs/development/tools/pandoc/default.nix index 475fa6a93e4e..a61f39c15b67 100644 --- a/pkgs/development/tools/pandoc/default.nix +++ b/pkgs/development/tools/pandoc/default.nix @@ -26,7 +26,7 @@ in # This should ideally be fixed in haskellPackages (or even Cabal), # but a minimal pandoc is important enough to patch it manually. disallowedReferences = [ haskellPackages.pandoc-types haskellPackages.HTTP ]; - postInstall = '' + postInstall = drv.postInstall or "" + '' remove-references-to \ -t ${haskellPackages.pandoc-types} \ $out/bin/pandoc From 5461824edefaca2f0f3b44c13275dad3f26f007a Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Mon, 27 Dec 2021 15:39:56 -0500 Subject: [PATCH 018/170] Revert "Revert "matplotlib-inline: Don't depend on matplotlib -> smaller ipython closure"" Un-revert on staging This reverts commit 37e104da68f8edaf590c6ffdc70d5065545e23e3. --- pkgs/development/python-modules/matplotlib-inline/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/development/python-modules/matplotlib-inline/default.nix b/pkgs/development/python-modules/matplotlib-inline/default.nix index 9ee23b87ee81..d863239430dc 100644 --- a/pkgs/development/python-modules/matplotlib-inline/default.nix +++ b/pkgs/development/python-modules/matplotlib-inline/default.nix @@ -1,5 +1,4 @@ { lib, buildPythonPackage, fetchPypi -, matplotlib , traitlets # tests @@ -16,7 +15,6 @@ buildPythonPackage rec { }; propagatedBuildInputs = [ - matplotlib # not documented, but required traitlets ]; From f2065d81ad9d25bbe581aef5c4c80845d7bb3041 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sun, 19 Dec 2021 01:32:35 +0100 Subject: [PATCH 019/170] stdenv/generic: introduce shellDryRun Add `shellDryRun` to the generic stdenv and substitute it for uses of `${stdenv.shell} -n`. The point of this layer of abstraction is to add the flag `-O extglob`, which resolves #126344 in a more direct way. --- nixos/modules/system/activation/top-level.nix | 4 ++-- nixos/modules/system/boot/systemd.nix | 16 +++++---------- pkgs/build-support/trivial-builders.nix | 6 +++--- pkgs/games/vdrift/default.nix | 20 +++++++------------ pkgs/stdenv/generic/default.nix | 7 ++++++- 5 files changed, 23 insertions(+), 30 deletions(-) diff --git a/nixos/modules/system/activation/top-level.nix b/nixos/modules/system/activation/top-level.nix index 501998fa399e..3c48d6bfd85f 100644 --- a/nixos/modules/system/activation/top-level.nix +++ b/nixos/modules/system/activation/top-level.nix @@ -55,8 +55,8 @@ let substituteInPlace $out/dry-activate --subst-var out chmod u+x $out/activate $out/dry-activate unset activationScript dryActivationScript - ${pkgs.stdenv.shell} -n $out/activate - ${pkgs.stdenv.shell} -n $out/dry-activate + ${pkgs.stdenv.shellDryRun} $out/activate + ${pkgs.stdenv.shellDryRun} $out/dry-activate cp ${config.system.build.bootStage2} $out/init substituteInPlace $out/init --subst-var-by systemConfig $out diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix index ec5dea075bbc..76c59c047e0f 100644 --- a/nixos/modules/system/boot/systemd.nix +++ b/nixos/modules/system/boot/systemd.nix @@ -210,20 +210,14 @@ let makeJobScript = name: text: let scriptName = replaceChars [ "\\" "@" ] [ "-" "_" ] (shellEscape name); - out = pkgs.writeTextFile { + out = (pkgs.writeShellScriptBin scriptName '' + set -e + ${text} + '').overrideAttrs (_: { # The derivation name is different from the script file name # to keep the script file name short to avoid cluttering logs. name = "unit-script-${scriptName}"; - executable = true; - destination = "/bin/${scriptName}"; - text = '' - #!${pkgs.runtimeShell} -e - ${text} - ''; - checkPhase = '' - ${pkgs.stdenv.shell} -n "$out/bin/${scriptName}" - ''; - }; + }); in "${out}/bin/${scriptName}"; unitConfig = { config, options, ... }: { diff --git a/pkgs/build-support/trivial-builders.nix b/pkgs/build-support/trivial-builders.nix index 3c9f3189d2cf..5720ebac2988 100644 --- a/pkgs/build-support/trivial-builders.nix +++ b/pkgs/build-support/trivial-builders.nix @@ -219,7 +219,7 @@ rec { ${text} ''; checkPhase = '' - ${stdenv.shell} -n $out + ${stdenv.shellDryRun} $out ''; }; @@ -246,7 +246,7 @@ rec { ${text} ''; checkPhase = '' - ${stdenv.shell} -n $out/bin/${name} + ${stdenv.shellDryRun} $out/bin/${name} ''; }; @@ -295,7 +295,7 @@ rec { checkPhase = if checkPhase == null then '' runHook preCheck - ${stdenv.shell} -n $out/bin/${name} + ${stdenv.shellDryRun} $out/bin/${name} ${shellcheck}/bin/shellcheck $out/bin/${name} runHook postCheck '' diff --git a/pkgs/games/vdrift/default.nix b/pkgs/games/vdrift/default.nix index 04f65cf79379..19397794649b 100644 --- a/pkgs/games/vdrift/default.nix +++ b/pkgs/games/vdrift/default.nix @@ -12,7 +12,7 @@ , bullet , curl , gettext -, writeTextFile +, writeShellScriptBin , data ? fetchsvn { url = "svn://svn.code.sf.net/p/vdrift/code/vdrift-data"; @@ -54,21 +54,15 @@ let }; }; wrappedName = "vdrift-${version}-with-data-${toString data.rev}"; -in writeTextFile { +in +(writeShellScriptBin "vdrift" '' + export VDRIFT_DATA_DIRECTORY="${data}" + exec ${bin}/bin/vdrift "$@" +'').overrideAttrs (_: { name = wrappedName; - text = '' - export VDRIFT_DATA_DIRECTORY="${data}" - exec ${bin}/bin/vdrift "$@" - ''; - destination = "/bin/vdrift"; - executable = true; - checkPhase = '' - ${stdenv.shell} -n $out/bin/vdrift - ''; -} // { meta = bin.meta // { hydraPlatforms = [ ]; }; unwrapped = bin; inherit bin data; -} +}) diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index 49ebc67f854e..4fb98e5e8013 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -112,7 +112,7 @@ let # are absolute unless we go out of our way to make them relative (like with CF) # TODO: This really wants to be in stdenv/darwin but we don't have hostPlatform # there (yet?) so it goes here until then. - preHook = preHook+ lib.optionalString buildPlatform.isDarwin '' + preHook = preHook + lib.optionalString buildPlatform.isDarwin '' export NIX_DONT_SET_RPATH_FOR_BUILD=1 '' + lib.optionalString (hostPlatform.isDarwin || (hostPlatform.parsed.kernel.execFormat != lib.systems.parse.execFormats.elf && hostPlatform.parsed.kernel.execFormat != lib.systems.parse.execFormats.macho)) '' export NIX_DONT_SET_RPATH=1 @@ -168,6 +168,11 @@ let inherit overrides; inherit cc hasCC; + + # Convenience for doing some very basic shell syntax checking by parsing a script + # without running any commands. Because this will also skip `shopt -s extglob` + # commands and extglob affects the Bash parser, we enable extglob always. + shellDryRun = "${stdenv.shell} -n -O extglob"; } # Propagate any extra attributes. For instance, we use this to From 10ec5da56e9932501104f39c3ca351a93d734053 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sun, 19 Dec 2021 23:29:07 +0100 Subject: [PATCH 020/170] tests.trivial-builders.overriding: update after shellDryRun --- pkgs/build-support/trivial-builders.nix | 18 +++--- .../trivial-builders/test-overriding.nix | 63 ++++++++----------- 2 files changed, 36 insertions(+), 45 deletions(-) diff --git a/pkgs/build-support/trivial-builders.nix b/pkgs/build-support/trivial-builders.nix index 5720ebac2988..938ad2514269 100644 --- a/pkgs/build-support/trivial-builders.nix +++ b/pkgs/build-support/trivial-builders.nix @@ -121,18 +121,18 @@ rec { allowSubstitutes = false; } '' - n=$out${destination} - mkdir -p "$(dirname "$n")" + target=$out${destination} + mkdir -p "$(dirname "$target")" if [ -e "$textPath" ]; then - mv "$textPath" "$n" + mv "$textPath" "$target" else - echo -n "$text" > "$n" + echo -n "$text" > "$target" fi eval "$checkPhase" - (test -n "$executable" && chmod +x "$n") || true + (test -n "$executable" && chmod +x "$target") || true ''; /* @@ -219,7 +219,7 @@ rec { ${text} ''; checkPhase = '' - ${stdenv.shellDryRun} $out + ${stdenv.shellDryRun} "$target" ''; }; @@ -246,7 +246,7 @@ rec { ${text} ''; checkPhase = '' - ${stdenv.shellDryRun} $out/bin/${name} + ${stdenv.shellDryRun} "$target" ''; }; @@ -295,8 +295,8 @@ rec { checkPhase = if checkPhase == null then '' runHook preCheck - ${stdenv.shellDryRun} $out/bin/${name} - ${shellcheck}/bin/shellcheck $out/bin/${name} + ${stdenv.shellDryRun} "$target" + ${shellcheck}/bin/shellcheck "$target" runHook postCheck '' else checkPhase; diff --git a/pkgs/build-support/trivial-builders/test-overriding.nix b/pkgs/build-support/trivial-builders/test-overriding.nix index ddd5dc050752..a16bbbee1b1b 100644 --- a/pkgs/build-support/trivial-builders/test-overriding.nix +++ b/pkgs/build-support/trivial-builders/test-overriding.nix @@ -1,10 +1,11 @@ # Check that overriding works for trivial-builders like # `writeShellScript` via `overrideAttrs`. This is useful -# to override the `checkPhase`, e. g. when you want -# to enable extglob in `writeShellScript`. +# to override the `checkPhase`, e. g. if you want +# to disable extglob in `writeShellScript`. # -# Run using `nix-build -A tests.trivial-overriding`. +# Run using `nix-build -A tests.trivial-builders.overriding`. { lib +, stdenv , runtimeShell , runCommand , callPackage @@ -21,33 +22,6 @@ let rm success ''; - # Reuse the old `checkPhase` of `writeShellScript`, but enable extglob. - allowExtglob = old: { - checkPhase = '' - # make sure we don't change the settings for - # the rest of the derivation's build - ( - export BASHOPTS - shopt -s extglob - ${old.checkPhase} - ) - ''; - }; - - # Run old checkPhase, but only succeed if it fails. - # This HACK is required because we can't introspect build failures - # in nix: With `assertFail` we want to make sure that the default - # `checkPhase` would fail if extglob was used in the script. - assertFail = old: { - # write old checkPhase into a shell script, so we can check for - # the phase to fail even though we have `set -e`. - checkPhase = '' - if source ${writeShellScript "old-check-phase" old.checkPhase} 2>/dev/null; then - exit 1 - fi - ''; - }; - simpleCase = case: writeShellScript "test-trivial-overriding-${case}" extglobScript; @@ -70,16 +44,33 @@ let executable = true; }; - mkCase = f: type: isBin: + disallowExtglob = x: x.overrideAttrs (_: { + checkPhase = '' + ${stdenv.shell} -n "$target" + ''; + }); + + # Run old checkPhase, but only succeed if it fails. + # This HACK is required because we can't introspect build failures + # in nix: With `assertFail` we want to make sure that the default + # `checkPhase` would fail if extglob was used in the script. + assertFail = x: x.overrideAttrs (old: { + checkPhase = '' + if + ${old.checkPhase} + then exit 1; fi + ''; + }); + + mkCase = case: outcome: isBin: let - drv = (f type).overrideAttrs - (if type == "succ" then allowExtglob else assertFail); + drv = lib.pipe outcome ([ case ] ++ lib.optionals (outcome == "fail") [ disallowExtglob assertFail ]); in if isBin then "${drv}/bin/${drv.name}" else drv; writeTextOverrides = { - # Enabling globbing in checkPhase + # Make sure extglob works by default simpleSucc = mkCase simpleCase "succ" false; - # Ensure it's possible to fail; in this case globbing is not enabled. + # Ensure it's possible to fail; in this case extglob is not enabled simpleFail = mkCase simpleCase "fail" false; # Do the same checks after wrapping with callPackage # to make sure callPackage doesn't mess with the override @@ -103,7 +94,7 @@ let name = script.name or (builtins.baseNameOf script); in writeShellScript "run-${name}" '' if [ "$(${script})" != "success" ]; then - echo "Failed in ${script}" + echo "Failed in ${name}" exit 1 fi ''; From 07f1f2ca9cd1c354c4c2713cab124698e534cadd Mon Sep 17 00:00:00 2001 From: Gabriella Gonzalez Date: Mon, 27 Dec 2021 22:15:06 -0800 Subject: [PATCH 021/170] makeWrapper: Add `--prefix-each` flag (#145104) This is for symmetry with `--suffix-each`, and also because (in my limited experience), `--prefix-each` is more useful since it ensures that the new entries superseded the existing `PATH` entries --- pkgs/build-support/setup-hooks/make-wrapper.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/build-support/setup-hooks/make-wrapper.sh b/pkgs/build-support/setup-hooks/make-wrapper.sh index 8b7012677cd5..903e17c3b2e5 100644 --- a/pkgs/build-support/setup-hooks/make-wrapper.sh +++ b/pkgs/build-support/setup-hooks/make-wrapper.sh @@ -23,6 +23,7 @@ assertExecutable() { # --prefix ENV SEP VAL : suffix/prefix ENV with VAL, separated by SEP # --suffix +# --prefix-each ENV SEP VALS : like --prefix, but VALS is a list # --suffix-each ENV SEP VALS : like --suffix, but VALS is a list # --prefix-contents ENV SEP FILES : like --suffix-each, but contents of FILES # are read first and used as VALS @@ -73,6 +74,14 @@ makeWrapper() { echo "export $varName=${value@Q}\${$varName:+${separator@Q}}\$$varName" >> "$wrapper" fi fi + elif [[ "$p" == "--prefix-each" ]]; then + varName="${params[$((n + 1))]}" + separator="${params[$((n + 2))]}" + values="${params[$((n + 3))]}" + n=$((n + 3)) + for value in $values; do + echo "export $varName=${value@Q}\${$varName:+${separator@Q}}\$$varName" >> "$wrapper" + done elif [[ "$p" == "--suffix-each" ]]; then varName="${params[$((n + 1))]}" separator="${params[$((n + 2))]}" From d55d671202e4f7cdebe017fda26ec6b08679d465 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 28 Dec 2021 11:24:43 +0100 Subject: [PATCH 022/170] python3Packages.charset-normalizer: 2.0.8 -> 2.0.9 --- .../python-modules/charset-normalizer/default.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/charset-normalizer/default.nix b/pkgs/development/python-modules/charset-normalizer/default.nix index 7f7f54b73d91..c29908e64999 100644 --- a/pkgs/development/python-modules/charset-normalizer/default.nix +++ b/pkgs/development/python-modules/charset-normalizer/default.nix @@ -2,17 +2,21 @@ , buildPythonPackage , fetchFromGitHub , pytestCheckHook +, pythonOlder }: buildPythonPackage rec { pname = "charset-normalizer"; - version = "2.0.8"; + version = "2.0.9"; + format = "setuptools"; + + disabled = pythonOlder "3.5"; src = fetchFromGitHub { owner = "Ousret"; repo = "charset_normalizer"; rev = version; - sha256 = "sha256-+acnzdDcujnMa0FYlWaAX7Ga9APMRlvBLKoogIyY8YM="; + hash = "sha256-S+7jyCv7yfecLd+g/rXvLA2e++nwKrEk2Xs7gUnF6uA="; }; checkInputs = [ @@ -24,7 +28,9 @@ buildPythonPackage rec { --replace " --cov=charset_normalizer --cov-report=term-missing" "" ''; - pythonImportsCheck = [ "charset_normalizer" ]; + pythonImportsCheck = [ + "charset_normalizer" + ]; meta = with lib; { description = "Python module for encoding and language detection"; From 7f431c8cc5c224ae0b704262c9241b1d342482cc Mon Sep 17 00:00:00 2001 From: Jonas Heinrich Date: Tue, 28 Dec 2021 23:43:07 +0100 Subject: [PATCH 023/170] cups: 2.3.3op2 -> 2.4.0 (#148611) --- pkgs/misc/cups/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix index bbada33054d3..0e9977f564b1 100644 --- a/pkgs/misc/cups/default.nix +++ b/pkgs/misc/cups/default.nix @@ -28,14 +28,14 @@ stdenv.mkDerivation rec { pname = "cups"; # After 2.2.6, CUPS requires headers only available in macOS 10.12+ - version = if stdenv.isDarwin then "2.2.6" else "2.3.3op2"; + version = if stdenv.isDarwin then "2.2.6" else "2.4.0"; src = fetchurl (if stdenv.isDarwin then { url = "https://github.com/apple/cups/releases/download/v${version}/cups-${version}-source.tar.gz"; sha256 = "16qn41b84xz6khrr2pa2wdwlqxr29rrrkjfi618gbgdkq9w5ff20"; } else { url = "https://github.com/OpenPrinting/cups/releases/download/v${version}/cups-${version}-source.tar.gz"; - sha256 = "1pwndz4gwkm7311wkhhzlw2diy7wbck7yy026jbaxh3rprdmgcyy"; + sha256 = "1pm6lf08z8vgs62g5b5rjw32qy3vr0q3sgidpg2lfs6a530wxgls"; }); outputs = [ "out" "lib" "dev" "man" ]; From 542c6508665a3887bd30a6bf3c5bdaa2245fc6e8 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 30 Dec 2021 10:57:37 +0100 Subject: [PATCH 024/170] python3Packages.pycryptodome-test-vectors: init at 1.0.4 --- .../pycryptodome-test-vectors/default.nix | 30 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 32 insertions(+) create mode 100644 pkgs/development/python-modules/pycryptodome-test-vectors/default.nix diff --git a/pkgs/development/python-modules/pycryptodome-test-vectors/default.nix b/pkgs/development/python-modules/pycryptodome-test-vectors/default.nix new file mode 100644 index 000000000000..4fbc259c188e --- /dev/null +++ b/pkgs/development/python-modules/pycryptodome-test-vectors/default.nix @@ -0,0 +1,30 @@ +{ lib +, buildPythonPackage +, fetchPypi +}: + +buildPythonPackage rec { + pname = "pycryptodome-test-vectors"; + version = "1.0.4"; + format = "setuptools"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-2+ZL8snmaB0tNxGZRbUM6SdfXZf4CM0nh3/wTOu9R50="; + extension = "zip"; + }; + + # Module has no tests + doCheck = false; + + pythonImportsCheck = [ + "pycryptodome_test_vectors" + ]; + + meta = with lib; { + description = "Test vectors for PyCryptodome cryptographic library"; + homepage = "https://www.pycryptodome.org/"; + license = with licenses; [ bsd2 /* and */ asl20 ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 10f51ae57722..2ddde13f31a2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6293,6 +6293,8 @@ in { pycryptodome = callPackage ../development/python-modules/pycryptodome { }; + pycryptodome-test-vectors = callPackage ../development/python-modules/pycryptodome-test-vectors { }; + pycryptodomex = callPackage ../development/python-modules/pycryptodomex { }; pyct = callPackage ../development/python-modules/pyct { }; From 95570a64dc0636692f88370d7d747b96105403be Mon Sep 17 00:00:00 2001 From: Yureka Date: Fri, 3 Dec 2021 18:36:06 +0100 Subject: [PATCH 025/170] lvm2: allow building static libdm --- pkgs/os-specific/linux/lvm2/common.nix | 33 +++++++++++++++++----- pkgs/os-specific/linux/lvm2/no-shared.diff | 25 ++++++++++++++++ 2 files changed, 51 insertions(+), 7 deletions(-) create mode 100644 pkgs/os-specific/linux/lvm2/no-shared.diff diff --git a/pkgs/os-specific/linux/lvm2/common.nix b/pkgs/os-specific/linux/lvm2/common.nix index 2c8014d700a0..5ee368c242fd 100644 --- a/pkgs/os-specific/linux/lvm2/common.nix +++ b/pkgs/os-specific/linux/lvm2/common.nix @@ -9,7 +9,8 @@ , libaio , enableCmdlib ? false , enableDmeventd ? false -, udev ? null +, udevSupport ? !stdenv.targetPlatform.isStatic, udev ? null +, onlyLib ? stdenv.targetPlatform.isStatic , nixosTests }: @@ -26,7 +27,13 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkg-config ]; - buildInputs = [ udev libuuid libaio ]; + buildInputs = [ + libaio + ] ++ lib.optionals udevSupport [ + udev + ] ++ lib.optionals (!onlyLib) [ + libuuid + ]; configureFlags = [ "--disable-readline" @@ -46,10 +53,11 @@ stdenv.mkDerivation rec { ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "ac_cv_func_malloc_0_nonnull=yes" "ac_cv_func_realloc_0_nonnull=yes" - ] ++ - lib.optionals (udev != null) [ + ] ++ lib.optionals udevSupport [ "--enable-udev_rules" "--enable-udev_sync" + ] ++ lib.optionals stdenv.targetPlatform.isStatic [ + "--enable-static_link" ]; preConfigure = '' @@ -78,30 +86,41 @@ stdenv.mkDerivation rec { url = "https://git.alpinelinux.org/aports/plain/main/lvm2/mallinfo.patch?h=3.7-stable&id=31bd4a8c2dc00ae79a821f6fe0ad2f23e1534f50"; sha256 = "0g6wlqi215i5s30bnbkn8w7axrs27y3bnygbpbnf64wwx7rxxlj0"; }) + ] ++ lib.optionals stdenv.targetPlatform.isStatic [ + ./no-shared.diff ]; doCheck = false; # requires root - makeFlags = lib.optionals (udev != null) [ + makeFlags = lib.optionals udevSupport [ "SYSTEMD_GENERATOR_DIR=$(out)/lib/systemd/system-generators" + ] ++ lib.optionals onlyLib [ + "libdm.device-mapper" ]; # To prevent make install from failing. installFlags = [ "OWNER=" "GROUP=" "confdir=$(out)/etc" ]; # Install systemd stuff. - installTargets = [ "install" ] ++ lib.optionals (udev != null) [ + installTargets = [ "install" ] ++ lib.optionals udevSupport [ "install_systemd_generators" "install_systemd_units" "install_tmpfiles_configuration" ]; + installPhase = lib.optionalString onlyLib '' + install -D -t $out/lib libdm/ioctl/libdevmapper.${if stdenv.targetPlatform.isStatic then "a" else "so"} + make -C libdm install_include + make -C libdm install_pkgconfig + ''; + # only split bin and lib out from out if cmdlib isn't enabled outputs = [ "out" + ] ++ lib.optionals (!onlyLib) [ "dev" "man" - ] ++ lib.optionals (enableCmdlib != true) [ + ] ++ lib.optionals (!onlyLib && !enableCmdlib) [ "bin" "lib" ]; diff --git a/pkgs/os-specific/linux/lvm2/no-shared.diff b/pkgs/os-specific/linux/lvm2/no-shared.diff new file mode 100644 index 000000000000..d40dd85dfc62 --- /dev/null +++ b/pkgs/os-specific/linux/lvm2/no-shared.diff @@ -0,0 +1,25 @@ +diff --git a/libdm/Makefile.in b/libdm/Makefile.in +index 66ec39513..ab7123dae 100644 +--- a/libdm/Makefile.in ++++ b/libdm/Makefile.in +@@ -44,7 +44,6 @@ endif + + LIB_SHARED = $(interface)/libdevmapper.$(LIB_SUFFIX) + LIB_VERSION = $(LIB_VERSION_DM) +-TARGETS = libdevmapper.$(LIB_SUFFIX) libdevmapper.$(LIB_SUFFIX).$(LIB_VERSION) + + CFLOW_LIST = $(SOURCES) + CFLOW_LIST_TARGET = libdevmapper.cflow +diff --git a/make.tmpl.in b/make.tmpl.in +index e7780e8d4..ca4aa9fdd 100644 +--- a/make.tmpl.in ++++ b/make.tmpl.in +@@ -346,7 +346,7 @@ SUBDIRS.cflow := $(SUBDIRS:=.cflow) + SUBDIRS.clean := $(SUBDIRS:=.clean) + SUBDIRS.distclean := $(SUBDIRS:=.distclean) + +-TARGETS += $(LIB_SHARED) $(LIB_STATIC) ++TARGETS += $(LIB_STATIC) + + all: $(SUBDIRS) $(TARGETS) + From 2510939212216b28ad306df5f196316df8ca530b Mon Sep 17 00:00:00 2001 From: Yureka Date: Mon, 6 Dec 2021 10:27:11 +0100 Subject: [PATCH 026/170] cryptsetup: fix static build --- pkgs/os-specific/linux/cryptsetup/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/cryptsetup/default.nix b/pkgs/os-specific/linux/cryptsetup/default.nix index a66147dd22e7..0b23527940a0 100644 --- a/pkgs/os-specific/linux/cryptsetup/default.nix +++ b/pkgs/os-specific/linux/cryptsetup/default.nix @@ -24,12 +24,14 @@ stdenv.mkDerivation rec { substituteInPlace tests/unit-utils-io.c --replace "| O_DIRECT" "" ''; - NIX_LDFLAGS = "-lgcc_s"; + NIX_LDFLAGS = lib.optionalString (stdenv.cc.isGNU && !stdenv.targetPlatform.isStatic) "-lgcc_s"; configureFlags = [ "--enable-cryptsetup-reencrypt" "--with-crypto_backend=openssl" "--disable-ssh-token" + ] ++ lib.optionals stdenv.targetPlatform.isStatic [ + "--enable-static-cryptsetup" ]; nativeBuildInputs = [ pkg-config ]; From c0bf0edace8f56e5f506097d985babe8c4f528f8 Mon Sep 17 00:00:00 2001 From: Joerie de Gram Date: Wed, 29 Dec 2021 15:36:31 +0100 Subject: [PATCH 027/170] dbus-python: fix cross compilation Passing PYTHON ensures a python interpreter can be run even when cross compiling. --- pkgs/development/python-modules/dbus/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/dbus/default.nix b/pkgs/development/python-modules/dbus/default.nix index 599c911b9990..0685ca6fcca5 100644 --- a/pkgs/development/python-modules/dbus/default.nix +++ b/pkgs/development/python-modules/dbus/default.nix @@ -24,7 +24,7 @@ buildPythonPackage rec { '' else null; configureFlags = [ - "PYTHON_VERSION=${lib.versions.major python.version}" + "PYTHON=${python.pythonForBuild.interpreter}" ]; nativeBuildInputs = [ pkg-config ]; From 2c82929645136d97e568d12184ebb62493c892b5 Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Sun, 19 Dec 2021 12:01:43 +0100 Subject: [PATCH 028/170] iputils: 20210722 -> 20211215 The tools "tftpd" and "traceroute6" were removed. See [0] for more details. [0]: https://github.com/iputils/iputils/releases/tag/20211215 --- .../from_md/release-notes/rl-2205.section.xml | 13 +++++++++++++ nixos/doc/manual/release-notes/rl-2205.section.md | 6 ++++++ pkgs/os-specific/linux/iputils/default.nix | 14 +++----------- pkgs/top-level/all-packages.nix | 2 +- 4 files changed, 23 insertions(+), 12 deletions(-) diff --git a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml index 4a68bc941860..78a6c6c701b7 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml @@ -163,6 +163,19 @@ ~100MB for python itself). + + + The iputils package, which is installed by default, no longer + provides the legacy tools tftpd and + traceroute6. More tools + (ninfod, rarpd, and + rdisc) are going to be removed in the next + release. See + upstream’s + release notes for more details and available + replacements. + +
diff --git a/nixos/doc/manual/release-notes/rl-2205.section.md b/nixos/doc/manual/release-notes/rl-2205.section.md index 556552723100..6551df9ee882 100644 --- a/nixos/doc/manual/release-notes/rl-2205.section.md +++ b/nixos/doc/manual/release-notes/rl-2205.section.md @@ -60,6 +60,12 @@ In addition to numerous new and upgraded packages, this release has the followin This has the added benefit to reduce the closure size of `ipython` from ~400MB to ~160MB (including ~100MB for python itself). +- The iputils package, which is installed by default, no longer provides the + legacy tools `tftpd` and `traceroute6`. More tools (`ninfod`, `rarpd`, and + `rdisc`) are going to be removed in the next release. See + [upstream's release notes](https://github.com/iputils/iputils/releases/tag/20211215) + for more details and available replacements. + ## Other Notable Changes {#sec-release-22.05-notable-changes} - The option [services.redis.servers](#opt-services.redis.servers) was added diff --git a/pkgs/os-specific/linux/iputils/default.nix b/pkgs/os-specific/linux/iputils/default.nix index c949069885df..0ca6d8aa187f 100644 --- a/pkgs/os-specific/linux/iputils/default.nix +++ b/pkgs/os-specific/linux/iputils/default.nix @@ -6,7 +6,7 @@ }: let - version = "20210722"; + version = "20211215"; sunAsIsLicense = { fullName = "AS-IS, SUN MICROSYSTEMS license"; url = "https://github.com/iputils/iputils/blob/s${version}/rdisc.c"; @@ -19,14 +19,9 @@ in stdenv.mkDerivation rec { owner = pname; repo = pname; rev = version; - sha256 = "139fyifsjm0i012rhcx3ra3pxx2wxh77dfd551d8lgiv2mqd742j"; + sha256 = "1vzdch1xi2x2j8mvnsr4wwwh7kdkgf926xafw5kkb74yy1wac5qv"; }; - postPatch = lib.optionalString (!doCheck) '' - # There isn't a Meson option for this yet: - sed -i '/##### TESTS #####/q' ping/meson.build - ''; - outputs = ["out" "apparmor"]; # We don't have the required permissions inside the build sandbox: @@ -35,11 +30,10 @@ in stdenv.mkDerivation rec { mesonFlags = [ "-DBUILD_RARPD=true" - "-DBUILD_TRACEROUTE6=true" - "-DBUILD_TFTPD=true" "-DNO_SETCAP_OR_SUID=true" "-Dsystemdunitdir=etc/systemd/system" "-DINSTALL_SYSTEMD_UNITS=true" + "-DSKIP_TESTS=${lib.boolToString (!doCheck)}" ] # Disable idn usage w/musl (https://github.com/iputils/iputils/pull/111): ++ lib.optional stdenv.hostPlatform.isMusl "-DUSE_IDN=false"; @@ -87,9 +81,7 @@ in stdenv.mkDerivation rec { ping rarpd rdisc - tftpd tracepath - traceroute6 ''; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fa787dbe4eae..8e061cf7ad35 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -22294,7 +22294,7 @@ with pkgs; iproute_mptcp = callPackage ../os-specific/linux/iproute/mptcp.nix { }; iputils = hiPrio (callPackage ../os-specific/linux/iputils { }); - # hiPrio for collisions with inetutils (ping and tftpd.8.gz) + # hiPrio for collisions with inetutils (ping) iptables = callPackage ../os-specific/linux/iptables { }; iptables-legacy = callPackage ../os-specific/linux/iptables { nftablesCompat = false; }; From 2a699029f43a2d467b07fc42bea8fd975ffa766f Mon Sep 17 00:00:00 2001 From: misuzu Date: Thu, 30 Dec 2021 17:23:46 +0200 Subject: [PATCH 029/170] rustc: build with jemalloc This change should fix intermittent crashes on macOS Monterey. Co-authored-by: Pavol Rusnak --- pkgs/development/compilers/rust/rustc.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix index 187127cfbfb3..1087ac059082 100644 --- a/pkgs/development/compilers/rust/rustc.nix +++ b/pkgs/development/compilers/rust/rustc.nix @@ -100,6 +100,9 @@ in stdenv.mkDerivation rec { "${setHost}.musl-root=${pkgsBuildHost.targetPackages.stdenv.cc.libc}" ] ++ optionals stdenv.targetPlatform.isMusl [ "${setTarget}.musl-root=${pkgsBuildTarget.targetPackages.stdenv.cc.libc}" + ] ++ optionals (stdenv.isDarwin && stdenv.isx86_64) [ + # https://github.com/rust-lang/rust/issues/92173 + "--set rust.jemalloc" ]; # The bootstrap.py will generated a Makefile that then executes the build. From 36839cd87b76e8aa9f29dda4a54aa2d6e51bcdaf Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 30 Dec 2021 10:07:48 +0100 Subject: [PATCH 030/170] python3Packages.platformdirs: 2.4.0 -> 2.4.1 --- .../python-modules/platformdirs/default.nix | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/platformdirs/default.nix b/pkgs/development/python-modules/platformdirs/default.nix index 062295a4eada..f2e865991487 100644 --- a/pkgs/development/python-modules/platformdirs/default.nix +++ b/pkgs/development/python-modules/platformdirs/default.nix @@ -11,14 +11,16 @@ buildPythonPackage rec { pname = "platformdirs"; - version = "2.4.0"; - disabled = pythonOlder "3.6"; + version = "2.4.1"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = pname; repo = pname; rev = version; - sha256 = "sha256-Ox1CVq2M2eddZtpuZx0IfvuOm6RPsAs27WkMdZSeh0E="; + sha256 = "sha256-Ce1dwE2g/7o91NPkmlM0uv0eMB7WzFCExV/8ZCAn22Y="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; @@ -33,7 +35,9 @@ buildPythonPackage rec { pytestCheckHook ]; - pythonImportsCheck = [ "platformdirs" ]; + pythonImportsCheck = [ + "platformdirs" + ]; meta = with lib; { description = "Python module for determining appropriate platform-specific directories"; From 993d5821678acbe114b60c1c1797c03cdfdfae9e Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 30 Dec 2021 18:56:50 +0000 Subject: [PATCH 031/170] libfabric: 1.13.2 -> 1.14.0 --- pkgs/development/libraries/libfabric/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libfabric/default.nix b/pkgs/development/libraries/libfabric/default.nix index c1c6ef7032ae..38c88fe70f3c 100644 --- a/pkgs/development/libraries/libfabric/default.nix +++ b/pkgs/development/libraries/libfabric/default.nix @@ -3,7 +3,7 @@ stdenv.mkDerivation rec { pname = "libfabric"; - version = "1.13.2"; + version = "1.14.0"; enableParallelBuilding = true; @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { owner = "ofiwg"; repo = pname; rev = "v${version}"; - sha256 = "sha256-ydMZP83keUGDYDw9i/SCa4U1KEgfuqkFklwRKbfLoK8="; + sha256 = "sha256-MmvJV3Pne+bJtC91rdpNMZovoqMgm3gHFJwGH3tchgI="; }; nativeBuildInputs = [ pkg-config autoreconfHook ]; From 1b85dba90d0bb29c45e7db3cd8f4121955913c43 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 30 Dec 2021 19:23:33 +0000 Subject: [PATCH 032/170] libthai: 0.1.28 -> 0.1.29 --- pkgs/development/libraries/libthai/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libthai/default.nix b/pkgs/development/libraries/libthai/default.nix index 97745813ef26..7755fffc7a97 100644 --- a/pkgs/development/libraries/libthai/default.nix +++ b/pkgs/development/libraries/libthai/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libthai"; - version = "0.1.28"; + version = "0.1.29"; outputs = [ "out" "dev" ]; src = fetchurl { url = "https://github.com/tlwg/libthai/releases/download/v${version}/libthai-${version}.tar.xz"; - sha256 = "04g93bgxrcnay9fglpq2lj9nr7x1xh06i60m7haip8as9dxs3q7z"; + sha256 = "sha256-/IDMfctQ4RMCtBfOvSTy0wqLmHKS534AMme5EA0PS80="; }; strictDeps = true; From 05adef15cc5d087369b425bbfb80789129e8eccb Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 30 Dec 2021 21:04:40 +0100 Subject: [PATCH 033/170] python3Packages.pycryptodome: 3.11.0 -> 3.12.0 --- .../python-modules/pycryptodome/default.nix | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/pycryptodome/default.nix b/pkgs/development/python-modules/pycryptodome/default.nix index 19b2447acb11..44e7ed0ad4aa 100644 --- a/pkgs/development/python-modules/pycryptodome/default.nix +++ b/pkgs/development/python-modules/pycryptodome/default.nix @@ -1,17 +1,29 @@ -{ lib, fetchPypi, buildPythonPackage }: +{ lib +, buildPythonPackage +, fetchPypi +, pycryptodome-test-vectors +}: buildPythonPackage rec { - version = "3.11.0"; pname = "pycryptodome"; + version = "3.12.0"; + format = "setuptools"; src = fetchPypi { inherit pname version; - sha256 = "428096bbf7a77e207f418dfd4d7c284df8ade81d2dc80f010e92753a3e406ad0"; + hash = "sha256-Esc0OuxaOz31xHJlKBsSthHybsk2e2EpGZ1n2lS3aME="; + extension = "zip"; }; + pythonImportsCheck = [ + "Crypto" + ]; + meta = with lib; { - homepage = "https://www.pycryptodome.org/"; description = "Python Cryptography Toolkit"; + homepage = "https://www.pycryptodome.org/"; + license = with licenses; [ bsd2 /* and */ asl20 ]; + maintainers = with maintainers; [ fab ]; platforms = platforms.unix; }; } From a7b57e79d7526f34e401356960b8f7b275125251 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 30 Dec 2021 21:04:57 +0100 Subject: [PATCH 034/170] python3Packages.pycryptodomex: 3.11.0 -> 3.12.0 --- .../python-modules/pycryptodomex/default.nix | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/pycryptodomex/default.nix b/pkgs/development/python-modules/pycryptodomex/default.nix index eab3a6b0bbd5..c9f622d6c699 100644 --- a/pkgs/development/python-modules/pycryptodomex/default.nix +++ b/pkgs/development/python-modules/pycryptodomex/default.nix @@ -1,23 +1,28 @@ { lib , buildPythonPackage , fetchPypi +, pycryptodome-test-vectors }: buildPythonPackage rec { pname = "pycryptodomex"; - version = "3.11.0"; + version = "3.12.0"; + format = "setuptools"; src = fetchPypi { inherit pname version; - sha256 = "0398366656bb55ebdb1d1d493a7175fc48ade449283086db254ac44c7d318d6d"; + hash = "sha256-ki6drAFm5GF+XHmA0s/2kSputctcE+fs4iJDhlC9f2Y="; + extension = "zip"; }; - pythonImportsCheck = [ "Cryptodome" ]; + pythonImportsCheck = [ + "Cryptodome" + ]; meta = with lib; { description = "A self-contained cryptographic library for Python"; homepage = "https://www.pycryptodome.org"; - license = licenses.bsd2; + license = with licenses; [ bsd2 /* and */ asl20 ]; maintainers = with maintainers; [ fab ]; }; } From da650817b8d533e71bd4ead3c5e378bd8f1e0d5a Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 29 Dec 2021 01:33:54 +0100 Subject: [PATCH 035/170] python3Packages.django-redis: 5.1.0 -> 5.2.0 Kill redis to fix the test hanging on darwin. --- pkgs/development/python-modules/django-redis/default.nix | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/django-redis/default.nix b/pkgs/development/python-modules/django-redis/default.nix index b088876b3e4a..1ad52e22d0ff 100644 --- a/pkgs/development/python-modules/django-redis/default.nix +++ b/pkgs/development/python-modules/django-redis/default.nix @@ -19,7 +19,7 @@ let pname = "django-redis"; - version = "5.1.0"; + version = "5.2.0"; in buildPythonPackage { inherit pname version; @@ -30,7 +30,7 @@ buildPythonPackage { owner = "jazzband"; repo = "django-redis"; rev = version; - sha256 = "sha256-S94qH2W5e65yzGfPxpwBUKhvvVS0Uc/zSyo66bnvzf4="; + sha256 = "sha256-e8wCgfxBT+WKFY4H83CTMirTpQym3QAoeWnXbRCDO90="; }; postPatch = '' @@ -53,6 +53,11 @@ buildPythonPackage { preCheck = '' ${pkgs.redis}/bin/redis-server & + REDIS_PID=$! + ''; + + postCheck = '' + kill $REDIS_PID ''; checkInputs = [ From 5b3ce8454a17fd6d99f16beac661e1628175117a Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 29 Dec 2021 01:38:34 +0100 Subject: [PATCH 036/170] python3Packages.packaging: 20.9 -> 21.3 --- pkgs/development/python-modules/packaging/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/packaging/default.nix b/pkgs/development/python-modules/packaging/default.nix index d76b5b1723ef..648a548e521b 100644 --- a/pkgs/development/python-modules/packaging/default.nix +++ b/pkgs/development/python-modules/packaging/default.nix @@ -10,12 +10,12 @@ buildPythonPackage rec { pname = "packaging"; - version = "20.9"; + version = "21.3"; format = "pyproject"; src = fetchPypi { inherit pname version; - sha256 = "sha256-WzJ6wTINyGPcpy9FFOzAhvMRhnRLhKIwN0zB/Xdv6uU="; + sha256 = "sha256-3UfEKSfYmrkR5gZRiQfMLTofOLvQJjhZcGQ/nFuOz+s="; }; nativeBuildInputs = [ From b4e398b9ceab7ae570ad40dc727bccd59c5cf1f0 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 29 Dec 2021 02:12:54 +0100 Subject: [PATCH 037/170] python3Packages.hiredis: drop redis dependency --- pkgs/development/python-modules/hiredis/default.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/hiredis/default.nix b/pkgs/development/python-modules/hiredis/default.nix index 00ce786b005d..eea5e5bf8043 100644 --- a/pkgs/development/python-modules/hiredis/default.nix +++ b/pkgs/development/python-modules/hiredis/default.nix @@ -1,25 +1,30 @@ { lib , buildPythonPackage , fetchPypi -, redis +, pythonOlder + +# tested using , python }: buildPythonPackage rec { pname = "hiredis"; version = "2.0.0"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; sha256 = "81d6d8e39695f2c37954d1011c0480ef7cf444d4e3ae24bc5e89ee5de360139a"; }; - propagatedBuildInputs = [ redis ]; + + pythonImportsCheck = [ "hiredis" ]; checkPhase = '' mv hiredis _hiredis ${python.interpreter} test.py ''; - pythonImportsCheck = [ "hiredis" ]; meta = with lib; { description = "Wraps protocol parsing code in hiredis, speeds up parsing of multi bulk replies"; From c79447275d34e02181d3db03047762591dd4bc13 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 29 Dec 2021 02:43:40 +0100 Subject: [PATCH 038/170] python3Packages.redis: 3.5.3 -> 4.1.0 --- .../python-modules/redis/default.nix | 41 +++++++++++++++++-- 1 file changed, 38 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/redis/default.nix b/pkgs/development/python-modules/redis/default.nix index 35109e836fa4..0731487575b1 100644 --- a/pkgs/development/python-modules/redis/default.nix +++ b/pkgs/development/python-modules/redis/default.nix @@ -1,14 +1,49 @@ -{ lib, fetchPypi, buildPythonPackage }: +{ lib +, fetchPypi +, buildPythonPackage +, pythonOlder + +# propagates +, cryptography +, deprecated +, hiredis +, importlib-metadata +, packaging +, requests +}: buildPythonPackage rec { pname = "redis"; - version = "3.5.3"; + version = "4.1.0"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "0e7e0cfca8660dea8b7d5cd8c4f6c5e29e11f31158c0b0ae91a397f00e5a05a2"; + sha256 = "sha256-IfCiO85weQkHbmuizgdsulm/9g0qsily4GR/32IP/kc="; }; + propagatedBuildInputs = [ + cryptography + deprecated + hiredis + packaging + requests + ] ++ lib.optionals (pythonOlder "3.8") [ + importlib-metadata + ]; + + pythonImportsCheck = [ + "redis" + "redis.client" + "redis.cluster" + "redis.connection" + "redis.exceptions" + "redis.sentinel" + "redis.utils" + ]; + # tests require a running redis doCheck = false; From 5c8e26550e9e073743759a39e7f5e886908b6f0a Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 29 Dec 2021 03:25:33 +0100 Subject: [PATCH 039/170] python3Packages.lz4: 3.1.10 -> 3.1.12 --- .../python-modules/lz4/default.nix | 69 +++++++++++++------ 1 file changed, 48 insertions(+), 21 deletions(-) diff --git a/pkgs/development/python-modules/lz4/default.nix b/pkgs/development/python-modules/lz4/default.nix index cc84fa75c699..9e2cc9b31e15 100644 --- a/pkgs/development/python-modules/lz4/default.nix +++ b/pkgs/development/python-modules/lz4/default.nix @@ -1,41 +1,68 @@ { lib , buildPythonPackage , fetchFromGitHub -, future -, isPy3k +, pythonOlder + +# native inputs , pkgconfig -, psutil -, pytest -, pytest-cov -, pytest-runner , setuptools-scm + +# tests +, psutil +, pytestCheckHook }: buildPythonPackage rec { pname = "python-lz4"; - version = "3.1.10"; + version = "3.1.12"; + format = "setuptools"; - # get full repository inorder to run tests + disabled = pythonOlder "3.5"; + + # get full repository in order to run tests src = fetchFromGitHub { owner = pname; repo = pname; - rev = version; - sha256 = "0a4gic8xh3simkk5k8302rxwf765pr6y63k3js79mkl983vpxcim"; + rev = "v${version}"; + sha256 = "sha256-fqt9aJGqZpfbiYtU8cmm7UQaixZwbTKFBwRfR1B/qic="; }; - nativeBuildInputs = [ setuptools-scm pkgconfig pytest-runner ]; - checkInputs = [ pytest pytest-cov psutil ]; - propagatedBuildInputs = lib.optionals (!isPy3k) [ future ]; + SETUPTOOLS_SCM_PRETEND_VERSION = version; - # give a hint to setuptools-scm on package version - preBuild = '' - export SETUPTOOLS_SCM_PRETEND_VERSION="v${version}" + postPatch = '' + sed -i '/pytest-cov/d' setup.py ''; - meta = { - description = "LZ4 Bindings for Python"; - homepage = "https://github.com/python-lz4/python-lz4"; - license = lib.licenses.bsd3; - maintainers = with lib.maintainers; [ costrouc ]; + nativeBuildInputs = [ + setuptools-scm + pkgconfig + ]; + + pythonImportsCheck = [ + "lz4" + "lz4.block" + "lz4.frame" + "lz4.stream" + ]; + + checkInputs = [ + pytestCheckHook + psutil + ]; + + # leave build directory, so the installed library gets imported + preCheck = '' + pushd tests + ''; + + postCheck = '' + popd + ''; + + meta = with lib; { + description = "LZ4 Bindings for Python"; + homepage = "https://github.com/python-lz4/python-lz4"; + license = licenses.bsd3; + maintainers = with maintainers; [ costrouc ]; }; } From 830900ff6acaed219002c037b023b1883be1374b Mon Sep 17 00:00:00 2001 From: Ryan Burns Date: Thu, 30 Dec 2021 15:29:30 -0800 Subject: [PATCH 040/170] libredirect: fix musl build --- pkgs/build-support/libredirect/libredirect.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/build-support/libredirect/libredirect.c b/pkgs/build-support/libredirect/libredirect.c index 7dac4684722f..9dde78c74922 100644 --- a/pkgs/build-support/libredirect/libredirect.c +++ b/pkgs/build-support/libredirect/libredirect.c @@ -112,7 +112,8 @@ WRAPPER(int, open)(const char * path, int flags, ...) } WRAPPER_DEF(open) -#ifndef __APPLE__ +// In musl libc, open64 is simply a macro for open +#if !defined(__APPLE__) && !defined(open64) WRAPPER(int, open64)(const char * path, int flags, ...) { int (*open64_real) (const char *, int, mode_t) = LOOKUP_REAL(open64); @@ -162,7 +163,8 @@ WRAPPER(FILE *, __nss_files_fopen)(const char * path) WRAPPER_DEF(__nss_files_fopen) #endif -#ifndef __APPLE__ +// In musl libc, fopen64 is simply a macro for fopen +#if !defined(__APPLE__) && !defined(fopen64) WRAPPER(FILE *, fopen64)(const char * path, const char * mode) { FILE * (*fopen64_real) (const char *, const char *) = LOOKUP_REAL(fopen64); From 8a8572a7c42cfc78ea12ec6b4e6883008bca7bfd Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 31 Dec 2021 05:07:59 +0000 Subject: [PATCH 041/170] graphicsmagick: 1.3.36 -> 1.3.37 --- pkgs/applications/graphics/graphicsmagick/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/graphics/graphicsmagick/default.nix b/pkgs/applications/graphics/graphicsmagick/default.nix index 268e59d910b5..fe387ddc273b 100644 --- a/pkgs/applications/graphics/graphicsmagick/default.nix +++ b/pkgs/applications/graphics/graphicsmagick/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { pname = "graphicsmagick"; - version = "1.3.36"; + version = "1.3.37"; src = fetchurl { url = "mirror://sourceforge/graphicsmagick/GraphicsMagick-${version}.tar.xz"; - sha256 = "0ilg6fkppb4avzais1dvi3qf6ln7v3mzj7gjm83w7pwwfpg3ynsx"; + sha256 = "sha256-kNwi8ae9JA5MkGWpQJYr8T2kPJm8w2yxEcw8Gg10d9Q="; }; patches = [ From e47436066458df65cb57bc82ac843433e6ace057 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Silva?= Date: Fri, 31 Dec 2021 15:52:04 +0000 Subject: [PATCH 042/170] ffmpeg: enable libzimg this is needed for the zscale video filter (http://underpop.online.fr/f/ffmpeg/help/zscale.htm.gz) --- pkgs/development/libraries/ffmpeg/generic.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 876910da6d25..2382dd64bcb7 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -1,7 +1,7 @@ { lib, stdenv, buildPackages, fetchurl, pkg-config, addOpenGLRunpath, perl, texinfo, yasm , alsa-lib, bzip2, fontconfig, freetype, gnutls, libiconv, lame, libass, libogg , libssh, libtheora, libva, libdrm, libvorbis, libvpx, xz, libpulseaudio, soxr -, x264, x265, xvidcore, zlib, libopus, speex, nv-codec-headers, dav1d +, x264, x265, xvidcore, zimg, zlib, libopus, speex, nv-codec-headers, dav1d , srt ? null , openglSupport ? false, libGLU ? null, libGL ? null , libmfxSupport ? false, intel-media-sdk ? null @@ -152,6 +152,7 @@ stdenv.mkDerivation rec { (ifMinVer "1.2" "--enable-libsoxr") "--enable-libx264" "--enable-libxvid" + "--enable-libzimg" "--enable-zlib" (ifMinVer "2.8" "--enable-libopus") "--enable-libspeex" @@ -174,7 +175,7 @@ stdenv.mkDerivation rec { buildInputs = [ bzip2 fontconfig freetype gnutls libiconv lame libass libogg libssh libtheora - libvorbis xz soxr x264 x265 xvidcore zlib libopus speex srt nv-codec-headers + libvorbis xz soxr x264 x265 xvidcore zimg zlib libopus speex srt nv-codec-headers ] ++ optionals openglSupport [ libGL libGLU ] ++ optional libmfxSupport intel-media-sdk ++ optional libaomSupport libaom From ca7077c8eb76917a64add99c4ff566be0e94dc6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Silva?= Date: Fri, 31 Dec 2021 15:53:05 +0000 Subject: [PATCH 043/170] ffmpeg-full: allow building with libzimg support --- pkgs/development/libraries/ffmpeg-full/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/ffmpeg-full/default.nix b/pkgs/development/libraries/ffmpeg-full/default.nix index 77bd473485b0..e4a5d908d263 100644 --- a/pkgs/development/libraries/ffmpeg-full/default.nix +++ b/pkgs/development/libraries/ffmpeg-full/default.nix @@ -132,6 +132,7 @@ , xavs ? null # AVS encoder , xvidcore ? null # Xvid encoder, native encoder exists , zeromq4 ? null # Message passing +, zimg ? null , zlib ? null , vulkan-loader ? null , glslang ? null @@ -403,6 +404,7 @@ stdenv.mkDerivation rec { (enableFeature (xavs != null && gplLicensing) "libxavs") (enableFeature (xvidcore != null && gplLicensing) "libxvid") (enableFeature (zeromq4 != null) "libzmq") + (enableFeature (zimg != null) "libzimg") (enableFeature (zlib != null) "zlib") (enableFeature (isLinux && vulkan-loader != null) "vulkan") (enableFeature (isLinux && vulkan-loader != null && glslang != null) "libglslang") @@ -431,7 +433,7 @@ stdenv.mkDerivation rec { libogg libopus librsvg libssh libtheora libvdpau libvorbis libvpx libwebp libX11 libxcb libXv libXext xz openal openjpeg libpulseaudio rav1e svt-av1 rtmpdump opencore-amr samba SDL2 soxr speex srt vid-stab vo-amrwbenc x264 x265 xavs xvidcore - zeromq4 zlib + zeromq4 zimg zlib ] ++ optionals openglExtlib [ libGL libGLU ] ++ optionals nonfreeLicensing [ fdk_aac openssl ] ++ optional ((isLinux || isFreeBSD) && libva != null) libva From 62e6374d5e1cecfdedd702592f09bdbb87249e5d Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Fri, 31 Dec 2021 14:49:40 +0000 Subject: [PATCH 044/170] =?UTF-8?q?pango:=201.50.0=20=E2=86=92=201.50.3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/pango/-/blob/1.50.3/NEWS#L1-21 --- pkgs/development/libraries/pango/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix index a70a19e93141..964a3640871f 100644 --- a/pkgs/development/libraries/pango/default.nix +++ b/pkgs/development/libraries/pango/default.nix @@ -24,14 +24,14 @@ stdenv.mkDerivation rec { pname = "pango"; - version = "1.50.0"; + version = "1.50.3"; outputs = [ "bin" "out" "dev" ] ++ lib.optionals withDocs [ "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "26i2Ld+G4Q9z+Tw9Ila3MjiyvK+HA3yiKbQL3AQOs/M="; + sha256 = "St0F7fUcH7N1oczedJiRQSDiPLKA3XOVsa60QfGDikw="; }; strictDeps = !withIntrospection; From 2f8438a174078840ccb8584225734480bd0f9b1e Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Fri, 31 Dec 2021 15:22:59 -0500 Subject: [PATCH 045/170] libtiff: don't depend on OpenGL on darwin libGL is bloating the closure by depending on mesa. 0a678b450040f6cd9ca7cea2800a5a247d4d3c99 ('libtiff: Disable OpenGL entirely for Darwin') b02908c2133057cc88b4465285ce2c306952526d ('libtiff: Reenable OpenGL support on Darwin') --- pkgs/development/libraries/libtiff/default.nix | 8 +------- pkgs/top-level/all-packages.nix | 4 +--- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/pkgs/development/libraries/libtiff/default.nix b/pkgs/development/libraries/libtiff/default.nix index 2fe6159556f6..5f34a80d253a 100644 --- a/pkgs/development/libraries/libtiff/default.nix +++ b/pkgs/development/libraries/libtiff/default.nix @@ -8,11 +8,6 @@ , libjpeg , xz , zlib - -, Cocoa -, GLUT -, libGL -, libGLU }: #FIXME: fix aarch64-darwin build and get rid of ./aarch64-darwin.nix @@ -52,8 +47,7 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ libjpeg xz zlib ]; #TODO: opengl support (bogus configure detection) - buildInputs = [ libdeflate ] # TODO: move all propagatedBuildInputs to buildInputs. - ++ lib.optionals (stdenv.isDarwin) [ Cocoa GLUT libGL libGLU ]; + buildInputs = [ libdeflate ]; enableParallelBuilding = true; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index df2cfac8b717..269e079d44f9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18454,9 +18454,7 @@ with pkgs; libtiff = if stdenv.isDarwin && stdenv.isAarch64 then callPackage ../development/libraries/libtiff/aarch64-darwin.nix { } - else callPackage ../development/libraries/libtiff { - inherit (darwin.apple_sdk.frameworks) Cocoa GLUT; - }; + else callPackage ../development/libraries/libtiff { }; libtiger = callPackage ../development/libraries/libtiger { }; From 34bca23464758bcb31e8bcfd4df40c700ec2ffe0 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sat, 1 Jan 2022 12:30:43 +0100 Subject: [PATCH 046/170] python3Packages.adal: enable tests --- .../python-modules/adal/default.nix | 42 +++++++++++++++---- 1 file changed, 35 insertions(+), 7 deletions(-) diff --git a/pkgs/development/python-modules/adal/default.nix b/pkgs/development/python-modules/adal/default.nix index d3826013c8ee..45c256b6647b 100644 --- a/pkgs/development/python-modules/adal/default.nix +++ b/pkgs/development/python-modules/adal/default.nix @@ -1,19 +1,47 @@ -{ lib, buildPythonPackage, fetchPypi -, requests, pyjwt, python-dateutil }: +{ lib +, buildPythonPackage +, fetchFromGitHub +, httpretty +, pyjwt +, pytestCheckHook +, python-dateutil +, requests +}: buildPythonPackage rec { pname = "adal"; version = "1.2.7"; + format = "setuptools"; - src = fetchPypi { - inherit pname version; - sha256 = "d74f45b81317454d96e982fd1c50e6fb5c99ac2223728aea8764433a39f566f1"; + src = fetchFromGitHub { + owner = "AzureAD"; + repo = "azure-activedirectory-library-for-python"; + rev = version; + hash = "sha256-HE8/P0aohoZNeMdcQVKdz6M31FMrjsd7oVytiaD0idI="; }; - propagatedBuildInputs = [ requests pyjwt python-dateutil ]; + propagatedBuildInputs = [ + pyjwt + python-dateutil + requests + ]; + + checkInputs = [ + httpretty + pytestCheckHook + ]; + + disabledTests = [ + # AssertionError: 'Mex [23 chars]tp error:... + "test_failed_request" + ]; + + pythonImportsCheck = [ + "adal" + ]; meta = with lib; { - description = "Library to make it easy for python application to authenticate to Azure Active Directory (AAD) in order to access AAD protected web resources"; + description = "Python module to authenticate to Azure Active Directory (AAD) in order to access AAD protected web resources"; homepage = "https://github.com/AzureAD/azure-activedirectory-library-for-python"; license = licenses.mit; maintainers = with maintainers; [ ]; From ee3363259c540248b1e7c1e4ad72e67054e181d5 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 22 Nov 2021 16:06:48 +0100 Subject: [PATCH 047/170] python3Packages.wrapt: enable tests --- .../python-modules/wrapt/default.nix | 28 +++++++++++++------ 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/pkgs/development/python-modules/wrapt/default.nix b/pkgs/development/python-modules/wrapt/default.nix index e567a8a672ef..b53c52d6098a 100644 --- a/pkgs/development/python-modules/wrapt/default.nix +++ b/pkgs/development/python-modules/wrapt/default.nix @@ -1,23 +1,33 @@ { lib , buildPythonPackage -, fetchPypi +, fetchFromGitHub +, pytestCheckHook }: buildPythonPackage rec { pname = "wrapt"; version = "1.13.3"; + format = "setuptools"; - # No tests in archive - doCheck = false; - - src = fetchPypi { - inherit pname version; - sha256 = "1fea9cd438686e6682271d36f3481a9f3636195578bab9ca3382e2f5f01fc185"; + src = fetchFromGitHub { + owner = "GrahamDumpleton"; + repo = pname; + rev = version; + hash = "sha256-kq3Ujkn4HzonzjuQfVnPNnQV+2Rnbr3ZfYmrnY3upxU="; }; - meta = { + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "wrapt" + ]; + + meta = with lib; { description = "Module for decorators, wrappers and monkey patching"; - license = lib.licenses.bsd2; homepage = "https://github.com/GrahamDumpleton/wrapt"; + license = licenses.bsd2; + maintainers = with maintainers; [ ]; }; } From 14996789a1803ebef231f5d7ce6193a76ac0f9b1 Mon Sep 17 00:00:00 2001 From: Moritz Angermann Date: Tue, 28 Dec 2021 11:04:36 +0800 Subject: [PATCH 048/170] Check link type based on expanded parameters So far we've ignored response files in arguments, and did not check linkType against expanded parameters. This means if we have `-static` in a @reponse-file, linkType will not be set to `-static` as we never check against the expanded arguments from response files. --- pkgs/build-support/bintools-wrapper/ld-wrapper.sh | 2 +- pkgs/build-support/cc-wrapper/cc-wrapper.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/build-support/bintools-wrapper/ld-wrapper.sh b/pkgs/build-support/bintools-wrapper/ld-wrapper.sh index 2f96480f80c1..fb01c5096d5b 100644 --- a/pkgs/build-support/bintools-wrapper/ld-wrapper.sh +++ b/pkgs/build-support/bintools-wrapper/ld-wrapper.sh @@ -30,7 +30,7 @@ expandResponseParams "$@" if [[ -n "${NIX_LINK_TYPE_@suffixSalt@:-}" ]]; then linkType=$NIX_LINK_TYPE_@suffixSalt@ else - linkType=$(checkLinkType "$@") + linkType=$(checkLinkType "${params[@]}") fi if [[ "${NIX_ENFORCE_PURITY:-}" = 1 && -n "${NIX_STORE:-}" diff --git a/pkgs/build-support/cc-wrapper/cc-wrapper.sh b/pkgs/build-support/cc-wrapper/cc-wrapper.sh index aa25de336418..1220841162c3 100644 --- a/pkgs/build-support/cc-wrapper/cc-wrapper.sh +++ b/pkgs/build-support/cc-wrapper/cc-wrapper.sh @@ -31,7 +31,7 @@ cxxLibrary=1 cInclude=1 expandResponseParams "$@" -linkType=$(checkLinkType "$@") +linkType=$(checkLinkType "${params[@]}") declare -i n=0 nParams=${#params[@]} From 0715ef59683a2f8091c7c4edceaff8d892ac1707 Mon Sep 17 00:00:00 2001 From: Winter Date: Sat, 1 Jan 2022 15:28:52 -0500 Subject: [PATCH 049/170] linux-pam: don't create dangling symlink during build --- nixos/modules/security/pam.nix | 2 +- pkgs/os-specific/linux/pam/default.nix | 12 ------------ 2 files changed, 1 insertion(+), 13 deletions(-) diff --git a/nixos/modules/security/pam.nix b/nixos/modules/security/pam.nix index 0944b36c6d19..e2026de13170 100644 --- a/nixos/modules/security/pam.nix +++ b/nixos/modules/security/pam.nix @@ -1035,7 +1035,7 @@ in setuid = true; owner = "root"; group = "root"; - source = "${pkgs.pam}/sbin/unix_chkpwd.orig"; + source = "${pkgs.pam}/sbin/unix_chkpwd"; }; }; diff --git a/pkgs/os-specific/linux/pam/default.nix b/pkgs/os-specific/linux/pam/default.nix index 12ff9f493a37..33ab4f784fcb 100644 --- a/pkgs/os-specific/linux/pam/default.nix +++ b/pkgs/os-specific/linux/pam/default.nix @@ -23,18 +23,6 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - postInstall = '' - mv -v $out/sbin/unix_chkpwd{,.orig} - ln -sv /run/wrappers/bin/unix_chkpwd $out/sbin/unix_chkpwd - ''; /* - rm -rf $out/etc - mkdir -p $modules/lib - mv $out/lib/security $modules/lib/ - '';*/ - # don't move modules, because libpam needs to (be able to) find them, - # which is done by dlopening $out/lib/security/pam_foo.so - # $out/etc was also missed: pam_env(login:session): Unable to open config file - preConfigure = lib.optionalString (stdenv.hostPlatform.libc == "musl") '' # export ac_cv_search_crypt=no # (taken from Alpine linux, apparently insecure but also doesn't build O:)) From 78ef5c72c26a02bcbf4dc012b8fe3dbd42d559c0 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Fri, 31 Dec 2021 14:43:06 +0000 Subject: [PATCH 050/170] =?UTF-8?q?gtk4:=204.4.1=20=E2=86=92=204.6.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/gtk/-/blob/4.6.0/NEWS#L1-248 --- pkgs/development/libraries/gtk/4.x.nix | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/gtk/4.x.nix b/pkgs/development/libraries/gtk/4.x.nix index d763c99882e0..99e3b9e969a9 100644 --- a/pkgs/development/libraries/gtk/4.x.nix +++ b/pkgs/development/libraries/gtk/4.x.nix @@ -6,7 +6,7 @@ , gettext , graphene , gi-docgen -, meson +, meson_0_60 , ninja , python3 , makeWrapper @@ -23,6 +23,9 @@ , xorg , libepoxy , libxkbcommon +, libpng +, libtiff +, libjpeg , libxml2 , gnome , gsettings-desktop-schemas @@ -59,7 +62,7 @@ in stdenv.mkDerivation rec { pname = "gtk4"; - version = "4.4.1"; + version = "4.6.0"; outputs = [ "out" "dev" ] ++ lib.optionals x11Support [ "devdoc" ]; outputBin = "dev"; @@ -71,14 +74,14 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk/${lib.versions.majorMinor version}/gtk-${version}.tar.xz"; - sha256 = "D6ramD3GsLxAnLNMFxPB8yZ+Z8CT+GseOxfbYQCj3fQ="; + sha256 = "eC1ZUfv9WF/J7HbAnQfijmAUxy2wAftWf/8hf7luTYw="; }; nativeBuildInputs = [ gettext gobject-introspection makeWrapper - meson + meson_0_60 ninja pkg-config python3 @@ -89,6 +92,9 @@ stdenv.mkDerivation rec { buildInputs = [ libxkbcommon + libpng + libtiff + libjpeg libepoxy isocodes ] ++ lib.optionals vulkanSupport [ @@ -130,6 +136,8 @@ stdenv.mkDerivation rec { glib graphene pango + ] ++ lib.optionals waylandSupport [ + wayland ] ++ lib.optionals vulkanSupport [ vulkan-loader ] ++ [ From 133b9618f8a58a83060301f37a2ba138d91d2b59 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Fri, 31 Dec 2021 14:57:44 +0000 Subject: [PATCH 051/170] =?UTF-8?q?gtk3:=203.24.30=20=E2=86=92=203.24.31?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/gtk/-/blob/3.24.31/NEWS#L1-71 --- 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 82bcad0b9856..d138f628f62d 100644 --- a/pkgs/development/libraries/gtk/3.x.nix +++ b/pkgs/development/libraries/gtk/3.x.nix @@ -59,7 +59,7 @@ in stdenv.mkDerivation rec { pname = "gtk+3"; - version = "3.24.30"; + version = "3.24.31"; outputs = [ "out" "dev" ] ++ lib.optional withGtkDoc "devdoc"; outputBin = "dev"; @@ -71,7 +71,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk+/${lib.versions.majorMinor version}/gtk+-${version}.tar.xz"; - sha256 = "sha256-unW//zIK0fTPvukrqBPsM2MizDxmDUBqrQFLBwh6O6k="; + sha256 = "sha256-Qjw+f9tMRZ7oieNf1Ncf0mI1YlQcEEGxHAflrR/xC/k="; }; patches = [ From 7edebd90e839ad7d5b93d9ce5d7b9cdcbde2b32b Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Fri, 31 Dec 2021 15:41:54 +0100 Subject: [PATCH 052/170] =?UTF-8?q?libadwaita:=201.0.0.alpha.4=20=E2=86=92?= =?UTF-8?q?=201.0.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://blogs.gnome.org/alexm/2021/12/31/libadwaita-1-0/ https://gitlab.gnome.org/GNOME/libadwaita/-/commit/8896cb224e7bd737b7f99bba5a10b56e89f034c4 --- pkgs/development/libraries/libadwaita/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/libadwaita/default.nix b/pkgs/development/libraries/libadwaita/default.nix index 6324a134ed88..4c11479abea4 100644 --- a/pkgs/development/libraries/libadwaita/default.nix +++ b/pkgs/development/libraries/libadwaita/default.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { pname = "libadwaita"; - version = "1.0.0.alpha.4"; + version = "1.0.0"; outputs = [ "out" "dev" "devdoc" ]; outputBin = "devdoc"; # demo app @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { owner = "GNOME"; repo = "libadwaita"; rev = version; - sha256 = "sha256-3aVeBaKSl6SaPQLodsyJHwnNOlXlWfIaLnbbl3+mlDA="; + sha256 = "sha256-ngHCYOmQ6qn55/QOjM+GSpDt3Qvyb/hTrwcTE+Kr0LY="; }; nativeBuildInputs = [ @@ -92,7 +92,7 @@ stdenv.mkDerivation rec { description = "Library to help with developing UI for mobile devices using GTK/GNOME"; homepage = "https://gitlab.gnome.org/GNOME/libadwaita"; license = licenses.lgpl21Plus; - maintainers = with maintainers; [ dotlambda ]; + maintainers = teams.gnome.members ++ (with maintainers; [ dotlambda ]); platforms = platforms.linux; }; } From 5038552e28b13e82cfbad70791275ebc313e4d25 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sat, 1 Jan 2022 23:00:49 +0100 Subject: [PATCH 053/170] =?UTF-8?q?libportal:=200.4=20=E2=86=92=200.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/flatpak/libportal/releases/tag/0.5 --- .../libraries/libportal/default.nix | 46 ++++++++++++++----- pkgs/top-level/all-packages.nix | 3 ++ 2 files changed, 38 insertions(+), 11 deletions(-) diff --git a/pkgs/development/libraries/libportal/default.nix b/pkgs/development/libraries/libportal/default.nix index 97c5303eabe7..b261c0395e6d 100644 --- a/pkgs/development/libraries/libportal/default.nix +++ b/pkgs/development/libraries/libportal/default.nix @@ -4,42 +4,66 @@ , meson , ninja , pkg-config -, gtk-doc -, docbook-xsl-nons -, docbook_xml_dtd_45 +, gobject-introspection +, vala +, gi-docgen , glib +, gtk3 +, gtk4 +, libsForQt5 +, variant ? null }: +assert variant == null || variant == "gtk3" || variant == "gtk4" || variant == "qt5"; + stdenv.mkDerivation rec { - pname = "libportal"; - version = "0.4"; + pname = "libportal" + lib.optionalString (variant != null) "-${variant}"; + version = "0.5"; outputs = [ "out" "dev" "devdoc" ]; src = fetchFromGitHub { owner = "flatpak"; - repo = pname; + repo = "libportal"; rev = version; - sha256 = "fuYZWGkdazq6H0rThqpF6KIcvwgc17o+CiISb1LjBso="; + sha256 = "oPPO2f6NNeok0SGh4jELkkOP6VUxXZiwPM/n6CUHm0Q="; }; nativeBuildInputs = [ meson ninja pkg-config - gtk-doc - docbook-xsl-nons - docbook_xml_dtd_45 + gi-docgen + ] ++ lib.optionals (variant != "qt5") [ + gobject-introspection + vala ]; propagatedBuildInputs = [ glib + ] ++ lib.optionals (variant == "gtk3") [ + gtk3 + ] ++ lib.optionals (variant == "gtk4") [ + gtk4 + ] ++ lib.optionals (variant == "qt5") [ + libsForQt5.qtbase ]; + mesonFlags = [ + "-Dbackends=${lib.optionalString (variant != null) variant}" + "-Dvapi=${if variant != "qt5" then "true" else "false"}" + "-Dintrospection=${if variant != "qt5" then "true" else "false"}" + ]; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + meta = with lib; { description = "Flatpak portal library"; homepage = "https://github.com/flatpak/libportal"; - license = licenses.lgpl2Plus; + license = licenses.lgpl3Plus; maintainers = with maintainers; [ jtojnar ]; platforms = platforms.linux; }; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 69fd1ed61946..c239c34f6ba1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7452,6 +7452,9 @@ with pkgs; libpointmatcher = callPackage ../development/libraries/libpointmatcher { }; libportal = callPackage ../development/libraries/libportal { }; + libportal-gtk3 = libportal.override { variant = "gtk3"; }; + libportal-gtk4 = libportal.override { variant = "gtk4"; }; + libportal-qt5 = libportal.override { variant = "qt5"; }; libmicrodns = callPackage ../development/libraries/libmicrodns { }; From 09e03d0544a448e92186f47c58549c37207781e9 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sat, 1 Jan 2022 22:06:14 +0100 Subject: [PATCH 054/170] =?UTF-8?q?gnome.gnome-todo:=2041.0=20=E2=86=92=20?= =?UTF-8?q?unstable-2022-01-01?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/gnome-todo/-/compare/41.0...4a6be8c38510d909a9f94ec34c4da1f31ac9f1ab --- .../gnome/apps/gnome-todo/default.nix | 23 +++++++++++-------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/pkgs/desktops/gnome/apps/gnome-todo/default.nix b/pkgs/desktops/gnome/apps/gnome-todo/default.nix index f3dde6585aeb..32eb07fbd62b 100644 --- a/pkgs/desktops/gnome/apps/gnome-todo/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-todo/default.nix @@ -1,6 +1,6 @@ { lib , stdenv -, fetchurl +, fetchFromGitLab , fetchpatch , meson , ninja @@ -16,21 +16,25 @@ , libpeas , gnome-online-accounts , gsettings-desktop-schemas -, libportal +, libportal-gtk4 , evolution-data-server , libical , librest , json-glib , itstool +, unstableGitUpdater }: stdenv.mkDerivation rec { pname = "gnome-todo"; - version = "41.0"; + version = "unstable-2022-01-01"; - src = fetchurl { - url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1r94880d4khbjhhfnhaba3y3d4hv2bri82rzfzxn27s5iybpqras"; + src = fetchFromGitLab { + domain = "gitlab.gnome.org"; + owner = "GNOME"; + repo = "gnome-todo"; + rev = "4a6be8c38510d909a9f94ec34c4da1f31ac9f1ab"; + sha256 = "5UGo9vMb8scPWK91gftYOjqkJs9tGMiH1lqyEqedF2A="; }; patches = [ @@ -64,7 +68,7 @@ stdenv.mkDerivation rec { gnome.adwaita-icon-theme # Plug-ins - libportal # background + libportal-gtk4 # background evolution-data-server # eds libical librest # todoist @@ -77,9 +81,8 @@ stdenv.mkDerivation rec { ''; passthru = { - updateScript = gnome.updateScript { - packageName = pname; - attrPath = "gnome.${pname}"; + updateScript = unstableGitUpdater { + url = "https://gitlab.gnome.org/GNOME/gnome-todo.git"; }; }; From d6c2e0eedc94c3941054e31deadd0444de1640b3 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sat, 1 Jan 2022 23:38:38 +0100 Subject: [PATCH 055/170] ashpd-demo: mark as broken --- pkgs/development/tools/ashpd-demo/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/tools/ashpd-demo/default.nix b/pkgs/development/tools/ashpd-demo/default.nix index 9e24309d984a..a52a6ca8179b 100644 --- a/pkgs/development/tools/ashpd-demo/default.nix +++ b/pkgs/development/tools/ashpd-demo/default.nix @@ -86,6 +86,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Tool for playing with XDG desktop portals"; homepage = "https://github.com/bilelmoussaoui/ashpd/tree/master/ashpd-demo"; + broken = true; # requires older libadwaita license = licenses.mit; maintainers = with maintainers; [ jtojnar ]; platforms = platforms.linux; From b39268ac535c55c39198d654814febf92dd50181 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 2 Jan 2022 00:13:42 +0100 Subject: [PATCH 056/170] kooha: fix pkg-config finding libadwaita meson.build:17:0: ERROR: Invalid version of dependency, need 'libadwaita-1' ['>= 1.0.0-alpha.1'] found '1.0.0'. --- pkgs/applications/video/kooha/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/applications/video/kooha/default.nix b/pkgs/applications/video/kooha/default.nix index f5be86647390..667dfd83d2cf 100644 --- a/pkgs/applications/video/kooha/default.nix +++ b/pkgs/applications/video/kooha/default.nix @@ -68,6 +68,7 @@ stdenv.mkDerivation rec { # Fixes https://github.com/NixOS/nixpkgs/issues/31168 postPatch = '' patchShebangs build-aux/meson_post_install.py + substituteInPlace meson.build --replace '>= 1.0.0-alpha.1' '>= 1.0.0' ''; installCheckPhase = '' From d8ce0727e4d9cf25d9a4b21a5ae1344f9e3d34f6 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 2 Jan 2022 00:36:50 +0100 Subject: [PATCH 057/170] shortwave: mark as broken Crashes at runtime: (de.haeckerfelix.Shortwave:347903): Gtk-ERROR **: 00:33:56.355: failed to add UI from resource /de/haeckerfelix/Shortwave/gtk/featured_carousel.ui: .:12:50 Invalid property: AdwCarousel.animation_duration --- pkgs/applications/audio/shortwave/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/applications/audio/shortwave/default.nix b/pkgs/applications/audio/shortwave/default.nix index 0f4ffa14228f..49492d05d15f 100644 --- a/pkgs/applications/audio/shortwave/default.nix +++ b/pkgs/applications/audio/shortwave/default.nix @@ -80,6 +80,7 @@ stdenv.mkDerivation rec { desktop. It is the successor to the older Gradio application. ''; maintainers = with maintainers; [ lasandell ]; + broken = true; # incompatible with latest libadwaita license = licenses.gpl3Plus; platforms = platforms.linux; }; From 9820587b93c0df6985965ccccec330f72e2fa0a2 Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Sat, 1 Jan 2022 19:09:59 -0500 Subject: [PATCH 058/170] qt5.qtbase: build without GTK support on darwin --- pkgs/development/libraries/qt-5/5.12/default.nix | 2 +- pkgs/development/libraries/qt-5/5.14/default.nix | 2 +- pkgs/development/libraries/qt-5/5.15/default.nix | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/qt-5/5.12/default.nix b/pkgs/development/libraries/qt-5/5.12/default.nix index c40062046658..fa1705ed077f 100644 --- a/pkgs/development/libraries/qt-5/5.12/default.nix +++ b/pkgs/development/libraries/qt-5/5.12/default.nix @@ -148,7 +148,7 @@ let inherit (srcs.qtbase) src version; patches = patches.qtbase; inherit bison cups harfbuzz libGL; - withGtk3 = true; inherit dconf gtk3; + withGtk3 = !stdenv.isDarwin; inherit dconf gtk3; inherit debug developerBuild decryptSslTraffic; inherit (darwin.apple_sdk.frameworks) AGL AppKit ApplicationServices Carbon Cocoa CoreAudio CoreBluetooth CoreLocation CoreServices DiskArbitration Foundation OpenGL MetalKit IOKit; diff --git a/pkgs/development/libraries/qt-5/5.14/default.nix b/pkgs/development/libraries/qt-5/5.14/default.nix index ddd9d76df4ea..c72a2a3cf8e5 100644 --- a/pkgs/development/libraries/qt-5/5.14/default.nix +++ b/pkgs/development/libraries/qt-5/5.14/default.nix @@ -149,7 +149,7 @@ let inherit (srcs.qtbase) src version; patches = patches.qtbase; inherit bison cups harfbuzz libGL; - withGtk3 = true; inherit dconf gtk3; + withGtk3 = !stdenv.isDarwin; inherit dconf gtk3; inherit debug developerBuild decryptSslTraffic; inherit (darwin.apple_sdk.frameworks) AGL AppKit ApplicationServices Carbon Cocoa CoreAudio CoreBluetooth CoreLocation CoreServices DiskArbitration Foundation OpenGL MetalKit IOKit; diff --git a/pkgs/development/libraries/qt-5/5.15/default.nix b/pkgs/development/libraries/qt-5/5.15/default.nix index 7c4845fd84a6..7502c085feb1 100644 --- a/pkgs/development/libraries/qt-5/5.15/default.nix +++ b/pkgs/development/libraries/qt-5/5.15/default.nix @@ -111,7 +111,7 @@ let inherit (srcs.qtbase) src version; patches = patches.qtbase; inherit bison cups harfbuzz libGL; - withGtk3 = true; inherit dconf gtk3; + withGtk3 = !stdenv.isDarwin; inherit dconf gtk3; inherit developerBuild decryptSslTraffic; inherit (darwin.apple_sdk.frameworks) AGL AppKit ApplicationServices Carbon Cocoa CoreAudio CoreBluetooth CoreLocation CoreServices DiskArbitration Foundation OpenGL MetalKit IOKit; From 09d521943434c41731efd440e4fa9c3c4c1449c1 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sat, 1 Jan 2022 10:00:22 +0800 Subject: [PATCH 059/170] notejot: 3.2.0 -> 3.3.3 (tagged 3.4.9) --- pkgs/applications/misc/notejot/default.nix | 24 ++++++++++++------- .../notejot/use-gtk4-update-icon-cache.patch | 20 ---------------- 2 files changed, 15 insertions(+), 29 deletions(-) delete mode 100644 pkgs/applications/misc/notejot/use-gtk4-update-icon-cache.patch diff --git a/pkgs/applications/misc/notejot/default.nix b/pkgs/applications/misc/notejot/default.nix index aad182bd1875..245254439355 100644 --- a/pkgs/applications/misc/notejot/default.nix +++ b/pkgs/applications/misc/notejot/default.nix @@ -17,21 +17,27 @@ stdenv.mkDerivation rec { pname = "notejot"; - version = "3.2.0"; + version = "3.3.3"; # make sure to recheck src.rev src = fetchFromGitHub { owner = "lainsce"; repo = pname; - rev = version; - hash = "sha256-WyW1tGhO3+OykNa8BRavi93cBMOSBJw0M+0bwQHJOjU="; + # Note from Fedora spec file: + # https://src.fedoraproject.org/rpms/notejot/blob/bbe621cef4d5a2c27eed029063b8e8cfd7c8d400/f/notejot.spec + # Upstream confusingly made several bugfix post-releases of version 3.3.3, + # tagged as 3.4.x, but with prominent notices like "This is still 3.3.3". We + # respect upstream’s wishes (and the version numbers inside the source tarball) + # by packaging these releases as 3.3.3 with appropriate snapshot info. + # https://github.com/lainsce/notejot/releases/tag/3.4.9 + # + # Note that sometimes upstream don't update their version in meson.build + # (https://github.com/lainsce/notejot/issues/236), always follow the version + # from Fedora Rawhide. + # https://github.com/lainsce/notejot/blob/3.4.9/meson.build#L1 + rev = "3.4.9"; + hash = "sha256-42k9CAnXAb7Ic580SIa95MDCkCWtso1F+0eD69HX8WI="; }; - patches = [ - # build: use gtk4-update-icon-cache - # https://github.com/lainsce/notejot/pull/307 - ./use-gtk4-update-icon-cache.patch - ]; - nativeBuildInputs = [ meson ninja diff --git a/pkgs/applications/misc/notejot/use-gtk4-update-icon-cache.patch b/pkgs/applications/misc/notejot/use-gtk4-update-icon-cache.patch deleted file mode 100644 index 9431c43cef69..000000000000 --- a/pkgs/applications/misc/notejot/use-gtk4-update-icon-cache.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff --git a/build-aux/post_install.py b/build-aux/post_install.py -index 1278304..fface6d 100644 ---- a/build-aux/post_install.py -+++ b/build-aux/post_install.py -@@ -2,11 +2,13 @@ - import os - import subprocess - --schemadir = os.path.join(os.environ['MESON_INSTALL_PREFIX'], 'share', 'glib-2.0', 'schemas') -+install_prefix = os.environ['MESON_INSTALL_PREFIX'] -+icondir = os.path.join(install_prefix, 'share', 'icons', 'hicolor') -+schemadir = os.path.join(install_prefix, 'share', 'glib-2.0', 'schemas') - - if not os.environ.get('DESTDIR'): - print('Compiling gsettings schemas…') - subprocess.call(['glib-compile-schemas', schemadir], shell=False) - - print('Rebuilding desktop icons cache...') -- subprocess.call(['gtk-update-icon-cache', '/usr/share/icons/hicolor/'], shell=False) -+ subprocess.call(['gtk4-update-icon-cache', '-qtf', icondir], shell=False) From fba0c3293b1abe1f51b10f4fff09d7295a206d91 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 2 Jan 2022 07:46:14 +0000 Subject: [PATCH 060/170] openblas: 0.3.18 -> 0.3.19 --- pkgs/development/libraries/science/math/openblas/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix index 0fc00efcff0a..490d6d7b041c 100644 --- a/pkgs/development/libraries/science/math/openblas/default.nix +++ b/pkgs/development/libraries/science/math/openblas/default.nix @@ -129,7 +129,7 @@ let in stdenv.mkDerivation rec { pname = "openblas"; - version = "0.3.18"; + version = "0.3.19"; outputs = [ "out" "dev" ]; @@ -137,7 +137,7 @@ stdenv.mkDerivation rec { owner = "xianyi"; repo = "OpenBLAS"; rev = "v${version}"; - sha256 = "sha256-b5i52rjsH65qAIlYGXQrzVxChi8/fwbD4eJTrxVq7Z8="; + sha256 = "sha256-EqA6oFM2theuvvuDOWeOx0Bv6AEFffmpWHJBzp23br0="; }; inherit blas64; From 17dbf56cea00eb47fa77ab1efbce75faef4b505c Mon Sep 17 00:00:00 2001 From: Mark Vainomaa Date: Mon, 27 Dec 2021 20:32:48 +0200 Subject: [PATCH 061/170] libpulseaudio: fix aarch64-darwin build Removes darwin Libc buildInput, which does not appear to be needed on x86_64, and which does not support aarch64 at all (too old) --- pkgs/servers/pulseaudio/default.nix | 6 ++---- pkgs/top-level/all-packages.nix | 1 - 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/pkgs/servers/pulseaudio/default.nix b/pkgs/servers/pulseaudio/default.nix index f8eecf491693..664d9ef9f753 100644 --- a/pkgs/servers/pulseaudio/default.nix +++ b/pkgs/servers/pulseaudio/default.nix @@ -26,7 +26,7 @@ , # Whether to build only the library. libOnly ? false -, AudioUnit, Cocoa, CoreServices, Libc +, AudioUnit, Cocoa, CoreServices }: stdenv.mkDerivation rec { @@ -49,7 +49,7 @@ stdenv.mkDerivation rec { buildInputs = [ libtool libsndfile soxr speexdsp fftwFloat ] ++ lib.optionals stdenv.isLinux [ glib dbus ] - ++ lib.optionals stdenv.isDarwin [ AudioUnit Cocoa CoreServices Libc ] + ++ lib.optionals stdenv.isDarwin [ AudioUnit Cocoa CoreServices ] ++ lib.optionals (!libOnly) ( [ libasyncns webrtc-audio-processing ] ++ lib.optional jackaudioSupport libjack2 @@ -101,8 +101,6 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I${Libc}"; - installFlags = [ "sysconfdir=${placeholder "out"}/etc" "pulseconfdir=${placeholder "out"}/etc/pulse" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 048e3f95e384..8f64d27b5912 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21352,7 +21352,6 @@ with pkgs; }; pulseaudio = callPackage ../servers/pulseaudio ({ - inherit (darwin) Libc; inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit Cocoa; } // lib.optionalAttrs stdenv.isDarwin { # Default autoreconfHook (2.70) fails on darwin, From 50dd556b4f2f8ecad2480e5b2cd8ed40a57f62a8 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 2 Jan 2022 17:01:47 +0100 Subject: [PATCH 062/170] gcolor3: fix build --- pkgs/applications/graphics/gcolor3/default.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/graphics/gcolor3/default.nix b/pkgs/applications/graphics/gcolor3/default.nix index 2771559416bf..63725b97431b 100644 --- a/pkgs/applications/graphics/gcolor3/default.nix +++ b/pkgs/applications/graphics/gcolor3/default.nix @@ -6,7 +6,7 @@ , pkg-config , libxml2 , gtk3 -, libportal +, libportal-gtk3 , wrapGAppsHook }: @@ -33,12 +33,16 @@ stdenv.mkDerivation rec { buildInputs = [ gtk3 - libportal + libportal-gtk3 ]; postPatch = '' chmod +x meson_install.sh # patchShebangs requires executable file patchShebangs meson_install.sh + + # https://gitlab.gnome.org/World/gcolor3/merge_requests/151 + substituteInPlace meson.build --replace "dependency(${"\n"} 'libportal'" "dependency(${"\n"} 'libportal-gtk3'" + substituteInPlace src/gcolor3-color-selection.c --replace "libportal/portal-gtk3.h" "libportal-gtk3/portal-gtk3.h" ''; meta = with lib; { From 7ad378b30dc939aa9cdebf90a6cb9e6b51a0d469 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 2 Jan 2022 17:07:08 +0100 Subject: [PATCH 063/170] gnome.eog: fix build --- pkgs/desktops/gnome/core/eog/default.nix | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome/core/eog/default.nix b/pkgs/desktops/gnome/core/eog/default.nix index 620f7e7d9c13..cdde96ae43b9 100644 --- a/pkgs/desktops/gnome/core/eog/default.nix +++ b/pkgs/desktops/gnome/core/eog/default.nix @@ -1,5 +1,6 @@ { lib, stdenv , fetchurl +, fetchpatch , meson , ninja , gettext @@ -8,7 +9,7 @@ , libxml2 , libjpeg , libpeas -, libportal +, libportal-gtk3 , gnome , gtk3 , glib @@ -35,6 +36,15 @@ stdenv.mkDerivation rec { sha256 = "sha256-huG5ujnaz3QiavpFermDtBJTuJ9he/VBOcrQiS0C2Kk="; }; + patches = [ + # Fix build with latest libportal + # https://gitlab.gnome.org/GNOME/eog/-/merge_requests/115 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/eog/-/commit/a06e6325907e136678b0bbe7058c25d688034afd.patch"; + sha256 = "ttcsfHubfmIbxA51YLnxXDagLLNutXYmoQyMQ4sHRak="; + }) + ]; + nativeBuildInputs = [ meson ninja @@ -49,7 +59,7 @@ stdenv.mkDerivation rec { buildInputs = [ libjpeg - libportal + libportal-gtk3 gtk3 gdk-pixbuf glib From dd166870fef1d5f6a825af51d55135a9eca767d9 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 2 Jan 2022 17:21:11 +0100 Subject: [PATCH 064/170] epiphany: fix build --- pkgs/desktops/gnome/core/epiphany/default.nix | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome/core/epiphany/default.nix b/pkgs/desktops/gnome/core/epiphany/default.nix index 0baab20acec9..eb8caa4f1eff 100644 --- a/pkgs/desktops/gnome/core/epiphany/default.nix +++ b/pkgs/desktops/gnome/core/epiphany/default.nix @@ -12,7 +12,7 @@ , wrapGAppsHook , gnome , pantheon -, libportal +, libportal-gtk3 , libxml2 , libxslt , itstool @@ -65,6 +65,13 @@ stdenv.mkDerivation rec { url = "https://raw.githubusercontent.com/elementary/browser/cc17559a7ac6effe593712b4f3d0bbefde6e3b62/navigation-buttons.patch"; sha256 = "sha256-G1/JUjn/8DyO9sgL/5Kq205KbTOs4EMi4Vf3cJ8FHXU="; }) + ] ++ [ + # Fix build with latest libportal + # https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1051 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/epiphany/-/commit/84474398f6e59266b73170838219aa896729ce93.patch"; + sha256 = "SeiLTo3FcOxuml5sJX9GqyGdyGf1jm1A76SOI0JJvoo="; + }) ]; nativeBuildInputs = [ @@ -100,7 +107,7 @@ stdenv.mkDerivation rec { json-glib libdazzle libhandy - libportal + libportal-gtk3 libnotify libarchive libsecret From 8b72976055c4d51647057917e7f71ddb02140f7b Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 2 Jan 2022 17:24:06 +0100 Subject: [PATCH 065/170] gnome-builder: fix build --- .../applications/editors/gnome-builder/default.nix | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/gnome-builder/default.nix b/pkgs/applications/editors/gnome-builder/default.nix index d9092b550117..0e2ffe46d208 100644 --- a/pkgs/applications/editors/gnome-builder/default.nix +++ b/pkgs/applications/editors/gnome-builder/default.nix @@ -5,6 +5,7 @@ , appstream-glib , desktop-file-utils , fetchurl +, fetchpatch , flatpak , gnome , libgit2-glib @@ -18,7 +19,7 @@ , jsonrpc-glib , libdazzle , libpeas -, libportal +, libportal-gtk3 , libxml2 , meson , ninja @@ -48,6 +49,15 @@ stdenv.mkDerivation rec { sha256 = "4iUPyOnp8gAsRS5ZUNgmhXNNPESAs1Fnq1CKyHAlCeE="; }; + patches = [ + # Fix build with latest libportal + # https://gitlab.gnome.org/GNOME/gnome-builder/-/merge_requests/486 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gnome-builder/-/commit/b3bfa0df53a3749c3b73cb6c4bad5cab3fa549a1.patch"; + sha256 = "B/uCcYavFvOAPhLHZ4MRNENDd6VytILiGYwDZRUSxTE="; + }) + ]; + nativeBuildInputs = [ appstream-glib desktop-file-utils @@ -69,7 +79,7 @@ stdenv.mkDerivation rec { glade libgit2-glib libpeas - libportal + libportal-gtk3 vte gspell gtk3 From bb54aca6887399e0819673fde81aa9189a18e4b5 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 2 Jan 2022 17:24:23 +0100 Subject: [PATCH 066/170] gnome.nautilus: fix build --- pkgs/desktops/gnome/core/nautilus/default.nix | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome/core/nautilus/default.nix b/pkgs/desktops/gnome/core/nautilus/default.nix index 4f7df313ad52..3e45e616f4c6 100644 --- a/pkgs/desktops/gnome/core/nautilus/default.nix +++ b/pkgs/desktops/gnome/core/nautilus/default.nix @@ -1,5 +1,6 @@ { lib, stdenv , fetchurl +, fetchpatch , meson , ninja , pkg-config @@ -10,7 +11,7 @@ , wrapGAppsHook , gtk3 , libhandy -, libportal +, libportal-gtk3 , gnome , gnome-autoar , glib-networking @@ -52,6 +53,17 @@ stdenv.mkDerivation rec { src = ./fix-paths.patch; inherit tracker; }) + + # Fix build with latest libportal + # https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/749 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/nautilus/-/commit/55cfd66ccca391fc144f5863ff6bfc1f3b137e2d.patch"; + sha256 = "xSb9l7xxEYpAwmdmeWT/t7Z9Ck3DPtsODzbReQW/Q70="; + excludes = [ + "build-aux/flatpak/org.gnome.Nautilus.json" + "build-aux/flatpak/org.gnome.Nautilus.yml" + ]; + }) ]; nativeBuildInputs = [ @@ -76,7 +88,7 @@ stdenv.mkDerivation rec { gst_all_1.gst-plugins-base gtk3 libhandy - libportal + libportal-gtk3 libexif libnotify libseccomp From 281f4c06cebcd279cb1e33b4dbade3d73fb0f748 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sat, 1 Jan 2022 23:02:47 +0000 Subject: [PATCH 067/170] libseccomp: 2.5.2 -> 2.5.3 While at it added trivial updater plumbing. --- pkgs/development/libraries/libseccomp/default.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/libseccomp/default.nix b/pkgs/development/libraries/libseccomp/default.nix index 0a76e59e5b7c..d0e8bd163ddd 100644 --- a/pkgs/development/libraries/libseccomp/default.nix +++ b/pkgs/development/libraries/libseccomp/default.nix @@ -1,12 +1,12 @@ -{ lib, stdenv, fetchurl, getopt, util-linux, gperf }: +{ lib, stdenv, fetchurl, getopt, util-linux, gperf, nix-update-script }: stdenv.mkDerivation rec { pname = "libseccomp"; - version = "2.5.2"; + version = "2.5.3"; src = fetchurl { url = "https://github.com/seccomp/libseccomp/releases/download/v${version}/libseccomp-${version}.tar.gz"; - sha256 = "sha256-F6ZS37SR2Wvok5YOm3kZFJNu4WwTt3ejyvVi/kjLh98="; + sha256 = "sha256-WQZchzM2RyXpchukjDqZu8Uq+SHa9I30seAS+8exCnY="; }; outputs = [ "out" "lib" "dev" "man" "pythonsrc" ]; @@ -31,6 +31,12 @@ stdenv.mkDerivation rec { tar -zcf $pythonsrc --mtime="@$SOURCE_DATE_EPOCH" --sort=name --transform s/tmp-pythonsrc/python-foundationdb/ ./tmp-pythonsrc/ ''; + passthru = { + updateScript = nix-update-script { + attrPath = pname; + }; + }; + meta = with lib; { description = "High level library for the Linux Kernel seccomp filter"; homepage = "https://github.com/seccomp/libseccomp"; From 44a8aff836cb5bc9bcc571c80df27d7cfde7e432 Mon Sep 17 00:00:00 2001 From: Rasmus Thomsen Date: Sun, 2 Jan 2022 20:27:04 +0100 Subject: [PATCH 068/170] libadwaita 1.0.0 -> 1.0.1 --- pkgs/development/libraries/libadwaita/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libadwaita/default.nix b/pkgs/development/libraries/libadwaita/default.nix index 4c11479abea4..3798923c71fc 100644 --- a/pkgs/development/libraries/libadwaita/default.nix +++ b/pkgs/development/libraries/libadwaita/default.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { pname = "libadwaita"; - version = "1.0.0"; + version = "1.0.1"; outputs = [ "out" "dev" "devdoc" ]; outputBin = "devdoc"; # demo app @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { owner = "GNOME"; repo = "libadwaita"; rev = version; - sha256 = "sha256-ngHCYOmQ6qn55/QOjM+GSpDt3Qvyb/hTrwcTE+Kr0LY="; + sha256 = "sha256-2+elMEZwDPWkPDrmvLH5rxulh1tq6fgsMhbTdbrWe54="; }; nativeBuildInputs = [ From a9b581521af87a4a1c979f59a2df72a482bbe3e7 Mon Sep 17 00:00:00 2001 From: Rasmus Thomsen Date: Wed, 22 Dec 2021 15:17:59 +0100 Subject: [PATCH 069/170] pangomm: 2.48.2 -> 2.50.0 --- pkgs/development/libraries/pangomm/2.48.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/pangomm/2.48.nix b/pkgs/development/libraries/pangomm/2.48.nix index f3fa6acec736..cdc644ec9cd9 100644 --- a/pkgs/development/libraries/pangomm/2.48.nix +++ b/pkgs/development/libraries/pangomm/2.48.nix @@ -14,13 +14,13 @@ stdenv.mkDerivation rec { pname = "pangomm"; - version= "2.48.2"; + version= "2.50.0"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-4ddVIsU/RieZh1zSR/m0nJHO1LGr5oOHrDWycTktTqU="; + sha256 = "sha256-onqnfgF7mvzp51HYW9HPiQq7s6WL9Z0PrJF+74LbO1s="; }; nativeBuildInputs = [ From 088277aafba9c94c3e311a1b712b7426b447d916 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 2 Jan 2022 22:25:18 +0000 Subject: [PATCH 070/170] zstd: 1.5.0 -> 1.5.1 (#153103) While at it added trivial updater plumbing. --- pkgs/tools/compression/zstd/default.nix | 17 +++++++++-------- .../compression/zstd/playtests-darwin.patch | 9 ++++++++- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/pkgs/tools/compression/zstd/default.nix b/pkgs/tools/compression/zstd/default.nix index 1f9b4a505ac4..a3184f6d1ede 100644 --- a/pkgs/tools/compression/zstd/default.nix +++ b/pkgs/tools/compression/zstd/default.nix @@ -7,17 +7,18 @@ # these need to be ran on the host, thus disable when cross-compiling , buildContrib ? stdenv.hostPlatform == stdenv.buildPlatform , doCheck ? stdenv.hostPlatform == stdenv.buildPlatform +, nix-update-script }: stdenv.mkDerivation rec { pname = "zstd"; - version = "1.5.0"; + version = "1.5.1"; src = fetchFromGitHub { owner = "facebook"; repo = "zstd"; rev = "v${version}"; - sha256 = "0icc0x89c35rq5bxd4d241vqxnz2i1qj2wwy01xls63p0z93brj7"; + sha256 = "sha256-D9+kuIjPYnmg5ht/ezIeYCpyiLkrtdiH3fwpmemIPGM="; }; nativeBuildInputs = [ cmake ] @@ -28,12 +29,6 @@ stdenv.mkDerivation rec { # This patches makes sure we do not attempt to use the MD5 implementation # of the host platform when running the tests ./playtests-darwin.patch - - # Fixes linking for static builds - (fetchpatch { - url = "https://github.com/facebook/zstd/pull/2724/commits/e1f85dbca3a0ed5ef06c8396912a0914db8dea6a.patch"; - sha256 = "sha256-PuYAqnJWAE+L9bsroOnnBGJhERW8LHrGSLtIEkKU9vg="; - }) ]; postPatch = lib.optionalString (!static) '' @@ -90,6 +85,12 @@ stdenv.mkDerivation rec { ++ lib.optional stdenv.hostPlatform.isUnix "man" ++ [ "out" ]; + passthru = { + updateScript = nix-update-script { + attrPath = pname; + }; + }; + meta = with lib; { description = "Zstandard real-time compression algorithm"; longDescription = '' diff --git a/pkgs/tools/compression/zstd/playtests-darwin.patch b/pkgs/tools/compression/zstd/playtests-darwin.patch index bcb895a697ca..454489a24a12 100644 --- a/pkgs/tools/compression/zstd/playtests-darwin.patch +++ b/pkgs/tools/compression/zstd/playtests-darwin.patch @@ -1,6 +1,6 @@ --- a/tests/playTests.sh +++ b/tests/playTests.sh -@@ -112,22 +112,12 @@ case "$OS" in +@@ -112,29 +112,19 @@ case "$OS" in esac case "$UNAME" in @@ -16,6 +16,13 @@ - Darwin | FreeBSD | OpenBSD | NetBSD) MTIME="stat -f %m" ;; -esac + assertSameMTime() { + MT1=$($MTIME "$1") + MT2=$($MTIME "$2") + echo MTIME $MT1 $MT2 + [ "$MT1" = "$MT2" ] || die "mtime on $1 doesn't match mtime on $2 ($MT1 != $MT2)" + } + GET_PERMS="stat -c %a" -case "$UNAME" in - Darwin | FreeBSD | OpenBSD | NetBSD) GET_PERMS="stat -f %Lp" ;; From 438c50890a0ef903d5765182027991b21ba1d892 Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Fri, 31 Dec 2021 15:39:01 -0500 Subject: [PATCH 071/170] libepoxy: disable glx on darwin by default Originally enabled in 950261bb9a4bcc1ae959b76e8ee0f1c52819c304 ('darwin: fix gtk+3 dependencies') since then many dependencies may have been changed to rely on Cocoa only. Let's try disabling it by default to avoid the mesa dependency on darwin, we can always enable on a case-by-case basis for apps that really use X11. --- pkgs/development/libraries/gtk/3.x.nix | 2 +- pkgs/development/libraries/gtk/4.x.nix | 2 +- pkgs/development/libraries/libepoxy/default.nix | 9 +++++---- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/gtk/3.x.nix b/pkgs/development/libraries/gtk/3.x.nix index d138f628f62d..02443619b260 100644 --- a/pkgs/development/libraries/gtk/3.x.nix +++ b/pkgs/development/libraries/gtk/3.x.nix @@ -104,7 +104,7 @@ stdenv.mkDerivation rec { buildInputs = [ libxkbcommon - libepoxy + (libepoxy.override { inherit x11Support; }) isocodes ] ++ lib.optionals stdenv.isDarwin [ AppKit diff --git a/pkgs/development/libraries/gtk/4.x.nix b/pkgs/development/libraries/gtk/4.x.nix index 99e3b9e969a9..d87c9a700e68 100644 --- a/pkgs/development/libraries/gtk/4.x.nix +++ b/pkgs/development/libraries/gtk/4.x.nix @@ -95,7 +95,7 @@ stdenv.mkDerivation rec { libpng libtiff libjpeg - libepoxy + (libepoxy.override { inherit x11Support; }) isocodes ] ++ lib.optionals vulkanSupport [ vulkan-headers diff --git a/pkgs/development/libraries/libepoxy/default.nix b/pkgs/development/libraries/libepoxy/default.nix index bb6d6a14232f..c54c3c86d232 100644 --- a/pkgs/development/libraries/libepoxy/default.nix +++ b/pkgs/development/libraries/libepoxy/default.nix @@ -10,6 +10,7 @@ , libX11 , Carbon , OpenGL +, x11Support ? !stdenv.isDarwin }: let @@ -40,7 +41,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ meson ninja pkg-config utilmacros python3 ]; - buildInputs = [ + buildInputs = lib.optionals x11Support [ libGL libX11 ] ++ lib.optionals stdenv.isDarwin [ @@ -50,10 +51,10 @@ stdenv.mkDerivation rec { mesonFlags = [ "-Dtests=${if doCheck then "true" else "false"}" - ] - ++ optional stdenv.isDarwin "-Dglx=yes"; + "-Dglx=${if x11Support then "yes" else "no"}" + ]; - NIX_CFLAGS_COMPILE = ''-DLIBGL_PATH="${getLib libGL}/lib"''; + NIX_CFLAGS_COMPILE = lib.optionalString x11Support ''-DLIBGL_PATH="${getLib libGL}/lib"''; # cgl_epoxy_api fails in darwin sandbox and on Hydra (because it's headless?) preCheck = lib.optionalString stdenv.isDarwin '' From ad1d385e0eb443097e9c5cfb3dcc1099d1848363 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 31 Dec 2021 20:22:57 +0000 Subject: [PATCH 072/170] vala: 0.54.3 -> 0.54.5 --- 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 f446251fd328..4e21c100eccf 100644 --- a/pkgs/development/compilers/vala/default.nix +++ b/pkgs/development/compilers/vala/default.nix @@ -114,8 +114,8 @@ in rec { }; vala_0_54 = generic { - version = "0.54.3"; - sha256 = "7R1f5MvAzShF0N5PH/77Fa+waJLSMMfMppV4FnLo+2A="; + version = "0.54.5"; + sha256 = "ACjaFoXe3KmTeSv7X0YNtbpUjJqkQyOxiZ9zOokSFYc="; }; vala = vala_0_54; From c6f7ec4c2a6b2910f53d083fd2a8d191d72758ac Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sun, 2 Jan 2022 21:21:58 +0100 Subject: [PATCH 073/170] python3Packages.attrs: 21.2.0 -> 21.4.0 --- pkgs/development/python-modules/attrs/default.nix | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/attrs/default.nix b/pkgs/development/python-modules/attrs/default.nix index 08730e3d689e..4b10f4203e8b 100644 --- a/pkgs/development/python-modules/attrs/default.nix +++ b/pkgs/development/python-modules/attrs/default.nix @@ -6,14 +6,17 @@ buildPythonPackage rec { pname = "attrs"; - version = "21.2.0"; + version = "21.4.0"; src = fetchPypi { inherit pname version; - sha256 = "ef6aaac3ca6cd92904cdd0d83f629a15f18053ec84e6432106f7a4d04ae4f5fb"; + hash = "sha256-YmuoI0IR25joad92IwoTfExAoS1yRFxF1fW3FvB24v0="; }; - outputs = [ "out" "testout" ]; + outputs = [ + "out" + "testout" + ]; postInstall = '' # Install tests as the tests output. @@ -21,7 +24,9 @@ buildPythonPackage rec { cp -R tests $testout/tests ''; - pythonImportsCheck = [ "attr" ]; + pythonImportsCheck = [ + "attr" + ]; # pytest depends on attrs, so we can't do this out-of-the-box. # Instead, we do this as a passthru.tests test. @@ -35,5 +40,6 @@ buildPythonPackage rec { description = "Python attributes without boilerplate"; homepage = "https://github.com/hynek/attrs"; license = licenses.mit; + maintainers = with maintainers; [ ]; }; } From c58517aeed3ee840a0d92455e4f4231f2396d73f Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Mon, 3 Jan 2022 15:40:39 +0100 Subject: [PATCH 074/170] llvmPackages_*.clang: stop passing LLVM_CONFIG_PATH unnecessarily Starting with LLVM 8, clang does no longer use llvm-config to detect the LLVM installation: https://github.com/llvm/llvm-project/commit/e4faa5c7986b7 Consequently, there is no point passing LLVM_CONFIG_PATH (in fact the variable is unused currently). --- pkgs/development/compilers/llvm/10/clang/default.nix | 1 - pkgs/development/compilers/llvm/11/clang/default.nix | 1 - pkgs/development/compilers/llvm/12/clang/default.nix | 1 - pkgs/development/compilers/llvm/13/clang/default.nix | 1 - pkgs/development/compilers/llvm/8/clang/default.nix | 1 - pkgs/development/compilers/llvm/9/clang/default.nix | 1 - pkgs/development/compilers/llvm/git/clang/default.nix | 1 - 7 files changed, 7 deletions(-) diff --git a/pkgs/development/compilers/llvm/10/clang/default.nix b/pkgs/development/compilers/llvm/10/clang/default.nix index b42f40b96943..5336e4ea35a3 100644 --- a/pkgs/development/compilers/llvm/10/clang/default.nix +++ b/pkgs/development/compilers/llvm/10/clang/default.nix @@ -29,7 +29,6 @@ let "-DCMAKE_CXX_FLAGS=-std=c++14" "-DCLANGD_BUILD_XPC=OFF" "-DLLVM_ENABLE_RTTI=ON" - "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}" ] ++ lib.optionals enableManpages [ "-DCLANG_INCLUDE_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" diff --git a/pkgs/development/compilers/llvm/11/clang/default.nix b/pkgs/development/compilers/llvm/11/clang/default.nix index f2236aee45e5..58439f02a5c9 100644 --- a/pkgs/development/compilers/llvm/11/clang/default.nix +++ b/pkgs/development/compilers/llvm/11/clang/default.nix @@ -31,7 +31,6 @@ let "-DCMAKE_CXX_FLAGS=-std=c++14" "-DCLANGD_BUILD_XPC=OFF" "-DLLVM_ENABLE_RTTI=ON" - "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}" ] ++ lib.optionals enableManpages [ "-DCLANG_INCLUDE_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" diff --git a/pkgs/development/compilers/llvm/12/clang/default.nix b/pkgs/development/compilers/llvm/12/clang/default.nix index a41123495982..0f1e160bbce8 100644 --- a/pkgs/development/compilers/llvm/12/clang/default.nix +++ b/pkgs/development/compilers/llvm/12/clang/default.nix @@ -32,7 +32,6 @@ let "-DCMAKE_CXX_FLAGS=-std=c++14" "-DCLANGD_BUILD_XPC=OFF" "-DLLVM_ENABLE_RTTI=ON" - "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}" ] ++ lib.optionals enableManpages [ "-DCLANG_INCLUDE_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" diff --git a/pkgs/development/compilers/llvm/13/clang/default.nix b/pkgs/development/compilers/llvm/13/clang/default.nix index 242995839745..6c227f1ae72b 100644 --- a/pkgs/development/compilers/llvm/13/clang/default.nix +++ b/pkgs/development/compilers/llvm/13/clang/default.nix @@ -22,7 +22,6 @@ let "-DCMAKE_CXX_FLAGS=-std=c++14" "-DCLANGD_BUILD_XPC=OFF" "-DLLVM_ENABLE_RTTI=ON" - "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}" ] ++ lib.optionals enableManpages [ "-DCLANG_INCLUDE_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" diff --git a/pkgs/development/compilers/llvm/8/clang/default.nix b/pkgs/development/compilers/llvm/8/clang/default.nix index 5cb7720d026f..1d6a5b7d74df 100644 --- a/pkgs/development/compilers/llvm/8/clang/default.nix +++ b/pkgs/development/compilers/llvm/8/clang/default.nix @@ -30,7 +30,6 @@ let "-DCMAKE_CXX_FLAGS=-std=c++11" "-DCLANGD_BUILD_XPC=OFF" "-DLLVM_ENABLE_RTTI=ON" - "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}" ] ++ lib.optionals enableManpages [ "-DCLANG_INCLUDE_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" diff --git a/pkgs/development/compilers/llvm/9/clang/default.nix b/pkgs/development/compilers/llvm/9/clang/default.nix index c98b4a830c42..ee124b43bfce 100644 --- a/pkgs/development/compilers/llvm/9/clang/default.nix +++ b/pkgs/development/compilers/llvm/9/clang/default.nix @@ -30,7 +30,6 @@ let "-DCMAKE_CXX_FLAGS=-std=c++11" "-DCLANGD_BUILD_XPC=OFF" "-DLLVM_ENABLE_RTTI=ON" - "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}" ] ++ lib.optionals enableManpages [ "-DCLANG_INCLUDE_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" diff --git a/pkgs/development/compilers/llvm/git/clang/default.nix b/pkgs/development/compilers/llvm/git/clang/default.nix index de2eff9f3e37..3873bda2b6d5 100644 --- a/pkgs/development/compilers/llvm/git/clang/default.nix +++ b/pkgs/development/compilers/llvm/git/clang/default.nix @@ -22,7 +22,6 @@ let "-DCMAKE_CXX_FLAGS=-std=c++14" "-DCLANGD_BUILD_XPC=OFF" "-DLLVM_ENABLE_RTTI=ON" - "-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}" ] ++ lib.optionals enableManpages [ "-DCLANG_INCLUDE_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" From 36032dfafc7f48f2a28970e43dcf502e361f6527 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 29 Dec 2021 23:50:21 +0100 Subject: [PATCH 075/170] python3Packages.restfly: disable on older Python releeases --- pkgs/development/python-modules/restfly/default.nix | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/restfly/default.nix b/pkgs/development/python-modules/restfly/default.nix index 8b47183dcfd3..073297412494 100644 --- a/pkgs/development/python-modules/restfly/default.nix +++ b/pkgs/development/python-modules/restfly/default.nix @@ -6,18 +6,22 @@ , pytest-vcr , pytestCheckHook , python-box +, pythonOlder , requests }: buildPythonPackage rec { pname = "restfly"; version = "1.4.4"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "stevemcgrath"; repo = pname; rev = version; - sha256 = "sha256-T5NfG+Vuguh6xZ/Rdx3a1vMDgXPcl/OYhOkxb76yEXg="; + hash = "sha256-T5NfG+Vuguh6xZ/Rdx3a1vMDgXPcl/OYhOkxb76yEXg="; }; propagatedBuildInputs = [ @@ -37,7 +41,9 @@ buildPythonPackage rec { "test_session_ssl_error" ]; - pythonImportsCheck = [ "restfly" ]; + pythonImportsCheck = [ + "restfly" + ]; meta = with lib; { description = "Python RESTfly API Library Framework"; From 8ddf066c1f193302cba66fb45fcf7ba2a11c48d2 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 29 Dec 2021 23:54:45 +0100 Subject: [PATCH 076/170] python3Packages.pytenable: 1.4.2 -> 1.4.3 --- .../development/python-modules/pytenable/default.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/pytenable/default.nix b/pkgs/development/python-modules/pytenable/default.nix index af3c2c9b6514..e4417139bfa3 100644 --- a/pkgs/development/python-modules/pytenable/default.nix +++ b/pkgs/development/python-modules/pytenable/default.nix @@ -9,6 +9,7 @@ , pytestCheckHook , python-box , python-dateutil +, pythonOlder , requests , requests-pkcs12 , responses @@ -19,13 +20,16 @@ buildPythonPackage rec { pname = "pytenable"; - version = "1.4.2"; + version = "1.4.3"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "tenable"; repo = "pyTenable"; rev = version; - sha256 = "sha256-qljoJ+nYFVS5VHr/M4mITtO9Czuyb4HLzVjhprhyJIs="; + hash = "sha256-p9d3wZkOMhNQWJN6tCNUlW15A3irU8QN/nm7PLGTE/M="; }; propagatedBuildInputs = [ @@ -59,7 +63,9 @@ buildPythonPackage rec { "test_uploads_docker_push_cs_tag_typeerror" ]; - pythonImportsCheck = [ "tenable" ]; + pythonImportsCheck = [ + "tenable" + ]; meta = with lib; { description = "Python library for the Tenable.io and TenableSC API"; From 2a0966e8165fe41efe4d150dc0bd95c7b2d67256 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 30 Dec 2021 10:29:13 +0100 Subject: [PATCH 077/170] python3Packages.importlib-metadata: 4.8.2 -> 4.10.0 --- .../python-modules/importlib-metadata/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/importlib-metadata/default.nix b/pkgs/development/python-modules/importlib-metadata/default.nix index e13f73616775..a607de5eb114 100644 --- a/pkgs/development/python-modules/importlib-metadata/default.nix +++ b/pkgs/development/python-modules/importlib-metadata/default.nix @@ -10,15 +10,15 @@ buildPythonPackage rec { pname = "importlib-metadata"; - version = "4.8.2"; + version = "4.10.0"; format = "setuptools"; - disabled = pythonOlder "3.6"; + disabled = pythonOlder "3.7"; src = fetchPypi { pname = "importlib_metadata"; inherit version; - sha256 = "sha256-db3sFMOX9ShyTBv9lwnWYLM6TS53OHozWPILhIu15fs="; + hash = "sha256-kqi1jOc0sqRJSHjg7PfXnM16EotfxgFMQB4LYfAG8PY="; }; nativeBuildInputs = [ From 63fe40a6f59a162ba67a54d520bd2e57ea49506c Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 3 Jan 2022 21:31:37 +0100 Subject: [PATCH 078/170] python3Packages.paramiko: 2.8.1 -> 2.9.1 --- .../python-modules/paramiko/default.nix | 51 ++++++++++++------- 1 file changed, 34 insertions(+), 17 deletions(-) diff --git a/pkgs/development/python-modules/paramiko/default.nix b/pkgs/development/python-modules/paramiko/default.nix index 86154554b692..d271111d58f2 100644 --- a/pkgs/development/python-modules/paramiko/default.nix +++ b/pkgs/development/python-modules/paramiko/default.nix @@ -1,48 +1,65 @@ -{ pkgs -, buildPythonPackage -, fetchPypi -, cryptography +{ lib , bcrypt +, buildPythonPackage +, cryptography +, fetchPypi , invoke -, pynacl -, pyasn1 -, pytestCheckHook -, pytest-relaxed , mock +, pyasn1 +, pynacl +, pytest-relaxed +, pytestCheckHook }: buildPythonPackage rec { pname = "paramiko"; - version = "2.8.1"; + version = "2.9.1"; + format = "setuptools"; src = fetchPypi { inherit pname version; - sha256 = "85b1245054e5d7592b9088cc6d08da22445417912d3a3e48138675c7a8616438"; + hash = "sha256-of3e07VfYdIzieT+UtmuQolgrJWNLt9QNz+qXYkm7dA="; }; - propagatedBuildInputs = [ bcrypt cryptography pynacl pyasn1 ]; + propagatedBuildInputs = [ + bcrypt + cryptography + pyasn1 + pynacl + ]; + + checkInputs = [ + invoke + mock + pytest-relaxed + pytestCheckHook + ]; # with python 3.9.6+, the deprecation warnings will fail the test suite # see: https://github.com/pyinvoke/invoke/issues/829 doCheck = false; - checkInputs = [ invoke pytestCheckHook pytest-relaxed mock ]; disabledTestPaths = [ "tests/test_sftp.py" "tests/test_config.py" ]; + pythonImportsCheck = [ + "paramiko" + ]; + __darwinAllowLocalNetworking = true; - meta = with pkgs.lib; { + meta = with lib; { homepage = "https://github.com/paramiko/paramiko/"; description = "Native Python SSHv2 protocol library"; license = licenses.lgpl21Plus; longDescription = '' - This is a library for making SSH2 connections (client or server). - Emphasis is on using SSH2 as an alternative to SSL for making secure - connections between python scripts. All major ciphers and hash methods - are supported. SFTP client and server mode are both supported too. + Library for making SSH2 connections (client or server). Emphasis is + on using SSH2 as an alternative to SSL for making secure connections + between python scripts. All major ciphers and hash methods are + supported. SFTP client and server mode are both supported too. ''; + maintainers = with maintainers; [ ]; }; } From 580d3db631fe0772ff4db82458153962232ee801 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 3 Jan 2022 23:23:21 +0100 Subject: [PATCH 079/170] python3Packages.typing-extensions: 3.10.0.2 -> 4.0.1 --- .../typing-extensions/default.nix | 46 ++++++++++++------- 1 file changed, 30 insertions(+), 16 deletions(-) diff --git a/pkgs/development/python-modules/typing-extensions/default.nix b/pkgs/development/python-modules/typing-extensions/default.nix index 939ca25eb1a3..1e29bc9a6160 100644 --- a/pkgs/development/python-modules/typing-extensions/default.nix +++ b/pkgs/development/python-modules/typing-extensions/default.nix @@ -1,27 +1,41 @@ -{ lib, buildPythonPackage, fetchPypi, pythonOlder, isPy3k, python, typing }: -let - testDir = if isPy3k then "src_py3" else "src_py2"; +{ lib +, buildPythonPackage +, fetchPypi +, flit-core +, python +, pythonOlder +}: -in buildPythonPackage rec { - pname = "typing_extensions"; - version = "3.10.0.2"; +buildPythonPackage rec { + pname = "typing-extensions"; + version = "4.0.1"; + format = "pyproject"; + + disabled = pythonOlder "3.6"; src = fetchPypi { - inherit pname version; - sha256 = "49f75d16ff11f1cd258e1b988ccff82a3ca5570217d7ad8c5f48205dd99a677e"; + pname = "typing_extensions"; + inherit version; + hash = "sha256-TKCR3qFJ+UXsVq+0ja5xTyHoaS7yKjlSI7zTKJYbag4="; }; - checkInputs = lib.optional (pythonOlder "3.5") typing; + nativeBuildInputs = [ + flit-core + ]; - # Error for Python3.6: ImportError: cannot import name 'ann_module' - # See https://github.com/python/typing/pull/280 - doCheck = pythonOlder "3.6"; - - checkPhase = '' - cd ${testDir} - ${python.interpreter} -m unittest discover + postPatch = '' + # Remove metadata for README which are outdated + sed -i -e '11,24d' pyproject.toml ''; + # Tests are not part of PyPI releases. GitHub source can't be used + # as it ends with an infinite recursion + doCheck = false; + + pythonImportsCheck = [ + "typing_extensions" + ]; + meta = with lib; { description = "Backported and Experimental Type Hints for Python 3.5+"; homepage = "https://github.com/python/typing"; From ee298b36f0fbe4af1bc221ac6b3bf3a291448f2b Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 3 Jan 2022 22:34:26 +0100 Subject: [PATCH 080/170] python3Packages.tzdata: 2021.1 -> 2021.5 --- .../python-modules/tzdata/default.nix | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/pkgs/development/python-modules/tzdata/default.nix b/pkgs/development/python-modules/tzdata/default.nix index 7f1803d12c62..cfc46a658d34 100644 --- a/pkgs/development/python-modules/tzdata/default.nix +++ b/pkgs/development/python-modules/tzdata/default.nix @@ -1,28 +1,32 @@ { lib , buildPythonPackage , fetchPypi -, pythonOlder -, pytestCheckHook -, pytest-subtests , importlib-resources +, pytest-subtests +, pytestCheckHook +, pythonOlder }: buildPythonPackage rec { pname = "tzdata"; - version = "2021.1"; + version = "2021.5"; format = "pyproject"; src = fetchPypi { inherit pname version; - sha256 = "sha256-4ZxzUfiHUioaxznSEEHlkt3ebdG3ZP3vqPeys1UdPTg="; + hash = "sha256-aNvkGv0BuGeJS739VPoD9GjPpPAIa/tK3NjejyTz7iE="; }; checkInputs = [ pytestCheckHook pytest-subtests - ] ++ lib.optional (pythonOlder "3.7") importlib-resources; + ] ++ lib.optional (pythonOlder "3.7") [ + importlib-resources + ]; - pythonImportsCheck = [ "tzdata" ]; + pythonImportsCheck = [ + "tzdata" + ]; meta = with lib; { description = "Provider of IANA time zone data"; From 04c0fa2d3a524a74091b51b0d180eec138362272 Mon Sep 17 00:00:00 2001 From: Robert Scott Date: Mon, 3 Jan 2022 17:49:44 +0000 Subject: [PATCH 081/170] openexr_3: add patch for CVE-2021-45942 the CVE description is currently suggesting https://github.com/AcademySoftwareFoundation/openexr/commit/db217f29dfb24f6b4b5100c24ac5e7490e1c57d0 as the fix, but it is wrong checked this patch does silence valgrind's complaints with reproducer file https://oss-fuzz.com/download?testcase_id=5275682339422208 --- pkgs/development/libraries/openexr/3.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/development/libraries/openexr/3.nix b/pkgs/development/libraries/openexr/3.nix index 1fae66829065..dab6b2540896 100644 --- a/pkgs/development/libraries/openexr/3.nix +++ b/pkgs/development/libraries/openexr/3.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchFromGitHub +, fetchpatch , zlib , cmake , imath @@ -19,6 +20,14 @@ stdenv.mkDerivation rec { sha256 = "0vyclrrikphwkkpyjg8kzh3qzflzk3d6xsidgqllgfdgllr9wmgv"; }; + patches = [ + (fetchpatch { + name = "CVE-2021-45942.patch"; + url = "https://github.com/AcademySoftwareFoundation/openexr/commit/11cad77da87c4fa2aab7d58dd5339e254db7937e.patch"; + sha256 = "1qa8662ga5i0lyfi9mkj9s9bygdg7h1i6ahki28c664kxrlsakch"; + }) + ]; + nativeBuildInputs = [ cmake ]; propagatedBuildInputs = [ imath zlib ]; From c893059836b291f9d747e2b9f03c03ff4d3dae28 Mon Sep 17 00:00:00 2001 From: Robert Scott Date: Mon, 3 Jan 2022 17:50:36 +0000 Subject: [PATCH 082/170] openexr_3: enable tests --- pkgs/development/libraries/openexr/3.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/development/libraries/openexr/3.nix b/pkgs/development/libraries/openexr/3.nix index dab6b2540896..3c77abfccbf5 100644 --- a/pkgs/development/libraries/openexr/3.nix +++ b/pkgs/development/libraries/openexr/3.nix @@ -28,9 +28,18 @@ stdenv.mkDerivation rec { }) ]; + # tests are determined to use /var/tmp on unix + postPatch = '' + cat <(find . -name tmpDir.h) <(echo src/test/OpenEXRCoreTest/main.cpp) | while read -r f ; do + substituteInPlace $f --replace '/var/tmp' "$TMPDIR" + done + ''; + nativeBuildInputs = [ cmake ]; propagatedBuildInputs = [ imath zlib ]; + doCheck = true; + meta = with lib; { description = "A high dynamic-range (HDR) image file format"; homepage = "https://www.openexr.com/"; From a238071df44df8bebfa4f08fe81661b86f8d4f95 Mon Sep 17 00:00:00 2001 From: Robert Scott Date: Mon, 3 Jan 2022 22:44:21 +0000 Subject: [PATCH 083/170] openexr: add patch for CVE-2021-45942 the CVE description is currently suggesting https://github.com/AcademySoftwareFoundation/openexr/commit/db217f29dfb24f6b4b5100c24ac5e7490e1c57d0 as the fix, but it is wrong checked this patch does silence valgrind's complaints with reproducer file https://oss-fuzz.com/download?testcase_id=5275682339422208 --- pkgs/development/libraries/openexr/default.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/development/libraries/openexr/default.nix b/pkgs/development/libraries/openexr/default.nix index d60b7b7fc436..31ca48552755 100644 --- a/pkgs/development/libraries/openexr/default.nix +++ b/pkgs/development/libraries/openexr/default.nix @@ -26,6 +26,13 @@ stdenv.mkDerivation rec { url = "https://github.com/AcademySoftwareFoundation/openexr/commit/2f19a01923885fda75ec9d19332de080ec7102bd.patch"; sha256 = "1yxmrdzq1x1911wdzwnzr29jmg2r4wd4yx3vhjn0y5dpny0ri5y5"; }) + (fetchpatch { + name = "CVE-2021-45942.patch"; + url = "https://github.com/AcademySoftwareFoundation/openexr/commit/11cad77da87c4fa2aab7d58dd5339e254db7937e.patch"; + stripLen = 4; + extraPrefix = "OpenEXR/IlmImf/"; + sha256 = "1wa2jn6sa0n3phaqvklnlbgk1bz60y756ad4jk4d757pzpnannsy"; + }) ]; nativeBuildInputs = [ cmake ]; From 3791603924420581557604258f16bb3ed0c03b00 Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Sun, 21 Nov 2021 22:50:09 -0500 Subject: [PATCH 084/170] configdHeaders: init at 453.19 `configd` is aliased to `apple-sdk.frameworks.SystemConfiguration` in apple-sdk-11.0, which is the default on aarch64-darwin, but it does not include all of the headers. This package introduces the missing headers, which are needed to build `libresolv`. A subsequent commit will fix libresolv to build on aarch64-darwin. --- .../apple-source-releases/configd/default.nix | 15 +++++++++------ .../darwin/apple-source-releases/default.nix | 4 ++++ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/pkgs/os-specific/darwin/apple-source-releases/configd/default.nix b/pkgs/os-specific/darwin/apple-source-releases/configd/default.nix index 879d3a7b5f79..37830c0665e1 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/configd/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/configd/default.nix @@ -1,14 +1,15 @@ -{ stdenv, appleDerivation', launchd, bootstrap_cmds, xnu, ppp, IOKit, eap8021x, Security }: +{ lib, stdenv, appleDerivation', launchd, bootstrap_cmds, xnu, ppp, IOKit, eap8021x, Security +, headersOnly ? false }: appleDerivation' stdenv { meta.broken = stdenv.cc.nativeLibc; - nativeBuildInputs = [ bootstrap_cmds ]; - buildInputs = [ launchd ppp IOKit eap8021x ]; + nativeBuildInputs = lib.optionals (!headersOnly) [ bootstrap_cmds ]; + buildInputs = lib.optionals (!headersOnly) [ launchd ppp IOKit eap8021x ]; - propagatedBuildInputs = [ Security ]; + propagatedBuildInputs = lib.optionals (!headersOnly) [ Security ]; - patchPhase = '' + patchPhase = lib.optionalString (!headersOnly) '' HACK=$PWD/hack mkdir $HACK cp -r ${xnu}/Library/Frameworks/System.framework/Versions/B/PrivateHeaders/net $HACK @@ -63,6 +64,8 @@ appleDerivation' stdenv { EOF ''; + dontBuild = headersOnly; + buildPhase = '' pushd SystemConfiguration.fproj >/dev/null @@ -206,7 +209,7 @@ appleDerivation' stdenv { installPhase = '' mkdir -p $out/include cp dnsinfo/*.h $out/include/ - + '' + lib.optionalString (!headersOnly) '' mkdir -p $out/Library/Frameworks/ mv SystemConfiguration.fproj/SystemConfiguration.framework $out/Library/Frameworks ''; diff --git a/pkgs/os-specific/darwin/apple-source-releases/default.nix b/pkgs/os-specific/darwin/apple-source-releases/default.nix index 5e098926d296..7a87d7abd733 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/default.nix @@ -297,6 +297,10 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // { top = applePackage "top" "osx-10.11.6" "0i9120rfwapgwdvjbfg0ya143i29s1m8zbddsxh39pdc59xnsg5l" {}; PowerManagement = applePackage "PowerManagement" "osx-10.11.6" "1llimhvp0gjffd47322lnjq7cqwinx0c5z7ikli04ad5srpa68mh" {}; + configdHeaders = applePackage "configd" "osx-10.8.5" "1gxakahk8gallf16xmhxhprdxkh3prrmzxnmxfvj0slr0939mmr2" { + headersOnly = true; + Security = applePackage "Security/boot.nix" "osx-10.9.5" "1nv0dczf67dhk17hscx52izgdcyacgyy12ag0jh6nl5hmfzsn8yy" {}; + }; libutilHeaders = pkgs.darwin.libutil.override { headersOnly = true; }; hfsHeaders = pkgs.darwin.hfs.override { headersOnly = true; }; libresolvHeaders= pkgs.darwin.libresolv.override { headersOnly = true; }; From a42a04fadd59769a1ef0584ec21442a5cb6fdef4 Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Sun, 21 Nov 2021 22:56:20 -0500 Subject: [PATCH 085/170] libresolv: fix build on aarch64-darwin Use `configdHeaders` instead of `configd`. This fixes #134292. --- pkgs/os-specific/darwin/apple-source-releases/default.nix | 4 +++- .../darwin/apple-source-releases/libresolv/default.nix | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/darwin/apple-source-releases/default.nix b/pkgs/os-specific/darwin/apple-source-releases/default.nix index 7a87d7abd733..90cb4a99bfc6 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/default.nix @@ -297,9 +297,11 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // { top = applePackage "top" "osx-10.11.6" "0i9120rfwapgwdvjbfg0ya143i29s1m8zbddsxh39pdc59xnsg5l" {}; PowerManagement = applePackage "PowerManagement" "osx-10.11.6" "1llimhvp0gjffd47322lnjq7cqwinx0c5z7ikli04ad5srpa68mh" {}; + # `configdHeaders` can’t use an override because `pkgs.darwin.configd` on aarch64-darwin will + # be replaced by SystemConfiguration.framework from the macOS SDK. configdHeaders = applePackage "configd" "osx-10.8.5" "1gxakahk8gallf16xmhxhprdxkh3prrmzxnmxfvj0slr0939mmr2" { headersOnly = true; - Security = applePackage "Security/boot.nix" "osx-10.9.5" "1nv0dczf67dhk17hscx52izgdcyacgyy12ag0jh6nl5hmfzsn8yy" {}; + Security = null; }; libutilHeaders = pkgs.darwin.libutil.override { headersOnly = true; }; hfsHeaders = pkgs.darwin.hfs.override { headersOnly = true; }; diff --git a/pkgs/os-specific/darwin/apple-source-releases/libresolv/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libresolv/default.nix index 53fc019768dd..2a8a609472a2 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/libresolv/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/libresolv/default.nix @@ -1,9 +1,9 @@ -{ lib, appleDerivation', stdenv, stdenvNoCC, Libinfo, configd, mDNSResponder +{ lib, appleDerivation', stdenv, stdenvNoCC, Libinfo, configdHeaders, mDNSResponder , headersOnly ? false }: appleDerivation' (if headersOnly then stdenvNoCC else stdenv) { - buildInputs = lib.optionals (!headersOnly) [ Libinfo configd mDNSResponder ]; + buildInputs = lib.optionals (!headersOnly) [ Libinfo configdHeaders mDNSResponder ]; buildPhase = lib.optionalString (!headersOnly) '' $CC -I. -c dns_util.c From d21e4dda7c7018dfe1f4624079e6ad819ab23255 Mon Sep 17 00:00:00 2001 From: Mark Vainomaa Date: Tue, 4 Jan 2022 01:30:01 +0200 Subject: [PATCH 086/170] gtk3: fix darwin build 3.24.31 does not declare QuartzCore dependency properly and fails to link --- pkgs/development/libraries/gtk/3.x.nix | 8 ++++++++ pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/gtk/3.x.nix b/pkgs/development/libraries/gtk/3.x.nix index 02443619b260..9a2655a379f0 100644 --- a/pkgs/development/libraries/gtk/3.x.nix +++ b/pkgs/development/libraries/gtk/3.x.nix @@ -44,6 +44,7 @@ , cups , AppKit , Cocoa +, QuartzCore , broadwaySupport ? true }: @@ -83,6 +84,12 @@ stdenv.mkDerivation rec { # e.g. https://gitlab.gnome.org/GNOME/gtk/blob/3.24.4/gtk/gtk-launch.c#L31-33 # https://gitlab.gnome.org/GNOME/gtk/merge_requests/536 ./patches/3.0-darwin-x11.patch + + # 3.24.31 does not declare QuartzCore dependency properly and fails to link + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gtk/-/commit/0ac61443694b477c41fc246cb387ef86aba441de.patch"; + sha256 = "sha256-aiT/NeAxIl6ZS9KwMssQPzD7NtW7qqeySc/CyWakQfk="; + }) ]; nativeBuildInputs = [ @@ -133,6 +140,7 @@ stdenv.mkDerivation rec { ] ++ lib.optionals stdenv.isDarwin [ # explicitly propagated, always needed Cocoa + QuartzCore ] ++ lib.optionals waylandSupport [ libGL wayland diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8f64d27b5912..9506b1d3effb 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16976,7 +16976,7 @@ with pkgs; gtkextra = callPackage ../development/libraries/gtkextra { }; gtk3 = callPackage ../development/libraries/gtk/3.x.nix { - inherit (darwin.apple_sdk.frameworks) AppKit Cocoa; + inherit (darwin.apple_sdk.frameworks) AppKit Cocoa QuartzCore; }; gtk4 = callPackage ../development/libraries/gtk/4.x.nix { From a11763fa36aa7fcb8da75d28adfdc11e9640d2d7 Mon Sep 17 00:00:00 2001 From: Jonathan del Strother Date: Thu, 30 Dec 2021 15:08:48 +0000 Subject: [PATCH 087/170] libjxl: Fix tests on darwin This fixes the LibraryCLinkageTest, which was failing to find the built library: 1122/1129 Test #1128: LibraryCLinkageTest .......................................................................................................Subprocess aborted***Exception: 0.32 sec dyld[53579]: Library not loaded: @rpath/libjxl.0.dylib Referenced from: /private/tmp/nix-build-libjxl-0.5.drv-1/source/build/tools/tests/libjxl_test Reason: tried: '/nix/store/82d092jfk2sckailcp5hpb29xsxhk4h2-swift-corefoundation/Library/Frameworks/libjxl.0.dylib' (no such file), '/nix/store/82d092jfk2sckailcp5hpb29xsxhk4h2-swift-corefoundation/Library/Frameworks/libjxl.0.dylib' (no --- pkgs/development/libraries/libjxl/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libjxl/default.nix b/pkgs/development/libraries/libjxl/default.nix index 828090875e86..fa5b53bd4485 100644 --- a/pkgs/development/libraries/libjxl/default.nix +++ b/pkgs/development/libraries/libjxl/default.nix @@ -108,7 +108,9 @@ stdenv.mkDerivation rec { # LD_LIBRARY_PATH setting errors with: # /build/source/build/tools/tests/libjxl_test: error while loading shared libraries: libjxl.so.0 # The required file is in the build directory (`$PWD`). - preCheck = '' + preCheck = if stdenv.isDarwin then '' + export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH''${DYLD_LIBRARY_PATH:+:}$PWD + '' else '' export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD ''; From d807aaa30c19dde0284d72fca6c82824cd07eaec Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Fri, 31 Dec 2021 15:12:35 +0100 Subject: [PATCH 088/170] llvmPackages*.libllvm: drop outputs.patch for llvm-config.patch Due to gnu-install-dirs.patch llvm-config will return correct results for --link-shared as well as --link-static even without this patch. --- .../compilers/llvm/10/llvm/default.nix | 5 ----- .../compilers/llvm/10/llvm/outputs.patch | 16 ---------------- .../compilers/llvm/11/llvm/default.nix | 5 ----- .../compilers/llvm/11/llvm/outputs.patch | 16 ---------------- .../compilers/llvm/12/llvm/default.nix | 5 ----- .../compilers/llvm/12/llvm/outputs.patch | 16 ---------------- .../compilers/llvm/13/llvm/default.nix | 5 ----- .../compilers/llvm/13/llvm/outputs.patch | 16 ---------------- .../compilers/llvm/5/llvm/default.nix | 5 ----- .../compilers/llvm/5/llvm/outputs.patch | 16 ---------------- .../compilers/llvm/6/llvm/default.nix | 5 ----- .../compilers/llvm/6/llvm/outputs.patch | 16 ---------------- .../compilers/llvm/7/llvm/default.nix | 5 ----- .../compilers/llvm/7/llvm/outputs.patch | 16 ---------------- .../compilers/llvm/8/llvm/default.nix | 5 ----- .../compilers/llvm/8/llvm/outputs.patch | 16 ---------------- .../compilers/llvm/9/llvm/default.nix | 5 ----- .../compilers/llvm/9/llvm/outputs.patch | 16 ---------------- .../compilers/llvm/git/llvm/default.nix | 5 ----- .../compilers/llvm/git/llvm/outputs.patch | 16 ---------------- 20 files changed, 210 deletions(-) delete mode 100644 pkgs/development/compilers/llvm/10/llvm/outputs.patch delete mode 100644 pkgs/development/compilers/llvm/11/llvm/outputs.patch delete mode 100644 pkgs/development/compilers/llvm/12/llvm/outputs.patch delete mode 100644 pkgs/development/compilers/llvm/13/llvm/outputs.patch delete mode 100644 pkgs/development/compilers/llvm/5/llvm/outputs.patch delete mode 100644 pkgs/development/compilers/llvm/6/llvm/outputs.patch delete mode 100644 pkgs/development/compilers/llvm/7/llvm/outputs.patch delete mode 100644 pkgs/development/compilers/llvm/8/llvm/outputs.patch delete mode 100644 pkgs/development/compilers/llvm/9/llvm/outputs.patch delete mode 100644 pkgs/development/compilers/llvm/git/llvm/outputs.patch diff --git a/pkgs/development/compilers/llvm/10/llvm/default.nix b/pkgs/development/compilers/llvm/10/llvm/default.nix index 68a4dc3170c8..e49999117e6a 100644 --- a/pkgs/development/compilers/llvm/10/llvm/default.nix +++ b/pkgs/development/compilers/llvm/10/llvm/default.nix @@ -93,11 +93,6 @@ in stdenv.mkDerivation (rec { substituteInPlace cmake/modules/AddLLVM.cmake \ --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' "" - '' - # Patch llvm-config to return correct library path based on --link-{shared,static}. - + '' - substitute '${./outputs.patch}' ./outputs.patch --subst-var lib - patch -p1 < ./outputs.patch '' + '' # FileSystem permissions tests fail with various special bits substituteInPlace unittests/Support/CMakeLists.txt \ diff --git a/pkgs/development/compilers/llvm/10/llvm/outputs.patch b/pkgs/development/compilers/llvm/10/llvm/outputs.patch deleted file mode 100644 index 878460e05b8a..000000000000 --- a/pkgs/development/compilers/llvm/10/llvm/outputs.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 94d426b..37f7794 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -333,6 +333,11 @@ int main(int argc, char **argv) { - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -+ /// Nix-specific multiple-output handling: override ActiveLibDir -+ if (!IsInDevelopmentTree) { -+ ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX; -+ } -+ - /// We only use `shared library` mode in cases where the static library form - /// of the components provided are not available; note however that this is - /// skipped if we're run from within the build dir. However, once installed, diff --git a/pkgs/development/compilers/llvm/11/llvm/default.nix b/pkgs/development/compilers/llvm/11/llvm/default.nix index 2f1c7eb85e62..89659dd987aa 100644 --- a/pkgs/development/compilers/llvm/11/llvm/default.nix +++ b/pkgs/development/compilers/llvm/11/llvm/default.nix @@ -91,11 +91,6 @@ in stdenv.mkDerivation (rec { substituteInPlace cmake/modules/AddLLVM.cmake \ --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' "" - '' - # Patch llvm-config to return correct library path based on --link-{shared,static}. - + '' - substitute '${./outputs.patch}' ./outputs.patch --subst-var lib - patch -p1 < ./outputs.patch '' + '' # FileSystem permissions tests fail with various special bits substituteInPlace unittests/Support/CMakeLists.txt \ diff --git a/pkgs/development/compilers/llvm/11/llvm/outputs.patch b/pkgs/development/compilers/llvm/11/llvm/outputs.patch deleted file mode 100644 index 878460e05b8a..000000000000 --- a/pkgs/development/compilers/llvm/11/llvm/outputs.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 94d426b..37f7794 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -333,6 +333,11 @@ int main(int argc, char **argv) { - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -+ /// Nix-specific multiple-output handling: override ActiveLibDir -+ if (!IsInDevelopmentTree) { -+ ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX; -+ } -+ - /// We only use `shared library` mode in cases where the static library form - /// of the components provided are not available; note however that this is - /// skipped if we're run from within the build dir. However, once installed, diff --git a/pkgs/development/compilers/llvm/12/llvm/default.nix b/pkgs/development/compilers/llvm/12/llvm/default.nix index 8416a550443f..00bce1fdaa52 100644 --- a/pkgs/development/compilers/llvm/12/llvm/default.nix +++ b/pkgs/development/compilers/llvm/12/llvm/default.nix @@ -72,11 +72,6 @@ in stdenv.mkDerivation (rec { substituteInPlace cmake/modules/AddLLVM.cmake \ --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' "" - '' - # Patch llvm-config to return correct library path based on --link-{shared,static}. - + '' - substitute '${./outputs.patch}' ./outputs.patch --subst-var lib - patch -p1 < ./outputs.patch '' + '' # FileSystem permissions tests fail with various special bits substituteInPlace unittests/Support/CMakeLists.txt \ diff --git a/pkgs/development/compilers/llvm/12/llvm/outputs.patch b/pkgs/development/compilers/llvm/12/llvm/outputs.patch deleted file mode 100644 index 878460e05b8a..000000000000 --- a/pkgs/development/compilers/llvm/12/llvm/outputs.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 94d426b..37f7794 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -333,6 +333,11 @@ int main(int argc, char **argv) { - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -+ /// Nix-specific multiple-output handling: override ActiveLibDir -+ if (!IsInDevelopmentTree) { -+ ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX; -+ } -+ - /// We only use `shared library` mode in cases where the static library form - /// of the components provided are not available; note however that this is - /// skipped if we're run from within the build dir. However, once installed, diff --git a/pkgs/development/compilers/llvm/13/llvm/default.nix b/pkgs/development/compilers/llvm/13/llvm/default.nix index 115b56396e8d..0b17ae326557 100644 --- a/pkgs/development/compilers/llvm/13/llvm/default.nix +++ b/pkgs/development/compilers/llvm/13/llvm/default.nix @@ -66,11 +66,6 @@ in stdenv.mkDerivation (rec { substituteInPlace cmake/modules/AddLLVM.cmake \ --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' "" - '' - # Patch llvm-config to return correct library path based on --link-{shared,static}. - + '' - substitute '${./outputs.patch}' ./outputs.patch --subst-var lib - patch -p1 < ./outputs.patch '' + '' # FileSystem permissions tests fail with various special bits substituteInPlace unittests/Support/CMakeLists.txt \ diff --git a/pkgs/development/compilers/llvm/13/llvm/outputs.patch b/pkgs/development/compilers/llvm/13/llvm/outputs.patch deleted file mode 100644 index 878460e05b8a..000000000000 --- a/pkgs/development/compilers/llvm/13/llvm/outputs.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 94d426b..37f7794 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -333,6 +333,11 @@ int main(int argc, char **argv) { - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -+ /// Nix-specific multiple-output handling: override ActiveLibDir -+ if (!IsInDevelopmentTree) { -+ ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX; -+ } -+ - /// We only use `shared library` mode in cases where the static library form - /// of the components provided are not available; note however that this is - /// skipped if we're run from within the build dir. However, once installed, diff --git a/pkgs/development/compilers/llvm/5/llvm/default.nix b/pkgs/development/compilers/llvm/5/llvm/default.nix index d55f1300ffe5..4cb25cf16b06 100644 --- a/pkgs/development/compilers/llvm/5/llvm/default.nix +++ b/pkgs/development/compilers/llvm/5/llvm/default.nix @@ -80,11 +80,6 @@ stdenv.mkDerivation ({ substituteInPlace cmake/modules/AddLLVM.cmake \ --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}" ''${extra_libdir})' "" - '' - # Patch llvm-config to return correct library path based on --link-{shared,static}. - + '' - substitute '${./outputs.patch}' ./outputs.patch --subst-var lib - patch -p1 < ./outputs.patch '' + '' # FileSystem permissions tests fail with various special bits substituteInPlace unittests/Support/CMakeLists.txt \ diff --git a/pkgs/development/compilers/llvm/5/llvm/outputs.patch b/pkgs/development/compilers/llvm/5/llvm/outputs.patch deleted file mode 100644 index 878460e05b8a..000000000000 --- a/pkgs/development/compilers/llvm/5/llvm/outputs.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 94d426b..37f7794 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -333,6 +333,11 @@ int main(int argc, char **argv) { - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -+ /// Nix-specific multiple-output handling: override ActiveLibDir -+ if (!IsInDevelopmentTree) { -+ ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX; -+ } -+ - /// We only use `shared library` mode in cases where the static library form - /// of the components provided are not available; note however that this is - /// skipped if we're run from within the build dir. However, once installed, diff --git a/pkgs/development/compilers/llvm/6/llvm/default.nix b/pkgs/development/compilers/llvm/6/llvm/default.nix index 746a18612cbf..de87c7a3527c 100644 --- a/pkgs/development/compilers/llvm/6/llvm/default.nix +++ b/pkgs/development/compilers/llvm/6/llvm/default.nix @@ -78,11 +78,6 @@ stdenv.mkDerivation ({ substituteInPlace cmake/modules/AddLLVM.cmake \ --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}" ''${extra_libdir})' "" - '' - # Patch llvm-config to return correct library path based on --link-{shared,static}. - + '' - substitute '${./outputs.patch}' ./outputs.patch --subst-var lib - patch -p1 < ./outputs.patch '' + '' # FileSystem permissions tests fail with various special bits substituteInPlace unittests/Support/CMakeLists.txt \ diff --git a/pkgs/development/compilers/llvm/6/llvm/outputs.patch b/pkgs/development/compilers/llvm/6/llvm/outputs.patch deleted file mode 100644 index 878460e05b8a..000000000000 --- a/pkgs/development/compilers/llvm/6/llvm/outputs.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 94d426b..37f7794 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -333,6 +333,11 @@ int main(int argc, char **argv) { - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -+ /// Nix-specific multiple-output handling: override ActiveLibDir -+ if (!IsInDevelopmentTree) { -+ ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX; -+ } -+ - /// We only use `shared library` mode in cases where the static library form - /// of the components provided are not available; note however that this is - /// skipped if we're run from within the build dir. However, once installed, diff --git a/pkgs/development/compilers/llvm/7/llvm/default.nix b/pkgs/development/compilers/llvm/7/llvm/default.nix index 57c6d7eb5f38..3c04d07c6b9b 100644 --- a/pkgs/development/compilers/llvm/7/llvm/default.nix +++ b/pkgs/development/compilers/llvm/7/llvm/default.nix @@ -82,11 +82,6 @@ in stdenv.mkDerivation ({ substituteInPlace cmake/modules/AddLLVM.cmake \ --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}" ''${extra_libdir})' "" - '' - # Patch llvm-config to return correct library path based on --link-{shared,static}. - + '' - substitute '${./outputs.patch}' ./outputs.patch --subst-var lib - patch -p1 < ./outputs.patch '' + '' # FileSystem permissions tests fail with various special bits substituteInPlace unittests/Support/CMakeLists.txt \ diff --git a/pkgs/development/compilers/llvm/7/llvm/outputs.patch b/pkgs/development/compilers/llvm/7/llvm/outputs.patch deleted file mode 100644 index 878460e05b8a..000000000000 --- a/pkgs/development/compilers/llvm/7/llvm/outputs.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 94d426b..37f7794 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -333,6 +333,11 @@ int main(int argc, char **argv) { - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -+ /// Nix-specific multiple-output handling: override ActiveLibDir -+ if (!IsInDevelopmentTree) { -+ ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX; -+ } -+ - /// We only use `shared library` mode in cases where the static library form - /// of the components provided are not available; note however that this is - /// skipped if we're run from within the build dir. However, once installed, diff --git a/pkgs/development/compilers/llvm/8/llvm/default.nix b/pkgs/development/compilers/llvm/8/llvm/default.nix index 1decdce26a85..bcc8b1c7f26d 100644 --- a/pkgs/development/compilers/llvm/8/llvm/default.nix +++ b/pkgs/development/compilers/llvm/8/llvm/default.nix @@ -85,11 +85,6 @@ in stdenv.mkDerivation ({ substituteInPlace cmake/modules/AddLLVM.cmake \ --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}" ''${extra_libdir})' "" - '' - # Patch llvm-config to return correct library path based on --link-{shared,static}. - + '' - substitute '${./outputs.patch}' ./outputs.patch --subst-var lib - patch -p1 < ./outputs.patch '' + '' # FileSystem permissions tests fail with various special bits substituteInPlace unittests/Support/CMakeLists.txt \ diff --git a/pkgs/development/compilers/llvm/8/llvm/outputs.patch b/pkgs/development/compilers/llvm/8/llvm/outputs.patch deleted file mode 100644 index 878460e05b8a..000000000000 --- a/pkgs/development/compilers/llvm/8/llvm/outputs.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 94d426b..37f7794 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -333,6 +333,11 @@ int main(int argc, char **argv) { - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -+ /// Nix-specific multiple-output handling: override ActiveLibDir -+ if (!IsInDevelopmentTree) { -+ ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX; -+ } -+ - /// We only use `shared library` mode in cases where the static library form - /// of the components provided are not available; note however that this is - /// skipped if we're run from within the build dir. However, once installed, diff --git a/pkgs/development/compilers/llvm/9/llvm/default.nix b/pkgs/development/compilers/llvm/9/llvm/default.nix index 29c0558237c5..905279b1bfc3 100644 --- a/pkgs/development/compilers/llvm/9/llvm/default.nix +++ b/pkgs/development/compilers/llvm/9/llvm/default.nix @@ -83,11 +83,6 @@ in stdenv.mkDerivation (rec { substituteInPlace cmake/modules/AddLLVM.cmake \ --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}" ''${extra_libdir})' "" - '' - # Patch llvm-config to return correct library path based on --link-{shared,static}. - + '' - substitute '${./outputs.patch}' ./outputs.patch --subst-var lib - patch -p1 < ./outputs.patch '' + '' # FileSystem permissions tests fail with various special bits substituteInPlace unittests/Support/CMakeLists.txt \ diff --git a/pkgs/development/compilers/llvm/9/llvm/outputs.patch b/pkgs/development/compilers/llvm/9/llvm/outputs.patch deleted file mode 100644 index 878460e05b8a..000000000000 --- a/pkgs/development/compilers/llvm/9/llvm/outputs.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 94d426b..37f7794 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -333,6 +333,11 @@ int main(int argc, char **argv) { - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -+ /// Nix-specific multiple-output handling: override ActiveLibDir -+ if (!IsInDevelopmentTree) { -+ ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX; -+ } -+ - /// We only use `shared library` mode in cases where the static library form - /// of the components provided are not available; note however that this is - /// skipped if we're run from within the build dir. However, once installed, diff --git a/pkgs/development/compilers/llvm/git/llvm/default.nix b/pkgs/development/compilers/llvm/git/llvm/default.nix index 4c895f81dbba..6dd263d65e6a 100644 --- a/pkgs/development/compilers/llvm/git/llvm/default.nix +++ b/pkgs/development/compilers/llvm/git/llvm/default.nix @@ -58,11 +58,6 @@ in stdenv.mkDerivation (rec { substituteInPlace cmake/modules/AddLLVM.cmake \ --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' "" - '' - # Patch llvm-config to return correct library path based on --link-{shared,static}. - + '' - substitute '${./outputs.patch}' ./outputs.patch --subst-var lib - patch -p1 < ./outputs.patch '' + '' # FileSystem permissions tests fail with various special bits substituteInPlace unittests/Support/CMakeLists.txt \ diff --git a/pkgs/development/compilers/llvm/git/llvm/outputs.patch b/pkgs/development/compilers/llvm/git/llvm/outputs.patch deleted file mode 100644 index 878460e05b8a..000000000000 --- a/pkgs/development/compilers/llvm/git/llvm/outputs.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 94d426b..37f7794 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -333,6 +333,11 @@ int main(int argc, char **argv) { - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -+ /// Nix-specific multiple-output handling: override ActiveLibDir -+ if (!IsInDevelopmentTree) { -+ ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX; -+ } -+ - /// We only use `shared library` mode in cases where the static library form - /// of the components provided are not available; note however that this is - /// skipped if we're run from within the build dir. However, once installed, From c70dca8249904e65fdb2cd6bbab6f4ab2fad2618 Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Fri, 31 Dec 2021 13:46:48 +0100 Subject: [PATCH 089/170] llvmPackages_*.libllvm: make llvm-config and llvm-config equivalent LLVM's build system creates NATIVE/bin/llvm-config by reexecuting cmake with entirely new flags. Problematically, the `CMAKE_INSTALL_*` flags are not inherited, causing llvm-config-native to return wrong installation paths, e. g. CMAKE_INSTALL_LIBDIR would default to `lib64` on x86_64-linux. Previously this was masked by outputs.patch which replaced ActiveLibDir with a string passed in from Nix, however `--cmakedir` for example would turn out to be wrong always, breaking cross-compilation of e. g. lld. Additionally LLVM_ENABLE_RTTI needs to be repassed, as it is used to determine if RTTI is available. Passing LLVM_LINK_LLVM_DYLIB is crucial if we are building LLVM non-statically: It influences the --shared-mode flag (which should indicate that -lLLVM is enough to link all components) and makes --link-shared work in the first place, i. e. llvm-config-native believes the built shared libs don't exist unless we repass this flag. Passing LLVM_LINK_LLVM_DYLIB=ON, however, makes the native build produce a full libLLVM.so which is something we don't want, so we introduce a patch which forces llvm-config to link statically against the LLVM components it needs. --- .../compilers/llvm/10/llvm/default.nix | 42 +++++++++++++++--- .../compilers/llvm/11/llvm/default.nix | 42 +++++++++++++++--- .../compilers/llvm/12/llvm/default.nix | 42 +++++++++++++++--- .../compilers/llvm/13/llvm/default.nix | 42 +++++++++++++++--- .../compilers/llvm/5/llvm/default.nix | 43 ++++++++++++++++--- .../compilers/llvm/6/llvm/default.nix | 43 ++++++++++++++++--- .../compilers/llvm/7/llvm/default.nix | 43 ++++++++++++++++--- .../compilers/llvm/8/llvm/default.nix | 42 +++++++++++++++--- .../compilers/llvm/9/llvm/default.nix | 42 +++++++++++++++--- .../compilers/llvm/git/llvm/default.nix | 42 +++++++++++++++--- .../llvm/llvm-config-link-static.patch | 12 ++++++ 11 files changed, 375 insertions(+), 60 deletions(-) create mode 100644 pkgs/development/compilers/llvm/llvm-config-link-static.patch diff --git a/pkgs/development/compilers/llvm/10/llvm/default.nix b/pkgs/development/compilers/llvm/10/llvm/default.nix index e49999117e6a..0fd8e173942d 100644 --- a/pkgs/development/compilers/llvm/10/llvm/default.nix +++ b/pkgs/development/compilers/llvm/10/llvm/default.nix @@ -57,6 +57,12 @@ in stdenv.mkDerivation (rec { propagatedBuildInputs = [ ncurses zlib ]; patches = [ + # When cross-compiling we configure llvm-config-native with an approximation + # of the flags used for the normal LLVM build. To avoid the need for building + # a native libLLVM.so (which would fail) we force llvm-config to be linked + # statically against the necessary LLVM components always. + ../../llvm-config-link-static.patch + ./gnu-install-dirs.patch # On older CPUs (e.g. Hydra/wendy) we'd be getting an error in this test. (fetchpatch { @@ -151,18 +157,28 @@ in stdenv.mkDerivation (rec { ln -sv $PWD/lib $out ''; - cmakeFlags = with stdenv; [ - "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + cmakeFlags = with stdenv; let + # These flags influence llvm-config's BuildVariables.inc in addition to the + # general build. We need to make sure these are also passed via + # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native + # will return different results from the cross llvm-config. + # + # Some flags don't need to be repassed because LLVM already does so (like + # CMAKE_BUILD_TYPE), others are irrelevant to the result. + flagsForLlvmConfig = [ + "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + "-DLLVM_ENABLE_RTTI=ON" + ] ++ optionals enableSharedLibraries [ + "-DLLVM_LINK_LLVM_DYLIB=ON" + ]; + in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc "-DLLVM_BUILD_TESTS=ON" "-DLLVM_ENABLE_FFI=ON" - "-DLLVM_ENABLE_RTTI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_ENABLE_DUMP=ON" - ] ++ optionals enableSharedLibraries [ - "-DLLVM_LINK_LLVM_DYLIB=ON" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" @@ -188,7 +204,21 @@ in stdenv.mkDerivation (rec { "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip" "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib" ]; - in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}" + # We need to repass the custom GNUInstallDirs values, otherwise CMake + # will choose them for us, leading to wrong results in llvm-config-native + nativeInstallFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin" + "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include" + "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib" + "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec" + ]; + in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=" + + lib.concatStringsSep ";" (lib.concatLists [ + flagsForLlvmConfig + nativeToolchainFlags + nativeInstallFlags + ]) ) ]; diff --git a/pkgs/development/compilers/llvm/11/llvm/default.nix b/pkgs/development/compilers/llvm/11/llvm/default.nix index 89659dd987aa..87642877cbc9 100644 --- a/pkgs/development/compilers/llvm/11/llvm/default.nix +++ b/pkgs/development/compilers/llvm/11/llvm/default.nix @@ -57,6 +57,12 @@ in stdenv.mkDerivation (rec { propagatedBuildInputs = [ ncurses zlib ]; patches = [ + # When cross-compiling we configure llvm-config-native with an approximation + # of the flags used for the normal LLVM build. To avoid the need for building + # a native libLLVM.so (which would fail) we force llvm-config to be linked + # statically against the necessary LLVM components always. + ../../llvm-config-link-static.patch + ./gnu-install-dirs.patch # On older CPUs (e.g. Hydra/wendy) we'd be getting an error in this test. (fetchpatch { @@ -152,18 +158,28 @@ in stdenv.mkDerivation (rec { # E.g. mesa.drivers use the build-id as a cache key (see #93946): LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1"; - cmakeFlags = with stdenv; [ - "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + cmakeFlags = with stdenv; let + # These flags influence llvm-config's BuildVariables.inc in addition to the + # general build. We need to make sure these are also passed via + # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native + # will return different results from the cross llvm-config. + # + # Some flags don't need to be repassed because LLVM already does so (like + # CMAKE_BUILD_TYPE), others are irrelevant to the result. + flagsForLlvmConfig = [ + "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + "-DLLVM_ENABLE_RTTI=ON" + ] ++ optionals enableSharedLibraries [ + "-DLLVM_LINK_LLVM_DYLIB=ON" + ]; + in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc "-DLLVM_BUILD_TESTS=ON" "-DLLVM_ENABLE_FFI=ON" - "-DLLVM_ENABLE_RTTI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_ENABLE_DUMP=ON" - ] ++ optionals enableSharedLibraries [ - "-DLLVM_LINK_LLVM_DYLIB=ON" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" @@ -189,7 +205,21 @@ in stdenv.mkDerivation (rec { "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip" "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib" ]; - in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}" + # We need to repass the custom GNUInstallDirs values, otherwise CMake + # will choose them for us, leading to wrong results in llvm-config-native + nativeInstallFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin" + "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include" + "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib" + "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec" + ]; + in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=" + + lib.concatStringsSep ";" (lib.concatLists [ + flagsForLlvmConfig + nativeToolchainFlags + nativeInstallFlags + ]) ) ]; diff --git a/pkgs/development/compilers/llvm/12/llvm/default.nix b/pkgs/development/compilers/llvm/12/llvm/default.nix index 00bce1fdaa52..60f248547303 100644 --- a/pkgs/development/compilers/llvm/12/llvm/default.nix +++ b/pkgs/development/compilers/llvm/12/llvm/default.nix @@ -58,6 +58,12 @@ in stdenv.mkDerivation (rec { ++ [ zlib ]; patches = [ + # When cross-compiling we configure llvm-config-native with an approximation + # of the flags used for the normal LLVM build. To avoid the need for building + # a native libLLVM.so (which would fail) we force llvm-config to be linked + # statically against the necessary LLVM components always. + ../../llvm-config-link-static.patch + ./gnu-install-dirs.patch # On older CPUs (e.g. Hydra/wendy) we'd be getting an error in this test. (fetchpatch { @@ -138,18 +144,28 @@ in stdenv.mkDerivation (rec { # E.g. mesa.drivers use the build-id as a cache key (see #93946): LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1"; - cmakeFlags = with stdenv; [ - "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + cmakeFlags = with stdenv; let + # These flags influence llvm-config's BuildVariables.inc in addition to the + # general build. We need to make sure these are also passed via + # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native + # will return different results from the cross llvm-config. + # + # Some flags don't need to be repassed because LLVM already does so (like + # CMAKE_BUILD_TYPE), others are irrelevant to the result. + flagsForLlvmConfig = [ + "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + "-DLLVM_ENABLE_RTTI=ON" + ] ++ optionals enableSharedLibraries [ + "-DLLVM_LINK_LLVM_DYLIB=ON" + ]; + in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc "-DLLVM_BUILD_TESTS=ON" "-DLLVM_ENABLE_FFI=ON" - "-DLLVM_ENABLE_RTTI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_ENABLE_DUMP=ON" - ] ++ optionals enableSharedLibraries [ - "-DLLVM_LINK_LLVM_DYLIB=ON" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" @@ -175,7 +191,21 @@ in stdenv.mkDerivation (rec { "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip" "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib" ]; - in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}" + # We need to repass the custom GNUInstallDirs values, otherwise CMake + # will choose them for us, leading to wrong results in llvm-config-native + nativeInstallFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin" + "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include" + "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib" + "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec" + ]; + in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=" + + lib.concatStringsSep ";" (lib.concatLists [ + flagsForLlvmConfig + nativeToolchainFlags + nativeInstallFlags + ]) ) ]; diff --git a/pkgs/development/compilers/llvm/13/llvm/default.nix b/pkgs/development/compilers/llvm/13/llvm/default.nix index 0b17ae326557..e5b05004901e 100644 --- a/pkgs/development/compilers/llvm/13/llvm/default.nix +++ b/pkgs/development/compilers/llvm/13/llvm/default.nix @@ -52,6 +52,12 @@ in stdenv.mkDerivation (rec { checkInputs = [ which ]; patches = [ + # When cross-compiling we configure llvm-config-native with an approximation + # of the flags used for the normal LLVM build. To avoid the need for building + # a native libLLVM.so (which would fail) we force llvm-config to be linked + # statically against the necessary LLVM components always. + ../../llvm-config-link-static.patch + ./gnu-install-dirs.patch # Fix random compiler crashes: https://bugs.llvm.org/show_bug.cgi?id=50611 @@ -104,18 +110,28 @@ in stdenv.mkDerivation (rec { # E.g. mesa.drivers use the build-id as a cache key (see #93946): LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1"; - cmakeFlags = with stdenv; [ - "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + cmakeFlags = with stdenv; let + # These flags influence llvm-config's BuildVariables.inc in addition to the + # general build. We need to make sure these are also passed via + # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native + # will return different results from the cross llvm-config. + # + # Some flags don't need to be repassed because LLVM already does so (like + # CMAKE_BUILD_TYPE), others are irrelevant to the result. + flagsForLlvmConfig = [ + "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + "-DLLVM_ENABLE_RTTI=ON" + ] ++ optionals enableSharedLibraries [ + "-DLLVM_LINK_LLVM_DYLIB=ON" + ]; + in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc "-DLLVM_BUILD_TESTS=ON" "-DLLVM_ENABLE_FFI=ON" - "-DLLVM_ENABLE_RTTI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_ENABLE_DUMP=ON" - ] ++ optionals enableSharedLibraries [ - "-DLLVM_LINK_LLVM_DYLIB=ON" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" @@ -141,7 +157,21 @@ in stdenv.mkDerivation (rec { "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip" "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib" ]; - in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}" + # We need to repass the custom GNUInstallDirs values, otherwise CMake + # will choose them for us, leading to wrong results in llvm-config-native + nativeInstallFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin" + "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include" + "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib" + "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec" + ]; + in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=" + + lib.concatStringsSep ";" (lib.concatLists [ + flagsForLlvmConfig + nativeToolchainFlags + nativeInstallFlags + ]) ) ]; diff --git a/pkgs/development/compilers/llvm/5/llvm/default.nix b/pkgs/development/compilers/llvm/5/llvm/default.nix index 4cb25cf16b06..761e22228685 100644 --- a/pkgs/development/compilers/llvm/5/llvm/default.nix +++ b/pkgs/development/compilers/llvm/5/llvm/default.nix @@ -65,6 +65,13 @@ stdenv.mkDerivation ({ # sha256 = "0injj1hqgrbcbihhwp2nbal88jfykad30r54f2cdcx7gws2fcy8i"; # stripLen = 1; #}) + + # When cross-compiling we configure llvm-config-native with an approximation + # of the flags used for the normal LLVM build. To avoid the need for building + # a native libLLVM.so (which would fail) we force llvm-config to be linked + # statically against the necessary LLVM components always. + ../../llvm-config-link-static.patch + ./gnu-install-dirs.patch # Fix invalid std::string(nullptr) for GCC 12 @@ -124,20 +131,30 @@ stdenv.mkDerivation ({ ln -sv $PWD/lib $out ''; - cmakeFlags = with stdenv; [ - "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + cmakeFlags = with stdenv; let + # These flags influence llvm-config's BuildVariables.inc in addition to the + # general build. We need to make sure these are also passed via + # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native + # will return different results from the cross llvm-config. + # + # Some flags don't need to be repassed because LLVM already does so (like + # CMAKE_BUILD_TYPE), others are irrelevant to the result. + flagsForLlvmConfig = [ + "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + "-DLLVM_ENABLE_RTTI=ON" + ] ++ optionals enableSharedLibraries [ + "-DLLVM_LINK_LLVM_DYLIB=ON" + ]; + in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc "-DLLVM_BUILD_TESTS=ON" "-DLLVM_ENABLE_FFI=ON" - "-DLLVM_ENABLE_RTTI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DTARGET_TRIPLE=${stdenv.hostPlatform.config}" ] - ++ lib.optional enableSharedLibraries - "-DLLVM_LINK_LLVM_DYLIB=ON" ++ lib.optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" @@ -164,7 +181,21 @@ stdenv.mkDerivation ({ "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip" "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib" ]; - in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}" + # We need to repass the custom GNUInstallDirs values, otherwise CMake + # will choose them for us, leading to wrong results in llvm-config-native + nativeInstallFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin" + "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include" + "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib" + "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec" + ]; + in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=" + + lib.concatStringsSep ";" (lib.concatLists [ + flagsForLlvmConfig + nativeToolchainFlags + nativeInstallFlags + ]) ) ]; diff --git a/pkgs/development/compilers/llvm/6/llvm/default.nix b/pkgs/development/compilers/llvm/6/llvm/default.nix index de87c7a3527c..0515410b804b 100644 --- a/pkgs/development/compilers/llvm/6/llvm/default.nix +++ b/pkgs/development/compilers/llvm/6/llvm/default.nix @@ -63,6 +63,13 @@ stdenv.mkDerivation ({ includes = [ "test/tools/gold/X86/common.ll" ]; sha256 = "0fxgrxmfnjx17w3lcq19rk68b2xksh1bynz3ina784kma7hp4wdb"; }) + + # When cross-compiling we configure llvm-config-native with an approximation + # of the flags used for the normal LLVM build. To avoid the need for building + # a native libLLVM.so (which would fail) we force llvm-config to be linked + # statically against the necessary LLVM components always. + ../../llvm-config-link-static.patch + ./gnu-install-dirs.patch # Fix invalid std::string(nullptr) for GCC 12 @@ -119,19 +126,29 @@ stdenv.mkDerivation ({ ln -sv $PWD/lib $out ''; - cmakeFlags = with stdenv; [ - "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + cmakeFlags = with stdenv; let + # These flags influence llvm-config's BuildVariables.inc in addition to the + # general build. We need to make sure these are also passed via + # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native + # will return different results from the cross llvm-config. + # + # Some flags don't need to be repassed because LLVM already does so (like + # CMAKE_BUILD_TYPE), others are irrelevant to the result. + flagsForLlvmConfig = [ + "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + "-DLLVM_ENABLE_RTTI=ON" + ] ++ optionals enableSharedLibraries [ + "-DLLVM_LINK_LLVM_DYLIB=ON" + ]; + in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc "-DLLVM_BUILD_TESTS=ON" "-DLLVM_ENABLE_FFI=ON" - "-DLLVM_ENABLE_RTTI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=WebAssembly" "-DLLVM_ENABLE_DUMP=ON" - ] ++ optionals enableSharedLibraries [ - "-DLLVM_LINK_LLVM_DYLIB=ON" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" @@ -157,7 +174,21 @@ stdenv.mkDerivation ({ "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip" "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib" ]; - in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}" + # We need to repass the custom GNUInstallDirs values, otherwise CMake + # will choose them for us, leading to wrong results in llvm-config-native + nativeInstallFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin" + "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include" + "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib" + "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec" + ]; + in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=" + + lib.concatStringsSep ";" (lib.concatLists [ + flagsForLlvmConfig + nativeToolchainFlags + nativeInstallFlags + ]) ) ]; diff --git a/pkgs/development/compilers/llvm/7/llvm/default.nix b/pkgs/development/compilers/llvm/7/llvm/default.nix index 3c04d07c6b9b..6136f6d3ac59 100644 --- a/pkgs/development/compilers/llvm/7/llvm/default.nix +++ b/pkgs/development/compilers/llvm/7/llvm/default.nix @@ -67,6 +67,13 @@ in stdenv.mkDerivation ({ url = "https://github.com/llvm-mirror/llvm/commit/cc1f2a595ead516812a6c50398f0f3480ebe031f.patch"; sha256 = "0k6k1p5yisgwx417a67s7sr9930rqh1n0zv5jvply8vjjy4b3kf8"; }) + + # When cross-compiling we configure llvm-config-native with an approximation + # of the flags used for the normal LLVM build. To avoid the need for building + # a native libLLVM.so (which would fail) we force llvm-config to be linked + # statically against the necessary LLVM components always. + ../../llvm-config-link-static.patch + ./gnu-install-dirs.patch # Fix invalid std::string(nullptr) for GCC 12 @@ -138,19 +145,29 @@ in stdenv.mkDerivation ({ ln -sv $PWD/lib $out ''; - cmakeFlags = with stdenv; [ - "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + cmakeFlags = with stdenv; let + # These flags influence llvm-config's BuildVariables.inc in addition to the + # general build. We need to make sure these are also passed via + # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native + # will return different results from the cross llvm-config. + # + # Some flags don't need to be repassed because LLVM already does so (like + # CMAKE_BUILD_TYPE), others are irrelevant to the result. + flagsForLlvmConfig = [ + "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + "-DLLVM_ENABLE_RTTI=ON" + ] ++ optionals enableSharedLibraries [ + "-DLLVM_LINK_LLVM_DYLIB=ON" + ]; + in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc "-DLLVM_BUILD_TESTS=ON" "-DLLVM_ENABLE_FFI=ON" - "-DLLVM_ENABLE_RTTI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=WebAssembly" "-DLLVM_ENABLE_DUMP=ON" - ] ++ optionals enableSharedLibraries [ - "-DLLVM_LINK_LLVM_DYLIB=ON" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" @@ -176,7 +193,21 @@ in stdenv.mkDerivation ({ "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip" "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib" ]; - in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}" + # We need to repass the custom GNUInstallDirs values, otherwise CMake + # will choose them for us, leading to wrong results in llvm-config-native + nativeInstallFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin" + "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include" + "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib" + "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec" + ]; + in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=" + + lib.concatStringsSep ";" (lib.concatLists [ + flagsForLlvmConfig + nativeToolchainFlags + nativeInstallFlags + ]) ) ]; diff --git a/pkgs/development/compilers/llvm/8/llvm/default.nix b/pkgs/development/compilers/llvm/8/llvm/default.nix index bcc8b1c7f26d..a3ca001b3ac5 100644 --- a/pkgs/development/compilers/llvm/8/llvm/default.nix +++ b/pkgs/development/compilers/llvm/8/llvm/default.nix @@ -57,6 +57,12 @@ in stdenv.mkDerivation ({ propagatedBuildInputs = [ ncurses zlib ]; patches = [ + # When cross-compiling we configure llvm-config-native with an approximation + # of the flags used for the normal LLVM build. To avoid the need for building + # a native libLLVM.so (which would fail) we force llvm-config to be linked + # statically against the necessary LLVM components always. + ../../llvm-config-link-static.patch + # Fix missing includes for GCC 10 (fetchpatch { url = "https://bugs.gentoo.org/attachment.cgi?id=612792"; @@ -133,18 +139,28 @@ in stdenv.mkDerivation ({ ln -sv $PWD/lib $out ''; - cmakeFlags = with stdenv; [ - "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + cmakeFlags = with stdenv; let + # These flags influence llvm-config's BuildVariables.inc in addition to the + # general build. We need to make sure these are also passed via + # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native + # will return different results from the cross llvm-config. + # + # Some flags don't need to be repassed because LLVM already does so (like + # CMAKE_BUILD_TYPE), others are irrelevant to the result. + flagsForLlvmConfig = [ + "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + "-DLLVM_ENABLE_RTTI=ON" + ] ++ optionals enableSharedLibraries [ + "-DLLVM_LINK_LLVM_DYLIB=ON" + ]; + in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc "-DLLVM_BUILD_TESTS=ON" "-DLLVM_ENABLE_FFI=ON" - "-DLLVM_ENABLE_RTTI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_ENABLE_DUMP=ON" - ] ++ optionals enableSharedLibraries [ - "-DLLVM_LINK_LLVM_DYLIB=ON" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" @@ -170,7 +186,21 @@ in stdenv.mkDerivation ({ "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip" "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib" ]; - in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}" + # We need to repass the custom GNUInstallDirs values, otherwise CMake + # will choose them for us, leading to wrong results in llvm-config-native + nativeInstallFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin" + "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include" + "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib" + "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec" + ]; + in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=" + + lib.concatStringsSep ";" (lib.concatLists [ + flagsForLlvmConfig + nativeToolchainFlags + nativeInstallFlags + ]) ) ]; diff --git a/pkgs/development/compilers/llvm/9/llvm/default.nix b/pkgs/development/compilers/llvm/9/llvm/default.nix index 905279b1bfc3..e5a4d766d9a3 100644 --- a/pkgs/development/compilers/llvm/9/llvm/default.nix +++ b/pkgs/development/compilers/llvm/9/llvm/default.nix @@ -57,6 +57,12 @@ in stdenv.mkDerivation (rec { propagatedBuildInputs = [ ncurses zlib ]; patches = [ + # When cross-compiling we configure llvm-config-native with an approximation + # of the flags used for the normal LLVM build. To avoid the need for building + # a native libLLVM.so (which would fail) we force llvm-config to be linked + # statically against the necessary LLVM components always. + ../../llvm-config-link-static.patch + ./gnu-install-dirs.patch # Force a test to evaluate the saved benchmark for a CPU for which LLVM has # an execution model. See NixOS/nixpkgs#119673. @@ -148,18 +154,28 @@ in stdenv.mkDerivation (rec { ln -sv $PWD/lib $out ''; - cmakeFlags = with stdenv; [ - "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + cmakeFlags = with stdenv; let + # These flags influence llvm-config's BuildVariables.inc in addition to the + # general build. We need to make sure these are also passed via + # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native + # will return different results from the cross llvm-config. + # + # Some flags don't need to be repassed because LLVM already does so (like + # CMAKE_BUILD_TYPE), others are irrelevant to the result. + flagsForLlvmConfig = [ + "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + "-DLLVM_ENABLE_RTTI=ON" + ] ++ optionals enableSharedLibraries [ + "-DLLVM_LINK_LLVM_DYLIB=ON" + ]; + in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc "-DLLVM_BUILD_TESTS=ON" "-DLLVM_ENABLE_FFI=ON" - "-DLLVM_ENABLE_RTTI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_ENABLE_DUMP=ON" - ] ++ optionals enableSharedLibraries [ - "-DLLVM_LINK_LLVM_DYLIB=ON" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" @@ -185,7 +201,21 @@ in stdenv.mkDerivation (rec { "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip" "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib" ]; - in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}" + # We need to repass the custom GNUInstallDirs values, otherwise CMake + # will choose them for us, leading to wrong results in llvm-config-native + nativeInstallFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin" + "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include" + "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib" + "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec" + ]; + in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=" + + lib.concatStringsSep ";" (lib.concatLists [ + flagsForLlvmConfig + nativeToolchainFlags + nativeInstallFlags + ]) ) ]; diff --git a/pkgs/development/compilers/llvm/git/llvm/default.nix b/pkgs/development/compilers/llvm/git/llvm/default.nix index 6dd263d65e6a..60be62980e91 100644 --- a/pkgs/development/compilers/llvm/git/llvm/default.nix +++ b/pkgs/development/compilers/llvm/git/llvm/default.nix @@ -51,6 +51,12 @@ in stdenv.mkDerivation (rec { checkInputs = [ which ]; patches = [ + # When cross-compiling we configure llvm-config-native with an approximation + # of the flags used for the normal LLVM build. To avoid the need for building + # a native libLLVM.so (which would fail) we force llvm-config to be linked + # statically against the necessary LLVM components always. + ../../llvm-config-link-static.patch + ./gnu-install-dirs.patch ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch; @@ -96,18 +102,28 @@ in stdenv.mkDerivation (rec { # E.g. mesa.drivers use the build-id as a cache key (see #93946): LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1"; - cmakeFlags = with stdenv; [ - "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + cmakeFlags = with stdenv; let + # These flags influence llvm-config's BuildVariables.inc in addition to the + # general build. We need to make sure these are also passed via + # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native + # will return different results from the cross llvm-config. + # + # Some flags don't need to be repassed because LLVM already does so (like + # CMAKE_BUILD_TYPE), others are irrelevant to the result. + flagsForLlvmConfig = [ + "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/" + "-DLLVM_ENABLE_RTTI=ON" + ] ++ optionals enableSharedLibraries [ + "-DLLVM_LINK_LLVM_DYLIB=ON" + ]; + in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc "-DLLVM_BUILD_TESTS=ON" "-DLLVM_ENABLE_FFI=ON" - "-DLLVM_ENABLE_RTTI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_ENABLE_DUMP=ON" - ] ++ optionals enableSharedLibraries [ - "-DLLVM_LINK_LLVM_DYLIB=ON" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" @@ -133,7 +149,21 @@ in stdenv.mkDerivation (rec { "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip" "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib" ]; - in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=${lib.concatStringsSep ";" nativeToolchainFlags}" + # We need to repass the custom GNUInstallDirs values, otherwise CMake + # will choose them for us, leading to wrong results in llvm-config-native + nativeInstallFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin" + "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include" + "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib" + "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec" + ]; + in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list=" + + lib.concatStringsSep ";" (lib.concatLists [ + flagsForLlvmConfig + nativeToolchainFlags + nativeInstallFlags + ]) ) ]; diff --git a/pkgs/development/compilers/llvm/llvm-config-link-static.patch b/pkgs/development/compilers/llvm/llvm-config-link-static.patch new file mode 100644 index 000000000000..3881cc5206e2 --- /dev/null +++ b/pkgs/development/compilers/llvm/llvm-config-link-static.patch @@ -0,0 +1,12 @@ +diff --git llvm/tools/llvm-config/CMakeLists.txt llvm/tools/llvm-config/CMakeLists.txt +index 16ba54c0cf2f..20b017195e84 100644 +--- llvm/tools/llvm-config/CMakeLists.txt ++++ llvm/tools/llvm-config/CMakeLists.txt +@@ -6,6 +6,7 @@ set(BUILDVARIABLES_OBJPATH ${CMAKE_CURRENT_BINARY_DIR}/BuildVariables.inc) + # Add the llvm-config tool. + add_llvm_tool(llvm-config + llvm-config.cpp ++ DISABLE_LLVM_LINK_LLVM_DYLIB + ) + + # Compute the substitution values for various items. From 7e2fff28e773650d9356c44b096019fe3ef30841 Mon Sep 17 00:00:00 2001 From: Felix Buehler Date: Tue, 4 Jan 2022 16:40:24 +0100 Subject: [PATCH 090/170] hunspell: switch to fetchFromGitHub --- pkgs/development/libraries/hunspell/default.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/hunspell/default.nix b/pkgs/development/libraries/hunspell/default.nix index fe4fc1e6d338..44f49adbd3a6 100644 --- a/pkgs/development/libraries/hunspell/default.nix +++ b/pkgs/development/libraries/hunspell/default.nix @@ -1,12 +1,14 @@ -{ lib, stdenv, fetchurl, fetchpatch, ncurses, readline, autoreconfHook }: +{ lib, stdenv, fetchFromGitHub, fetchpatch, ncurses, readline, autoreconfHook }: stdenv.mkDerivation rec { version = "1.7.0"; pname = "hunspell"; - src = fetchurl { - url = "https://github.com/hunspell/hunspell/archive/v${version}.tar.gz"; - sha256 = "12mwwqz6qkx7q1lg9vpjiiwh4fk4c8xs6g6g0xa2ia0hp5pbh9xv"; + src = fetchFromGitHub { + owner = "hunspell"; + repo = "hunspell"; + rev = "v${version}"; + sha256 = "sha256-YSJztik0QTZFNR8k8Xu1hakyE16NziDavYVkEUCbtGM="; }; outputs = [ "bin" "dev" "out" "man" ]; From f4d0af8cac928aef6fff19eb60f39c7c3828dbed Mon Sep 17 00:00:00 2001 From: Bernardo Meurer Date: Mon, 3 Jan 2022 16:43:12 -0300 Subject: [PATCH 091/170] python3Packages.flit: 3.2.0 -> 3.6.0 --- .../python-modules/flit-core/default.nix | 7 +------ pkgs/development/python-modules/flit/default.nix | 14 ++++++-------- 2 files changed, 7 insertions(+), 14 deletions(-) diff --git a/pkgs/development/python-modules/flit-core/default.nix b/pkgs/development/python-modules/flit-core/default.nix index 7cb9ed2c6c45..35bba06f1f36 100644 --- a/pkgs/development/python-modules/flit-core/default.nix +++ b/pkgs/development/python-modules/flit-core/default.nix @@ -2,12 +2,11 @@ , buildPythonPackage , callPackage , flit -, toml }: buildPythonPackage rec { pname = "flit-core"; - version = "3.2.0"; + version = "3.6.0"; format = "pyproject"; outputs = [ @@ -21,10 +20,6 @@ buildPythonPackage rec { cd flit_core ''; - propagatedBuildInputs = [ - toml - ]; - postInstall = '' mkdir $testsout cp -R ../tests $testsout/tests diff --git a/pkgs/development/python-modules/flit/default.nix b/pkgs/development/python-modules/flit/default.nix index 0a6d1ba3158a..830ed2702b89 100644 --- a/pkgs/development/python-modules/flit/default.nix +++ b/pkgs/development/python-modules/flit/default.nix @@ -3,13 +3,12 @@ , fetchFromGitHub , docutils , requests -, requests_download -, zipfile36 -, pythonOlder , pytest , testpath , responses , flit-core +, tomli +, tomli-w }: # Flit is actually an application to build universal wheels. @@ -19,14 +18,14 @@ buildPythonPackage rec { pname = "flit"; - version = "3.2.0"; + version = "3.6.0"; format = "pyproject"; src = fetchFromGitHub { owner = "takluyver"; repo = "flit"; rev = version; - sha256 = "sha256-zN+/oAyXBo6Ho7n/xhOQ2mjtPGKA1anCvl3sVf7t+Do="; + sha256 = "sha256-D3q/1g6njrrmizooGmzNd9g2nKs00dMGj9jrrv3Y6HQ="; }; nativeBuildInputs = [ @@ -36,10 +35,9 @@ buildPythonPackage rec { propagatedBuildInputs = [ docutils requests - requests_download flit-core - ] ++ lib.optionals (pythonOlder "3.6") [ - zipfile36 + tomli + tomli-w ]; checkInputs = [ pytest testpath responses ]; From e5ccc412d27aafef9b5707a96e16b60d8e7c1d8f Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Thu, 30 Dec 2021 18:07:06 +0100 Subject: [PATCH 092/170] llvmPackages_*.libllvm: only build tests if doCheck To make the value of doCheck in the argument attribute set accurate we also need to include the condition for cross compilation which normally is added by stdenv.mkDerivation. --- pkgs/development/compilers/llvm/10/llvm/default.nix | 5 +++-- pkgs/development/compilers/llvm/11/llvm/default.nix | 5 +++-- pkgs/development/compilers/llvm/12/llvm/default.nix | 5 +++-- pkgs/development/compilers/llvm/13/llvm/default.nix | 5 +++-- pkgs/development/compilers/llvm/5/llvm/default.nix | 7 ++++--- pkgs/development/compilers/llvm/6/llvm/default.nix | 7 ++++--- pkgs/development/compilers/llvm/7/llvm/default.nix | 7 ++++--- pkgs/development/compilers/llvm/8/llvm/default.nix | 7 ++++--- pkgs/development/compilers/llvm/9/llvm/default.nix | 5 +++-- pkgs/development/compilers/llvm/git/llvm/default.nix | 5 +++-- 10 files changed, 34 insertions(+), 24 deletions(-) diff --git a/pkgs/development/compilers/llvm/10/llvm/default.nix b/pkgs/development/compilers/llvm/10/llvm/default.nix index 0fd8e173942d..bb1b90b36a92 100644 --- a/pkgs/development/compilers/llvm/10/llvm/default.nix +++ b/pkgs/development/compilers/llvm/10/llvm/default.nix @@ -174,7 +174,7 @@ in stdenv.mkDerivation (rec { in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc - "-DLLVM_BUILD_TESTS=ON" + "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" @@ -248,7 +248,8 @@ in stdenv.mkDerivation (rec { cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native ''; - doCheck = stdenv.isLinux && (!stdenv.isx86_32); + doCheck = stdenv.isLinux && (!stdenv.isx86_32) + && (stdenv.hostPlatform == stdenv.buildPlatform); checkTarget = "check-all"; diff --git a/pkgs/development/compilers/llvm/11/llvm/default.nix b/pkgs/development/compilers/llvm/11/llvm/default.nix index 87642877cbc9..f1771ef3003a 100644 --- a/pkgs/development/compilers/llvm/11/llvm/default.nix +++ b/pkgs/development/compilers/llvm/11/llvm/default.nix @@ -175,7 +175,7 @@ in stdenv.mkDerivation (rec { in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc - "-DLLVM_BUILD_TESTS=ON" + "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" @@ -249,7 +249,8 @@ in stdenv.mkDerivation (rec { cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native ''; - doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl) && (!stdenv.hostPlatform.isRiscV); + doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl) && (!stdenv.hostPlatform.isRiscV) + && (stdenv.hostPlatform == stdenv.buildPlatform); checkTarget = "check-all"; diff --git a/pkgs/development/compilers/llvm/12/llvm/default.nix b/pkgs/development/compilers/llvm/12/llvm/default.nix index 60f248547303..80d1a6d9995a 100644 --- a/pkgs/development/compilers/llvm/12/llvm/default.nix +++ b/pkgs/development/compilers/llvm/12/llvm/default.nix @@ -161,7 +161,7 @@ in stdenv.mkDerivation (rec { in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc - "-DLLVM_BUILD_TESTS=ON" + "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" @@ -235,7 +235,8 @@ in stdenv.mkDerivation (rec { cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native ''; - doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl); + doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl) + && (stdenv.hostPlatform == stdenv.buildPlatform); checkTarget = "check-all"; diff --git a/pkgs/development/compilers/llvm/13/llvm/default.nix b/pkgs/development/compilers/llvm/13/llvm/default.nix index e5b05004901e..917240b03168 100644 --- a/pkgs/development/compilers/llvm/13/llvm/default.nix +++ b/pkgs/development/compilers/llvm/13/llvm/default.nix @@ -127,7 +127,7 @@ in stdenv.mkDerivation (rec { in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc - "-DLLVM_BUILD_TESTS=ON" + "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" @@ -201,7 +201,8 @@ in stdenv.mkDerivation (rec { cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native ''; - doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl); + doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl) + && (stdenv.hostPlatform == stdenv.buildPlatform); checkTarget = "check-all"; diff --git a/pkgs/development/compilers/llvm/5/llvm/default.nix b/pkgs/development/compilers/llvm/5/llvm/default.nix index 761e22228685..cf668cd566a6 100644 --- a/pkgs/development/compilers/llvm/5/llvm/default.nix +++ b/pkgs/development/compilers/llvm/5/llvm/default.nix @@ -27,7 +27,7 @@ let imap (i: _: concatStringsSep "." (take i parts)) parts; in -stdenv.mkDerivation ({ +stdenv.mkDerivation (rec { pname = "llvm"; inherit version; @@ -148,7 +148,7 @@ stdenv.mkDerivation ({ in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc - "-DLLVM_BUILD_TESTS=ON" + "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" @@ -226,7 +226,8 @@ stdenv.mkDerivation ({ cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native ''; - doCheck = stdenv.isLinux && (!stdenv.isi686); + doCheck = stdenv.isLinux && (!stdenv.isi686) + && (stdenv.hostPlatform == stdenv.buildPlatform); checkTarget = "check-all"; diff --git a/pkgs/development/compilers/llvm/6/llvm/default.nix b/pkgs/development/compilers/llvm/6/llvm/default.nix index 0515410b804b..61f9234274d3 100644 --- a/pkgs/development/compilers/llvm/6/llvm/default.nix +++ b/pkgs/development/compilers/llvm/6/llvm/default.nix @@ -27,7 +27,7 @@ let imap (i: _: concatStringsSep "." (take i parts)) parts; in -stdenv.mkDerivation ({ +stdenv.mkDerivation (rec { pname = "llvm"; inherit version; @@ -143,7 +143,7 @@ stdenv.mkDerivation ({ in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc - "-DLLVM_BUILD_TESTS=ON" + "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" @@ -219,7 +219,8 @@ stdenv.mkDerivation ({ cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native ''; - doCheck = stdenv.isLinux && (!stdenv.isi686); + doCheck = stdenv.isLinux && (!stdenv.isi686) + && (stdenv.hostPlatform == stdenv.buildPlatform); checkTarget = "check-all"; diff --git a/pkgs/development/compilers/llvm/7/llvm/default.nix b/pkgs/development/compilers/llvm/7/llvm/default.nix index 6136f6d3ac59..b324e1a0e4d6 100644 --- a/pkgs/development/compilers/llvm/7/llvm/default.nix +++ b/pkgs/development/compilers/llvm/7/llvm/default.nix @@ -31,7 +31,7 @@ let let parts = splitVersion release_version; in imap (i: _: concatStringsSep "." (take i parts)) parts; -in stdenv.mkDerivation ({ +in stdenv.mkDerivation (rec { pname = "llvm"; inherit version; @@ -162,7 +162,7 @@ in stdenv.mkDerivation ({ in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc - "-DLLVM_BUILD_TESTS=ON" + "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" @@ -238,7 +238,8 @@ in stdenv.mkDerivation ({ cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native ''; - doCheck = stdenv.isLinux && (!stdenv.isx86_32); + doCheck = stdenv.isLinux && (!stdenv.isx86_32) + && (stdenv.hostPlatform == stdenv.buildPlatform); checkTarget = "check-all"; diff --git a/pkgs/development/compilers/llvm/8/llvm/default.nix b/pkgs/development/compilers/llvm/8/llvm/default.nix index a3ca001b3ac5..efd1707eb337 100644 --- a/pkgs/development/compilers/llvm/8/llvm/default.nix +++ b/pkgs/development/compilers/llvm/8/llvm/default.nix @@ -30,7 +30,7 @@ let shortVersion = with lib; concatStringsSep "." (take 1 (splitVersion release_version)); -in stdenv.mkDerivation ({ +in stdenv.mkDerivation (rec { pname = "llvm"; inherit version; @@ -156,7 +156,7 @@ in stdenv.mkDerivation ({ in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc - "-DLLVM_BUILD_TESTS=ON" + "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" @@ -230,7 +230,8 @@ in stdenv.mkDerivation ({ cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native ''; - doCheck = stdenv.isLinux && (!stdenv.isx86_32); + doCheck = stdenv.isLinux && (!stdenv.isx86_32) + && (stdenv.hostPlatform == stdenv.buildPlatform); checkTarget = "check-all"; diff --git a/pkgs/development/compilers/llvm/9/llvm/default.nix b/pkgs/development/compilers/llvm/9/llvm/default.nix index e5a4d766d9a3..1dd1455ed6d6 100644 --- a/pkgs/development/compilers/llvm/9/llvm/default.nix +++ b/pkgs/development/compilers/llvm/9/llvm/default.nix @@ -171,7 +171,7 @@ in stdenv.mkDerivation (rec { in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc - "-DLLVM_BUILD_TESTS=ON" + "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" @@ -245,7 +245,8 @@ in stdenv.mkDerivation (rec { cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native ''; - doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isRiscV); + doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isRiscV) + && (stdenv.hostPlatform == stdenv.buildPlatform); checkTarget = "check-all"; diff --git a/pkgs/development/compilers/llvm/git/llvm/default.nix b/pkgs/development/compilers/llvm/git/llvm/default.nix index 60be62980e91..956919d3af01 100644 --- a/pkgs/development/compilers/llvm/git/llvm/default.nix +++ b/pkgs/development/compilers/llvm/git/llvm/default.nix @@ -119,7 +119,7 @@ in stdenv.mkDerivation (rec { in flagsForLlvmConfig ++ [ "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc - "-DLLVM_BUILD_TESTS=ON" + "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" @@ -193,7 +193,8 @@ in stdenv.mkDerivation (rec { cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native ''; - doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl); + doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl) + && (stdenv.hostPlatform == stdenv.buildPlatform); checkTarget = "check-all"; From e4fddecdb38913dec4e2819a1c879aeca5dca336 Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Thu, 30 Dec 2021 18:10:14 +0100 Subject: [PATCH 093/170] llvmPackages_{11,12,13,git}.libllvm: enable static build The main thing we need to pass LLVM_ENABLE_PIC=OFF to prevent LLVM from building shared objects because our cc-wrapper is incapable of producing shared objects. Building LLVM statically also influences other LLVM projects like clang and lld -- which can be built linked fully statically with this change. --- pkgs/development/compilers/llvm/11/llvm/default.nix | 10 ++++++++++ pkgs/development/compilers/llvm/12/llvm/default.nix | 8 ++++++++ pkgs/development/compilers/llvm/13/llvm/default.nix | 8 ++++++++ pkgs/development/compilers/llvm/git/llvm/default.nix | 8 ++++++++ 4 files changed, 34 insertions(+) diff --git a/pkgs/development/compilers/llvm/11/llvm/default.nix b/pkgs/development/compilers/llvm/11/llvm/default.nix index f1771ef3003a..e8cfd23faa7e 100644 --- a/pkgs/development/compilers/llvm/11/llvm/default.nix +++ b/pkgs/development/compilers/llvm/11/llvm/default.nix @@ -180,6 +180,16 @@ in stdenv.mkDerivation (rec { "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_ENABLE_DUMP=ON" + ] ++ optionals stdenv.hostPlatform.isStatic [ + # Disables building of shared libs, -fPIC is still injected by cc-wrapper + "-DLLVM_ENABLE_PIC=OFF" + "-DLLVM_BUILD_STATIC=ON" + # libxml2 needs to be disabled because the LLVM build system ignores its .la + # file and doesn't link zlib as well. + # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812 + "-DLLVM_ENABLE_LIBXML2=OFF" + # This is a Shared Library not tied to LLVM_ENABLE_PIC + "-DLLVM_TOOL_REMARKS_SHLIB_BUILD=OFF" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" diff --git a/pkgs/development/compilers/llvm/12/llvm/default.nix b/pkgs/development/compilers/llvm/12/llvm/default.nix index 80d1a6d9995a..04321b3598cf 100644 --- a/pkgs/development/compilers/llvm/12/llvm/default.nix +++ b/pkgs/development/compilers/llvm/12/llvm/default.nix @@ -166,6 +166,14 @@ in stdenv.mkDerivation (rec { "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_ENABLE_DUMP=ON" + ] ++ optionals stdenv.hostPlatform.isStatic [ + # Disables building of shared libs, -fPIC is still injected by cc-wrapper + "-DLLVM_ENABLE_PIC=OFF" + "-DLLVM_BUILD_STATIC=ON" + # libxml2 needs to be disabled because the LLVM build system ignores its .la + # file and doesn't link zlib as well. + # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812 + "-DLLVM_ENABLE_LIBXML2=OFF" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" diff --git a/pkgs/development/compilers/llvm/13/llvm/default.nix b/pkgs/development/compilers/llvm/13/llvm/default.nix index 917240b03168..abfb2b36d18f 100644 --- a/pkgs/development/compilers/llvm/13/llvm/default.nix +++ b/pkgs/development/compilers/llvm/13/llvm/default.nix @@ -132,6 +132,14 @@ in stdenv.mkDerivation (rec { "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_ENABLE_DUMP=ON" + ] ++ optionals stdenv.hostPlatform.isStatic [ + # Disables building of shared libs, -fPIC is still injected by cc-wrapper + "-DLLVM_ENABLE_PIC=OFF" + "-DLLVM_BUILD_STATIC=ON" + # libxml2 needs to be disabled because the LLVM build system ignores its .la + # file and doesn't link zlib as well. + # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812 + "-DLLVM_ENABLE_LIBXML2=OFF" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" diff --git a/pkgs/development/compilers/llvm/git/llvm/default.nix b/pkgs/development/compilers/llvm/git/llvm/default.nix index 956919d3af01..fc7030810c5b 100644 --- a/pkgs/development/compilers/llvm/git/llvm/default.nix +++ b/pkgs/development/compilers/llvm/git/llvm/default.nix @@ -124,6 +124,14 @@ in stdenv.mkDerivation (rec { "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" "-DLLVM_ENABLE_DUMP=ON" + ] ++ optionals stdenv.hostPlatform.isStatic [ + # Disables building of shared libs, -fPIC is still injected by cc-wrapper + "-DLLVM_ENABLE_PIC=OFF" + "-DLLVM_BUILD_STATIC=ON" + # libxml2 needs to be disabled because the LLVM build system ignores its .la + # file and doesn't link zlib as well. + # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812 + "-DLLVM_ENABLE_LIBXML2=OFF" ] ++ optionals enableManpages [ "-DLLVM_BUILD_DOCS=ON" "-DLLVM_ENABLE_SPHINX=ON" From ffcf2ec83359d4f222857849d12948b3bf73185b Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 4 Jan 2022 14:55:00 +0100 Subject: [PATCH 094/170] python3Packages.django_2: 2.2.24 -> 2.2.26 --- pkgs/development/python-modules/django/2.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/django/2.nix b/pkgs/development/python-modules/django/2.nix index 9a0d98034c66..f20eb49c0233 100644 --- a/pkgs/development/python-modules/django/2.nix +++ b/pkgs/development/python-modules/django/2.nix @@ -6,13 +6,13 @@ buildPythonPackage rec { pname = "Django"; - version = "2.2.25"; + version = "2.2.26"; disabled = !isPy3k; src = fetchPypi { inherit pname version; - sha256 = "sha256-seZerzcTR9SxPrfgYbCXhslzBh3pU5DDJ8hcHiqiNJw="; + sha256 = "sha256-36U3Jn1SxiQ6YrMoVadEyoPDfHBgCqz/v9mLxdbYUY8="; }; patches = lib.optional withGdal From ade38fcf21c702a2bbaade528201ace363dc2cbb Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Tue, 4 Jan 2022 14:56:16 +0100 Subject: [PATCH 095/170] python3Packages.django_3: 3.2.9 -> 3.2.11 --- pkgs/development/python-modules/django/3.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/django/3.nix b/pkgs/development/python-modules/django/3.nix index fdcb8129f27d..a7bafcfb2707 100644 --- a/pkgs/development/python-modules/django/3.nix +++ b/pkgs/development/python-modules/django/3.nix @@ -13,13 +13,13 @@ buildPythonPackage rec { pname = "Django"; - version = "3.2.10"; + version = "3.2.11"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "sha256-B06IGLS0Cs3CNp5n3NZVXVWDKXhUCNzSU0DumPHx1cQ="; + sha256 = "sha256-aclKvl1rGwiL9HXgm3t0QD+UPjTaEH55hGXSBF2ifnU="; }; patches = lib.optional withGdal From bc2d6de6463d0bbaa25a2c5083f62eefb0b5e7e3 Mon Sep 17 00:00:00 2001 From: Mark Vainomaa Date: Mon, 27 Dec 2021 18:48:32 +0200 Subject: [PATCH 096/170] libgda: remove unnecessary gcc6 override --- pkgs/development/libraries/libgda/default.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/development/libraries/libgda/default.nix b/pkgs/development/libraries/libgda/default.nix index 63acabb320e4..a9993b7255a9 100644 --- a/pkgs/development/libraries/libgda/default.nix +++ b/pkgs/development/libraries/libgda/default.nix @@ -11,8 +11,6 @@ , gobject-introspection , vala , libgee -, overrideCC -, gcc6 , fetchpatch , autoreconfHook , gtk-doc @@ -27,7 +25,7 @@ assert mysqlSupport -> libmysqlclient != null; assert postgresSupport -> postgresql != null; -(if stdenv.isAarch64 then overrideCC stdenv gcc6 else stdenv).mkDerivation rec { +stdenv.mkDerivation rec { pname = "libgda"; version = "5.2.10"; From 20b0e16c329467b563e3d9edf9dd60ba72f38f70 Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Thu, 6 Jan 2022 09:02:59 +1000 Subject: [PATCH 097/170] curl: 7.80.0 -> 7.81.0 https://curl.se/changes.html#7_81_0 --- pkgs/tools/networking/curl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index a5abbc26a741..c3ca81c7c66a 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -43,14 +43,14 @@ assert gssSupport -> libkrb5 != null; stdenv.mkDerivation rec { pname = "curl"; - version = "7.80.0"; + version = "7.81.0"; 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 = "170qb2w2p5fga0vqhhnzi417z4h4vy764sz16pzhm5fd9471a3fx"; + sha256 = "sha256-Hno41wGOwGDx8W34OYVPCInpThIsTPpdOjfC3Fbx4lg="; }; patches = [ From 04e867f86b0693385bc6f445ad7ba2fb504c14e2 Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Tue, 4 Jan 2022 18:48:16 -0300 Subject: [PATCH 098/170] yapf: 0.31.0 -> 0.32.0 --- pkgs/development/python-modules/yapf/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/yapf/default.nix b/pkgs/development/python-modules/yapf/default.nix index 9c759f3a2b7e..2d6fc9520ccd 100644 --- a/pkgs/development/python-modules/yapf/default.nix +++ b/pkgs/development/python-modules/yapf/default.nix @@ -6,11 +6,11 @@ buildPythonPackage rec { pname = "yapf"; - version = "0.31.0"; + version = "0.32.0"; src = fetchPypi { inherit pname version; - hash = "sha256-QI+5orJUwwL0nbg8WfmqC0sP0OwlvjpcURgTJ5Iv9j0="; + hash = "sha256-o/UIXTfvfj4ATEup+bPkDFT/GQHNER8FFFrjE6fGfRs="; }; checkInputs = [ From e57acb94b39867c43a7dcc64dfb886743c8f481f Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Wed, 22 Dec 2021 15:00:57 +0100 Subject: [PATCH 099/170] python3Packages.unicodedata2: 13.0.0-2 -> 14.0.0 https://github.com/fonttools/unicodedata2/releases/tag/14.0.0 --- .../python-modules/unicodedata2/default.nix | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/pkgs/development/python-modules/unicodedata2/default.nix b/pkgs/development/python-modules/unicodedata2/default.nix index 565f0f557208..a14895fa7996 100644 --- a/pkgs/development/python-modules/unicodedata2/default.nix +++ b/pkgs/development/python-modules/unicodedata2/default.nix @@ -1,18 +1,17 @@ -{ lib, buildPythonPackage, fetchFromGitHub, pytest }: +{ lib, buildPythonPackage, fetchPypi, pytestCheckHook, isPy27 }: buildPythonPackage rec { pname = "unicodedata2"; - version = "13.0.0-2"; + version = "14.0.0"; - src = fetchFromGitHub { - owner = "mikekap"; - repo = pname; - rev = version; - sha256 = "0p9brbiwyg98q52y0gfyps52xv57fwqfpq0mn18p1xc1imip3h2b"; + disabled = isPy27; + + src = fetchPypi { + inherit version pname; + sha256 = "110nnvh02ssp92xbmswy39aa186jrmb7m41x4220wigl8c0dzxs1"; }; - checkInputs = [ pytest ]; - checkPhase = "pytest tests"; + checkInputs = [ pytestCheckHook ]; meta = with lib; { description = "Backport and updates for the unicodedata module"; From 7be5fbf70fdc995034b2658bd814cfa45dfddc9a Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Wed, 3 Nov 2021 16:50:59 +0000 Subject: [PATCH 100/170] pkgsStatic.netbsd: fix nbtool_config.h conflicts In pkgsStatic, /all/ build inputs are propagated. This means that netbsd.compat was propagated, along with its setup hook, which broke static glib builds because glib defines a function with the same name as one in nbtool_config.h, and nbtool_config.h was being automatically included in every C file processed by the compiler, in any transitive dependent of netbsd.compat's setup hook. To fix this, rather than forcing nbtool_config.h to be included for _every_ C file in a derivation that depends on netbsd.compat, modify the NetBSD-specific mkDerivation to detect files that need the header, and patch it in there where appropriate. That way, only files that are part of NetBSD will be affected, not all transitive dependents. --- pkgs/os-specific/bsd/netbsd/compat-setup-hook.sh | 1 - pkgs/os-specific/bsd/netbsd/default.nix | 12 +++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/bsd/netbsd/compat-setup-hook.sh b/pkgs/os-specific/bsd/netbsd/compat-setup-hook.sh index 3c49337a937c..acd90b7aa2f0 100644 --- a/pkgs/os-specific/bsd/netbsd/compat-setup-hook.sh +++ b/pkgs/os-specific/bsd/netbsd/compat-setup-hook.sh @@ -3,4 +3,3 @@ getHostRole export NIX_LDFLAGS${role_post}+=" -lnbcompat" export NIX_CFLAGS_COMPILE${role_post}+=" -DHAVE_NBTOOL_CONFIG_H" -export NIX_CFLAGS_COMPILE${role_post}+=" -include nbtool_config.h" diff --git a/pkgs/os-specific/bsd/netbsd/default.nix b/pkgs/os-specific/bsd/netbsd/default.nix index beaa176dae15..7a6604afe641 100644 --- a/pkgs/os-specific/bsd/netbsd/default.nix +++ b/pkgs/os-specific/bsd/netbsd/default.nix @@ -120,7 +120,17 @@ in lib.makeScopeWithSplicing } // lib.optionalAttrs (attrs.headersOnly or false) { installPhase = "includesPhase"; dontBuild = true; - } // attrs)); + } // attrs // { + postPatch = lib.optionalString (!stdenv'.hostPlatform.isNetBSD) '' + # Files that use NetBSD-specific macros need to have nbtool_config.h + # included ahead of them on non-NetBSD platforms. + set +e + grep -Zlr "^__RCSID + ^__BEGIN_DECLS" | xargs -0r grep -FLZ nbtool_config.h | + xargs -0tr sed -i '0,/^#/s//#include \n\0/' + set -e + '' + attrs.postPatch or ""; + })); ## ## START BOOTSTRAPPING From 2b9c5958a10affa63551166c281bcd36ea021674 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Wed, 3 Nov 2021 16:55:36 +0000 Subject: [PATCH 101/170] netbsd.compat: don't use musl's sys/cdefs.h When building glib statically, a Meson check would fail, because the check would interpret any warning as failure, and it would see the warning that the musl sys/cdefs.h emits about the file being deprecated. --- pkgs/os-specific/bsd/netbsd/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/os-specific/bsd/netbsd/default.nix b/pkgs/os-specific/bsd/netbsd/default.nix index 7a6604afe641..25ac9ce451cc 100644 --- a/pkgs/os-specific/bsd/netbsd/default.nix +++ b/pkgs/os-specific/bsd/netbsd/default.nix @@ -192,6 +192,12 @@ in lib.makeScopeWithSplicing configurePlatforms = [ "build" "host" ]; configureFlags = [ "--cache-file=config.cache" + ] ++ lib.optionals stdenv.hostPlatform.isMusl [ + # We include this header in our musl package only for legacy + # compatibility, and compat works fine without it (and having it + # know about sys/cdefs.h breaks packages like glib when built + # statically). + "ac_cv_header_sys_cdefs_h=no" ]; nativeBuildInputs = with buildPackages.netbsd; commonDeps ++ [ From da28ed7df04714648a90fd8f249fa319d9ed1bcd Mon Sep 17 00:00:00 2001 From: ajs124 Date: Thu, 6 Jan 2022 22:25:53 +0100 Subject: [PATCH 102/170] nss: 3.73.1 -> 3.74 --- pkgs/development/libraries/nss/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/nss/default.nix b/pkgs/development/libraries/nss/default.nix index e5819e1d75ee..e92b3dec07be 100644 --- a/pkgs/development/libraries/nss/default.nix +++ b/pkgs/development/libraries/nss/default.nix @@ -27,7 +27,7 @@ let # It will rebuild itself using the version of this package (NSS) and if # an update is required do the required changes to the expression. # Example: nix-shell ./maintainers/scripts/update.nix --argstr package cacert - version = "3.73.1"; + version = "3.74"; in stdenv.mkDerivation rec { @@ -36,7 +36,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://mozilla/security/nss/releases/NSS_${lib.replaceStrings [ "." ] [ "_" ] version}_RTM/src/${pname}-${version}.tar.gz"; - sha256 = "x2j5/jEp6LzC6WeUVtft2UU6IleEqPx9xFAYBvH+mr4="; + sha256 = "0mnhdkm4galhpvfz4rv0918jwmjlwkvcvb1f5va8f3zlz48qi4l8"; }; depsBuildBuild = [ buildPackages.stdenv.cc ]; From eb9b64fc3290e4e8ee7e2d65bbf3b690ccf7eff7 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Thu, 6 Jan 2022 22:46:17 +0100 Subject: [PATCH 103/170] cacert: 3.71 -> 3.74 --- pkgs/data/misc/cacert/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/data/misc/cacert/default.nix b/pkgs/data/misc/cacert/default.nix index 49645ee80083..4e9925147a35 100644 --- a/pkgs/data/misc/cacert/default.nix +++ b/pkgs/data/misc/cacert/default.nix @@ -20,7 +20,7 @@ let blocklist = writeText "cacert-blocklist.txt" (lib.concatStringsSep "\n" blacklist); extraCertificatesBundle = writeText "cacert-extra-certificates-bundle.crt" (lib.concatStringsSep "\n\n" extraCertificateStrings); - srcVersion = "3.71"; + srcVersion = "3.74"; version = if nssOverride != null then nssOverride.version else srcVersion; meta = with lib; { homepage = "https://curl.haxx.se/docs/caextract.html"; @@ -35,7 +35,7 @@ let src = if nssOverride != null then nssOverride.src else fetchurl { url = "mirror://mozilla/security/nss/releases/NSS_${lib.replaceStrings ["."] ["_"] version}_RTM/src/nss-${version}.tar.gz"; - sha256 = "0ly2l3dv6z5hlxs72h5x6796ni3x1bq60saavaf42ddgv4ax7b4r"; + sha256 = "0mnhdkm4galhpvfz4rv0918jwmjlwkvcvb1f5va8f3zlz48qi4l8"; }; dontBuild = true; From 30f2fe6f8499fb2a8a6d5e3be0ba912eb00e133b Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 6 Jan 2022 12:19:36 +0100 Subject: [PATCH 104/170] python3Packages.charset-normalizer: 2.0.9 -> 2.0.10 --- .../development/python-modules/charset-normalizer/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/charset-normalizer/default.nix b/pkgs/development/python-modules/charset-normalizer/default.nix index c29908e64999..ba7dd1db3b9a 100644 --- a/pkgs/development/python-modules/charset-normalizer/default.nix +++ b/pkgs/development/python-modules/charset-normalizer/default.nix @@ -7,7 +7,7 @@ buildPythonPackage rec { pname = "charset-normalizer"; - version = "2.0.9"; + version = "2.0.10"; format = "setuptools"; disabled = pythonOlder "3.5"; @@ -16,7 +16,7 @@ buildPythonPackage rec { owner = "Ousret"; repo = "charset_normalizer"; rev = version; - hash = "sha256-S+7jyCv7yfecLd+g/rXvLA2e++nwKrEk2Xs7gUnF6uA="; + hash = "sha256-QsUqrC2oycvyCbOzGmHahgNi40YZ0sujb3Cj8EnsGS8="; }; checkInputs = [ From 17c5a15c89f2523b2543f946daa4d018e04d731a Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Fri, 7 Jan 2022 02:25:17 +0100 Subject: [PATCH 105/170] wrapCCWith: rely on the new bintools attribute for default value wrapCCWith shipped its own, but imperfect duplication of the logic we use to choose the bintools for the *next* stage by inspecting targetPlatform. This change should ensure that C compilers relying on the default behavior of wrapCCWith should end up with the same bintools als theirStage.bintools. In particular, this makes pkgsLLVM.llvmPackages.stdenv correctly use the LLVM bintools instead of GNU binutils. --- pkgs/top-level/all-packages.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d3aa3479d13d..8ce2176df0d5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13271,7 +13271,11 @@ with pkgs; # Others should instead delegate to the next stage's choice with # `targetPackages.stdenv.cc.bintools`. This one is different just to # provide the default choice, avoiding infinite recursion. - bintools ? if stdenv.targetPlatform.isDarwin then darwin.binutils else binutils + # See the bintools attribute for the logic and reasoning. We need to provide + # a default here, since eval will hit this function when bootstrapping + # stdenv where the bintools attribute doesn't exist, but will never actually + # be evaluated -- callPackage ends up being too eager. + bintools ? pkgs.bintools , libc ? bintools.libc , # libc++ from the default LLVM version is bound at the top level, but we # want the C++ library to be explicitly chosen by the caller, and null by From 2d0daff40dce0c5496c50622dd77ceca1d21f9f0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 1 Jan 2022 03:37:26 +0000 Subject: [PATCH 106/170] sqlite: 3.37.0 -> 3.37.2 --- pkgs/development/libraries/sqlite/default.nix | 6 +++--- pkgs/development/libraries/sqlite/tools.nix | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/sqlite/default.nix b/pkgs/development/libraries/sqlite/default.nix index de433ba5008d..4dc5b8c760aa 100644 --- a/pkgs/development/libraries/sqlite/default.nix +++ b/pkgs/development/libraries/sqlite/default.nix @@ -11,12 +11,12 @@ in stdenv.mkDerivation rec { pname = "sqlite"; - version = "3.37.0"; + version = "3.37.2"; # NB! Make sure to update ./tools.nix src (in the same directory). src = fetchurl { - url = "https://sqlite.org/2021/sqlite-autoconf-${archiveVersion version}.tar.gz"; - sha256 = "sha256-cxpGUdTUs2/H0h21hrLeTdAK8x/VT7WppLf0kgV0efc="; + url = "https://sqlite.org/2022/sqlite-autoconf-${archiveVersion version}.tar.gz"; + sha256 = "sha256-QImo2bRnU3s/JG8he4TNduALHRqXH+WsoeMOIw5Gstg="; }; outputs = [ "bin" "dev" "out" ]; diff --git a/pkgs/development/libraries/sqlite/tools.nix b/pkgs/development/libraries/sqlite/tools.nix index 7309e1de0b68..529b1f1e0e75 100644 --- a/pkgs/development/libraries/sqlite/tools.nix +++ b/pkgs/development/libraries/sqlite/tools.nix @@ -4,11 +4,11 @@ let archiveVersion = import ./archive-version.nix lib; mkTool = { pname, makeTarget, description, homepage }: stdenv.mkDerivation rec { inherit pname; - version = "3.37.0"; + version = "3.37.2"; src = assert version == sqlite.version; fetchurl { - url = "https://sqlite.org/2021/sqlite-src-${archiveVersion version}.zip"; - sha256 = "sha256-cJd/s5Qhh9RidBOv3pqUkvoCuVSFCBK1OXS2ox7Oj68="; + url = "https://sqlite.org/2022/sqlite-src-${archiveVersion version}.zip"; + sha256 = "sha256-SGdwtNX4i1uw26VA3W7hdjBn11Od/uGKfGb+m7A9Ftk="; }; nativeBuildInputs = [ unzip ]; From 7340ea55e8449babaccedd4885bcc5c6f24047a9 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 1 Jan 2022 03:37:26 +0000 Subject: [PATCH 107/170] sqlite: add `nixpkgs-update: no auto update` for the update bot the version assert for sqlite and sqldiff/sqlite-analyzer means that the PRs the bot submits are broken --- pkgs/development/libraries/sqlite/default.nix | 1 + pkgs/development/libraries/sqlite/tools.nix | 1 + 2 files changed, 2 insertions(+) diff --git a/pkgs/development/libraries/sqlite/default.nix b/pkgs/development/libraries/sqlite/default.nix index 4dc5b8c760aa..6704d894f5a2 100644 --- a/pkgs/development/libraries/sqlite/default.nix +++ b/pkgs/development/libraries/sqlite/default.nix @@ -13,6 +13,7 @@ stdenv.mkDerivation rec { pname = "sqlite"; version = "3.37.2"; + # nixpkgs-update: no auto update # NB! Make sure to update ./tools.nix src (in the same directory). src = fetchurl { url = "https://sqlite.org/2022/sqlite-autoconf-${archiveVersion version}.tar.gz"; diff --git a/pkgs/development/libraries/sqlite/tools.nix b/pkgs/development/libraries/sqlite/tools.nix index 529b1f1e0e75..d8d3735fe3d8 100644 --- a/pkgs/development/libraries/sqlite/tools.nix +++ b/pkgs/development/libraries/sqlite/tools.nix @@ -6,6 +6,7 @@ let inherit pname; version = "3.37.2"; + # nixpkgs-update: no auto update src = assert version == sqlite.version; fetchurl { url = "https://sqlite.org/2022/sqlite-src-${archiveVersion version}.zip"; sha256 = "sha256-SGdwtNX4i1uw26VA3W7hdjBn11Od/uGKfGb+m7A9Ftk="; From 766f5ffb761bc916ea0f270f472d04ab30664d52 Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Fri, 7 Jan 2022 02:30:01 +0100 Subject: [PATCH 108/170] llvmPackages_*: respect cc for target when choosing C++ flavour MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit llvmPackages_*.clang should check the default compiler for the package set it is targeting (targetPackages.stdenv.cc) instead of the compiler that has been used to build it (stdenv.cc) in order to get some sense of whether to use libc++ or libstdc++. Since we are now inspecting targetPackages in the llvmPackages.clang attribute, we need to avoid using it in the cross stdenv — which just forces us to explicitly request libcxxClang for darwin instead of relying on the clang attribute to pick it for us. We also need to do something similar for targetPackages.stdenv.cc: Here the llvmPackages.clang logic would work as we want (inspect targetPackages.stdenv.cc and if it doesn't exist, make the choice based on stdenv.cc), but it gets locked in a cycle with the previous package. We can easily break this, however: We know that the previous set had clang and the next one doesn't exist, so we'd choose libcxxClang any day of the week. --- pkgs/development/compilers/llvm/10/default.nix | 6 +++++- pkgs/development/compilers/llvm/11/default.nix | 6 +++++- pkgs/development/compilers/llvm/12/default.nix | 6 +++++- pkgs/development/compilers/llvm/13/default.nix | 6 +++++- pkgs/development/compilers/llvm/5/default.nix | 6 +++++- pkgs/development/compilers/llvm/6/default.nix | 6 +++++- pkgs/development/compilers/llvm/7/default.nix | 6 +++++- pkgs/development/compilers/llvm/8/default.nix | 6 +++++- pkgs/development/compilers/llvm/9/default.nix | 6 +++++- pkgs/development/compilers/llvm/git/default.nix | 6 +++++- pkgs/stdenv/booter.nix | 8 +++++++- pkgs/stdenv/cross/default.nix | 2 +- 12 files changed, 58 insertions(+), 12 deletions(-) diff --git a/pkgs/development/compilers/llvm/10/default.nix b/pkgs/development/compilers/llvm/10/default.nix index 8bd7e937e7d7..83840b4fd27e 100644 --- a/pkgs/development/compilers/llvm/10/default.nix +++ b/pkgs/development/compilers/llvm/10/default.nix @@ -89,7 +89,11 @@ let # python3 = pkgs.python3; # don't use python-boot # }); - clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; + # pick clang appropriate for package set we are targeting + clang = + if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU + then tools.libstdcxxClang + else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { cc = tools.clang-unwrapped; diff --git a/pkgs/development/compilers/llvm/11/default.nix b/pkgs/development/compilers/llvm/11/default.nix index ebd0dc672aa3..b5c070915242 100644 --- a/pkgs/development/compilers/llvm/11/default.nix +++ b/pkgs/development/compilers/llvm/11/default.nix @@ -104,7 +104,11 @@ let # python3 = pkgs.python3; # don't use python-boot # }); - clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; + # pick clang appropriate for package set we are targeting + clang = + if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU + then tools.libstdcxxClang + else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { cc = tools.clang-unwrapped; diff --git a/pkgs/development/compilers/llvm/12/default.nix b/pkgs/development/compilers/llvm/12/default.nix index e68522faea06..8de6bb420d41 100644 --- a/pkgs/development/compilers/llvm/12/default.nix +++ b/pkgs/development/compilers/llvm/12/default.nix @@ -92,7 +92,11 @@ let # python3 = pkgs.python3; # don't use python-boot # }); - clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; + # pick clang appropriate for package set we are targeting + clang = + if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU + then tools.libstdcxxClang + else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { cc = tools.clang-unwrapped; diff --git a/pkgs/development/compilers/llvm/13/default.nix b/pkgs/development/compilers/llvm/13/default.nix index a89c6dabe391..bdc07a68742d 100644 --- a/pkgs/development/compilers/llvm/13/default.nix +++ b/pkgs/development/compilers/llvm/13/default.nix @@ -93,7 +93,11 @@ let # python3 = pkgs.python3; # don't use python-boot # }); - clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; + # pick clang appropriate for package set we are targeting + clang = + if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU + then tools.libstdcxxClang + else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { cc = tools.clang-unwrapped; diff --git a/pkgs/development/compilers/llvm/5/default.nix b/pkgs/development/compilers/llvm/5/default.nix index 4593580b72fd..4a6d55d55727 100644 --- a/pkgs/development/compilers/llvm/5/default.nix +++ b/pkgs/development/compilers/llvm/5/default.nix @@ -65,7 +65,11 @@ let python3 = pkgs.python3; # don't use python-boot }); - clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; + # pick clang appropriate for package set we are targeting + clang = + if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU + then tools.libstdcxxClang + else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { cc = tools.clang-unwrapped; diff --git a/pkgs/development/compilers/llvm/6/default.nix b/pkgs/development/compilers/llvm/6/default.nix index 9b1caf410bc2..1b9a793e8858 100644 --- a/pkgs/development/compilers/llvm/6/default.nix +++ b/pkgs/development/compilers/llvm/6/default.nix @@ -66,7 +66,11 @@ let python3 = pkgs.python3; # don't use python-boot }); - clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; + # pick clang appropriate for package set we are targeting + clang = + if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU + then tools.libstdcxxClang + else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { cc = tools.clang-unwrapped; diff --git a/pkgs/development/compilers/llvm/7/default.nix b/pkgs/development/compilers/llvm/7/default.nix index d014c043a80d..841fc120d744 100644 --- a/pkgs/development/compilers/llvm/7/default.nix +++ b/pkgs/development/compilers/llvm/7/default.nix @@ -96,7 +96,11 @@ let python3 = pkgs.python3; # don't use python-boot }); - clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; + # pick clang appropriate for package set we are targeting + clang = + if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU + then tools.libstdcxxClang + else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { cc = tools.clang-unwrapped; diff --git a/pkgs/development/compilers/llvm/8/default.nix b/pkgs/development/compilers/llvm/8/default.nix index 7252b75a3397..234473c1adae 100644 --- a/pkgs/development/compilers/llvm/8/default.nix +++ b/pkgs/development/compilers/llvm/8/default.nix @@ -97,7 +97,11 @@ let python3 = pkgs.python3; # don't use python-boot }); - clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; + # pick clang appropriate for package set we are targeting + clang = + if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU + then tools.libstdcxxClang + else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { cc = tools.clang-unwrapped; diff --git a/pkgs/development/compilers/llvm/9/default.nix b/pkgs/development/compilers/llvm/9/default.nix index 9126a614b106..a10bac13824e 100644 --- a/pkgs/development/compilers/llvm/9/default.nix +++ b/pkgs/development/compilers/llvm/9/default.nix @@ -97,7 +97,11 @@ let python3 = pkgs.python3; # don't use python-boot }); - clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; + # pick clang appropriate for package set we are targeting + clang = + if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU + then tools.libstdcxxClang + else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { cc = tools.clang-unwrapped; diff --git a/pkgs/development/compilers/llvm/git/default.nix b/pkgs/development/compilers/llvm/git/default.nix index 666e9be3cd89..56904addb52b 100644 --- a/pkgs/development/compilers/llvm/git/default.nix +++ b/pkgs/development/compilers/llvm/git/default.nix @@ -93,7 +93,11 @@ let # python3 = pkgs.python3; # don't use python-boot # }); - clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; + # pick clang appropriate for package set we are targeting + clang = + if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU + then tools.libstdcxxClang + else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { cc = tools.clang-unwrapped; diff --git a/pkgs/stdenv/booter.nix b/pkgs/stdenv/booter.nix index 51d617354e86..f1d07e6461a9 100644 --- a/pkgs/stdenv/booter.nix +++ b/pkgs/stdenv/booter.nix @@ -124,7 +124,13 @@ stageFuns: let if buildPackages.stdenv.hasCC then if buildPackages.stdenv.cc.isClang or false - then buildPackages.clang + # buildPackages.clang checks targetPackages.stdenv.cc (i. e. this + # attribute) to get a sense of the its set's default compiler and + # chooses between libc++ and libstdc++ based on that. If we hit this + # code here, we'll cause an infinite recursion. Since a set with + # clang as its default compiler always means libc++, we can infer this + # decision statically. + then buildPackages.llvmPackages.libcxxClang else buildPackages.gcc else # This will blow up if anything uses it, but that's OK. The `if diff --git a/pkgs/stdenv/cross/default.nix b/pkgs/stdenv/cross/default.nix index 613b8d5304c0..e01ac74599ae 100644 --- a/pkgs/stdenv/cross/default.nix +++ b/pkgs/stdenv/cross/default.nix @@ -70,7 +70,7 @@ in lib.init bootStages ++ [ # when there is a C compiler and everything should be fine. then throw "no C compiler provided for this platform" else if crossSystem.isDarwin - then buildPackages.llvmPackages.clang + then buildPackages.llvmPackages.libcxxClang else if crossSystem.useLLVM or false then buildPackages.llvmPackages.clangUseLLVM else buildPackages.gcc; From e238f456b8d643d5afe5370e942e82204907d0ef Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Fri, 7 Jan 2022 12:58:21 +0100 Subject: [PATCH 109/170] llvmPackages_*.clang: pick clangUseLLVM if targetPlatform.useLLVM libcxxClang still depends on cc wrapper's gccForLibs for libgcc which is not available when useLLVM is set. In such cases we need to switch to clangUseLLVM and (try) to use compiler-rt instead. Resolves #153759: pkgsLLVM.llvmPackages.stdenv now correctly clangUseLLVM as cc, allowing compilation to work as expected. --- pkgs/development/compilers/llvm/10/default.nix | 4 ++-- pkgs/development/compilers/llvm/11/default.nix | 4 ++-- pkgs/development/compilers/llvm/12/default.nix | 4 ++-- pkgs/development/compilers/llvm/13/default.nix | 4 ++-- pkgs/development/compilers/llvm/5/default.nix | 4 ++-- pkgs/development/compilers/llvm/6/default.nix | 4 ++-- pkgs/development/compilers/llvm/7/default.nix | 4 ++-- pkgs/development/compilers/llvm/8/default.nix | 4 ++-- pkgs/development/compilers/llvm/9/default.nix | 4 ++-- pkgs/development/compilers/llvm/git/default.nix | 4 ++-- 10 files changed, 20 insertions(+), 20 deletions(-) diff --git a/pkgs/development/compilers/llvm/10/default.nix b/pkgs/development/compilers/llvm/10/default.nix index 83840b4fd27e..5cb6c278659d 100644 --- a/pkgs/development/compilers/llvm/10/default.nix +++ b/pkgs/development/compilers/llvm/10/default.nix @@ -91,8 +91,8 @@ let # pick clang appropriate for package set we are targeting clang = - if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU - then tools.libstdcxxClang + /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { diff --git a/pkgs/development/compilers/llvm/11/default.nix b/pkgs/development/compilers/llvm/11/default.nix index b5c070915242..82a78af85cac 100644 --- a/pkgs/development/compilers/llvm/11/default.nix +++ b/pkgs/development/compilers/llvm/11/default.nix @@ -106,8 +106,8 @@ let # pick clang appropriate for package set we are targeting clang = - if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU - then tools.libstdcxxClang + /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { diff --git a/pkgs/development/compilers/llvm/12/default.nix b/pkgs/development/compilers/llvm/12/default.nix index 8de6bb420d41..4a2a7ee87894 100644 --- a/pkgs/development/compilers/llvm/12/default.nix +++ b/pkgs/development/compilers/llvm/12/default.nix @@ -94,8 +94,8 @@ let # pick clang appropriate for package set we are targeting clang = - if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU - then tools.libstdcxxClang + /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { diff --git a/pkgs/development/compilers/llvm/13/default.nix b/pkgs/development/compilers/llvm/13/default.nix index bdc07a68742d..be5e9404cdd4 100644 --- a/pkgs/development/compilers/llvm/13/default.nix +++ b/pkgs/development/compilers/llvm/13/default.nix @@ -95,8 +95,8 @@ let # pick clang appropriate for package set we are targeting clang = - if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU - then tools.libstdcxxClang + /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { diff --git a/pkgs/development/compilers/llvm/5/default.nix b/pkgs/development/compilers/llvm/5/default.nix index 4a6d55d55727..ef9886fb5ea7 100644 --- a/pkgs/development/compilers/llvm/5/default.nix +++ b/pkgs/development/compilers/llvm/5/default.nix @@ -67,8 +67,8 @@ let # pick clang appropriate for package set we are targeting clang = - if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU - then tools.libstdcxxClang + /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { diff --git a/pkgs/development/compilers/llvm/6/default.nix b/pkgs/development/compilers/llvm/6/default.nix index 1b9a793e8858..4acfe6cd85d7 100644 --- a/pkgs/development/compilers/llvm/6/default.nix +++ b/pkgs/development/compilers/llvm/6/default.nix @@ -68,8 +68,8 @@ let # pick clang appropriate for package set we are targeting clang = - if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU - then tools.libstdcxxClang + /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { diff --git a/pkgs/development/compilers/llvm/7/default.nix b/pkgs/development/compilers/llvm/7/default.nix index 841fc120d744..f0908f30775d 100644 --- a/pkgs/development/compilers/llvm/7/default.nix +++ b/pkgs/development/compilers/llvm/7/default.nix @@ -98,8 +98,8 @@ let # pick clang appropriate for package set we are targeting clang = - if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU - then tools.libstdcxxClang + /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { diff --git a/pkgs/development/compilers/llvm/8/default.nix b/pkgs/development/compilers/llvm/8/default.nix index 234473c1adae..43050a72b922 100644 --- a/pkgs/development/compilers/llvm/8/default.nix +++ b/pkgs/development/compilers/llvm/8/default.nix @@ -99,8 +99,8 @@ let # pick clang appropriate for package set we are targeting clang = - if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU - then tools.libstdcxxClang + /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { diff --git a/pkgs/development/compilers/llvm/9/default.nix b/pkgs/development/compilers/llvm/9/default.nix index a10bac13824e..7efe8486a387 100644 --- a/pkgs/development/compilers/llvm/9/default.nix +++ b/pkgs/development/compilers/llvm/9/default.nix @@ -99,8 +99,8 @@ let # pick clang appropriate for package set we are targeting clang = - if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU - then tools.libstdcxxClang + /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { diff --git a/pkgs/development/compilers/llvm/git/default.nix b/pkgs/development/compilers/llvm/git/default.nix index 56904addb52b..890270c851db 100644 --- a/pkgs/development/compilers/llvm/git/default.nix +++ b/pkgs/development/compilers/llvm/git/default.nix @@ -95,8 +95,8 @@ let # pick clang appropriate for package set we are targeting clang = - if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU - then tools.libstdcxxClang + /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; libstdcxxClang = wrapCCWith rec { From 38377ab02680908d1c83fd5f5691e0594e08df30 Mon Sep 17 00:00:00 2001 From: Moritz Angermann Date: Sat, 8 Jan 2022 07:32:21 +0800 Subject: [PATCH 110/170] libredirect: build fat library for x86_64, arm64, arm64e on darwin (#153441) macOS's dyld can be rather picky as to what dylib it accepts. This even changes across macOS versions. Therefore we now build a fat dylib with all three architectures (x86_64, arm64, arm64e). This should then be compatible with pretty much any macOS's dyld. --- pkgs/build-support/libredirect/default.nix | 34 +++++++++++++++++----- 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/pkgs/build-support/libredirect/default.nix b/pkgs/build-support/libredirect/default.nix index f87c6d23dd79..68ffeb04d31e 100644 --- a/pkgs/build-support/libredirect/default.nix +++ b/pkgs/build-support/libredirect/default.nix @@ -1,5 +1,4 @@ -{ stdenv, lib, coreutils }: - +{ lib, stdenv, bintools-unwrapped, llvmPackages_13, coreutils }: stdenv.mkDerivation rec { pname = "libredirect"; version = "0"; @@ -9,17 +8,36 @@ stdenv.mkDerivation rec { cp ${./test.c} test.c ''; - libName = "libredirect" + stdenv.targetPlatform.extensions.sharedLibrary; - outputs = ["out" "hook"]; + libName = "libredirect" + stdenv.targetPlatform.extensions.sharedLibrary; + buildPhase = '' runHook preBuild - $CC -Wall -std=c99 -O3 -fPIC -ldl -shared \ - ${lib.optionalString stdenv.isDarwin "-Wl,-install_name,$out/lib/$libName"} \ - -o "$libName" \ - libredirect.c + ${if stdenv.isDarwin && stdenv.isAarch64 then '' + # We need the unwrapped binutils and clang: + # We also want to build a fat library with x86_64, arm64, arm64e in there. + # Because we use the unwrapped tools, we need to provide -isystem for headers + # and the library search directory for libdl. + # We can't build this on x86_64, because the libSystem we point to doesn't + # like arm64(e). + PATH=${bintools-unwrapped}/bin:${llvmPackages_13.clang-unwrapped}/bin:$PATH \ + clang -arch x86_64 -arch arm64 -arch arm64e \ + -isystem ${llvmPackages_13.clang.libc}/include \ + -isystem ${llvmPackages_13.libclang.lib}/lib/clang/*/include \ + -L${llvmPackages_13.clang.libc}/lib \ + -Wl,-install_name,$out/lib/$libName \ + -Wall -std=c99 -O3 -fPIC libredirect.c \ + -ldl -shared -o "$libName" + '' else if stdenv.isDarwin then '' + $CC -Wall -std=c99 -O3 -fPIC libredirect.c \ + -Wl,-install_name,$out/lib/$libName \ + -ldl -shared -o "$libName" + '' else '' + $CC -Wall -std=c99 -O3 -fPIC libredirect.c \ + -ldl -shared -o "$libName" + ''} if [ -n "$doInstallCheck" ]; then $CC -Wall -std=c99 -O3 test.c -o test From 294c211818331eae1d118bb574f0ef144d6f75d1 Mon Sep 17 00:00:00 2001 From: Joel Date: Sat, 8 Jan 2022 10:05:35 +1000 Subject: [PATCH 111/170] iso-codes: 4.6.0. -> 4.9.0 --- pkgs/development/libraries/iso-codes/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/iso-codes/default.nix b/pkgs/development/libraries/iso-codes/default.nix index 75ace8097c9b..1b4396bfee07 100644 --- a/pkgs/development/libraries/iso-codes/default.nix +++ b/pkgs/development/libraries/iso-codes/default.nix @@ -1,12 +1,12 @@ -{lib, stdenv, fetchurl, gettext, python3}: +{ lib, stdenv, fetchurl, gettext, python3 }: stdenv.mkDerivation rec { pname = "iso-codes"; - version = "4.6.0"; + version = "4.9.0"; src = fetchurl { - url = "https://salsa.debian.org/iso-codes-team/iso-codes/-/archive/${pname}-${version}/${pname}-${pname}-${version}.tar.bz2"; - sha256 = "sha256-Ivd5538QpTFXP2r6ca/g12IZ0ZW1nduu0z4kiSb9Mxs="; + url = "https://salsa.debian.org/iso-codes-team/iso-codes/-/archive/v${version}/${pname}-v${version}.tar.gz"; + sha256 = "02lq602ghws423w04jsyjr92p0nmrfp59n1m5hbbi1c6fhxryghc"; }; patchPhase = '' From 8722d1569127fefcda863820484a6689cdc98e1e Mon Sep 17 00:00:00 2001 From: Joel Date: Sat, 8 Jan 2022 11:02:22 +1000 Subject: [PATCH 112/170] mypy: 0.930 -> 0.931 --- pkgs/development/python-modules/mypy/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/mypy/default.nix b/pkgs/development/python-modules/mypy/default.nix index 149aefb9a57f..5c5e985641ff 100644 --- a/pkgs/development/python-modules/mypy/default.nix +++ b/pkgs/development/python-modules/mypy/default.nix @@ -14,14 +14,14 @@ buildPythonPackage rec { pname = "mypy"; - version = "0.930"; + version = "0.931"; disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "python"; repo = "mypy"; rev = "v${version}"; - sha256 = "sha256-0yo6f9hRYFfwdfukOGNNTgPCIFO2MZdfMvzbci7FWRs="; + sha256 = "1v83flrdxh8grcp40qw04q4hzjflih9xwib64078vsxv2w36f817"; }; patches = [ From 08f22ce9cc4dfd837e54693aeceb77c3ec5d4211 Mon Sep 17 00:00:00 2001 From: Moritz Angermann Date: Wed, 22 Dec 2021 17:54:49 +0800 Subject: [PATCH 113/170] llvmPackages_12.llvm: create fix-llvm-issue-49955.patch This patch addresses llvm/llvm-project#49955 --- pkgs/development/compilers/llvm/12/llvm/default.nix | 3 +++ .../llvm/12/llvm/fix-llvm-issue-49955.patch | 13 +++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 pkgs/development/compilers/llvm/12/llvm/fix-llvm-issue-49955.patch diff --git a/pkgs/development/compilers/llvm/12/llvm/default.nix b/pkgs/development/compilers/llvm/12/llvm/default.nix index 04321b3598cf..2c035ee67a9e 100644 --- a/pkgs/development/compilers/llvm/12/llvm/default.nix +++ b/pkgs/development/compilers/llvm/12/llvm/default.nix @@ -63,6 +63,9 @@ in stdenv.mkDerivation (rec { # a native libLLVM.so (which would fail) we force llvm-config to be linked # statically against the necessary LLVM components always. ../../llvm-config-link-static.patch + # Fix llvm being miscompiled by some gccs. See llvm/llvm-project#49955 + # Fix llvm being miscompiled by some gccs. See https://github.com/llvm/llvm-project/issues/49955 + ./fix-llvm-issue-49955.patch ./gnu-install-dirs.patch # On older CPUs (e.g. Hydra/wendy) we'd be getting an error in this test. diff --git a/pkgs/development/compilers/llvm/12/llvm/fix-llvm-issue-49955.patch b/pkgs/development/compilers/llvm/12/llvm/fix-llvm-issue-49955.patch new file mode 100644 index 000000000000..b515583a0c42 --- /dev/null +++ b/pkgs/development/compilers/llvm/12/llvm/fix-llvm-issue-49955.patch @@ -0,0 +1,13 @@ +diff --git a/lib/CodeGen/AsmPrinter/CMakeLists.txt b/lib/CodeGen/AsmPrinter/CMakeLists.txt +index eb924282..c77c140b 100644 +--- a/lib/CodeGen/AsmPrinter/CMakeLists.txt ++++ b/lib/CodeGen/AsmPrinter/CMakeLists.txt +@@ -44,3 +44,8 @@ add_llvm_component_library(LLVMAsmPrinter + Support + Target + ) ++ ++if (CMAKE_COMPILER_IS_GNUCXX) ++ set_source_files_properties(DwarfCompileUnit.cpp PROPERTIES ++ COMPILE_FLAGS -fno-strict-aliasing) ++endif() From 0ed184fb68d646408be936af83d52a1d7f23b296 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sat, 8 Jan 2022 12:10:31 +0100 Subject: [PATCH 114/170] python3Packages.html-sanitizer: 1.9.1 -> 1.9.2 --- .../python-modules/html-sanitizer/default.nix | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/html-sanitizer/default.nix b/pkgs/development/python-modules/html-sanitizer/default.nix index 546f1acad094..ef029586bebf 100644 --- a/pkgs/development/python-modules/html-sanitizer/default.nix +++ b/pkgs/development/python-modules/html-sanitizer/default.nix @@ -8,13 +8,13 @@ buildPythonPackage rec { pname = "html-sanitizer"; - version = "1.9.1"; + version = "1.9.2"; src = fetchFromGitHub { owner = "matthiask"; repo = pname; rev = version; - sha256 = "0nnv34924r0yn01rwlk749j5ijy7yxyj302s1i57yjrkqr3zlvas"; + sha256 = "sha256-ZPyGF7N+EZHfgqZfRQx4x1r83BMur+Zg2kdtVISn3I8="; }; propagatedBuildInputs = [ @@ -26,9 +26,17 @@ buildPythonPackage rec { pytestCheckHook ]; - pytestFlagsArray = [ "html_sanitizer/tests.py" ]; + pytestFlagsArray = [ + "html_sanitizer/tests.py" + ]; - pythonImportsCheck = [ "html_sanitizer" ]; + disabledTests = [ + "test_billion_laughs" + ]; + + pythonImportsCheck = [ + "html_sanitizer" + ]; meta = with lib; { description = "Allowlist-based and very opinionated HTML sanitizer"; From fb69d7668fc2a1259e9ee8e434d79f9b3dd6d3be Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sun, 9 Jan 2022 01:59:29 +0100 Subject: [PATCH 115/170] lvm2-2_02: fix build (#154041) 2cc29125a722d913a80aaf94c51bdd72219aac07 updated this without taking account for the older version of the package still around. --- pkgs/os-specific/linux/lvm2/common.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/lvm2/common.nix b/pkgs/os-specific/linux/lvm2/common.nix index 5ee368c242fd..0749292531bb 100644 --- a/pkgs/os-specific/linux/lvm2/common.nix +++ b/pkgs/os-specific/linux/lvm2/common.nix @@ -66,9 +66,13 @@ stdenv.mkDerivation rec { 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 + '' + lib.optionalString (lib.versionOlder version "2.03.14") '' + substituteInPlace udev/69-dm-lvm-metad.rules.in \ + --replace "(BINDIR)/systemd-run" /run/current-system/systemd/bin/systemd-run + '' + lib.optionalString (lib.versionAtLeast version "2.03.14") '' substituteInPlace udev/69-dm-lvm.rules.in \ --replace "/usr/bin/systemd-run" /run/current-system/systemd/bin/systemd-run - + '' + '' substituteInPlace make.tmpl.in --replace "@systemdsystemunitdir@" "$out/lib/systemd/system" '' + lib.optionalString (lib.versionAtLeast version "2.03") '' substituteInPlace libdm/make.tmpl.in --replace "@systemdsystemunitdir@" "$out/lib/systemd/system" From f789367c26ade97c7d04752a253eb3e2c2c523e3 Mon Sep 17 00:00:00 2001 From: Robert Scott Date: Sun, 9 Jan 2022 01:01:38 +0000 Subject: [PATCH 116/170] ghostscript: 9.53.3 -> 9.55.0 (#153239) leaving new tesseract support disabled for now --- pkgs/misc/ghostscript/default.nix | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/pkgs/misc/ghostscript/default.nix b/pkgs/misc/ghostscript/default.nix index 5e27e5573c58..e80ad8a839fb 100644 --- a/pkgs/misc/ghostscript/default.nix +++ b/pkgs/misc/ghostscript/default.nix @@ -30,22 +30,18 @@ let in stdenv.mkDerivation rec { pname = "ghostscript"; - version = "9.53.3"; + version = "9.55.0"; src = fetchurl { url = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9${lib.versions.minor version}${lib.versions.patch version}/${pname}-${version}.tar.xz"; - sha512 = "2vif3vgxa5wma16yxvhhkymk4p309y5204yykarq94r5rk890556d2lj5w7acnaa2ymkym6y0zd4vq9sy9ca2346igg2c6dxqkjr0zb"; + sha512 = "27g72152mlwlalg232jxdhaf3ykgmqwi2pccbkwfygql1h9iz40plfbwbs1n0fkvm4zwzg5r9cr8g7w2dxih4jldiidv7rflxdy1is2"; }; patches = [ (fetchpatch { - url = "https://github.com/ArtifexSoftware/ghostpdl/commit/41ef9a0bc36b9db7115fbe9623f989bfb47bbade.patch"; - sha256 = "1qpc6q1fpxshqc0mqgg36kng47kgljk50bmr8p7wn21jgfkh7m8w"; - }) - (fetchpatch { - url = "https://git.ghostscript.com/?p=ghostpdl.git;a=patch;h=a9bd3dec9fde"; - name = "CVE-2021-3781.patch"; - sha256 = "FvbH7cb3ZDCbNRz9DF0kDmLdF7OWNYk90wv44pimU58="; + name = "fix-non-vendored-lcms2-typo.patch"; + url = "https://github.com/ArtifexSoftware/ghostpdl/commit/830afae5454dea3bff903869d82022306890a96c.patch"; + sha256 = "1w9yspsgxyabvrw9ld6pv6pb7708c44ihjqvag7qqh9v1lhm48j0"; }) ./urw-font-files.patch ./doc-no-ref.diff @@ -88,6 +84,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--with-system-libtiff" "--enable-dynamic" + "--without-tesseract" ] ++ lib.optional x11Support "--with-x" ++ lib.optionals cupsSupport [ From c363e252209911d52f64f299def3e6fd4923f25c Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 9 Jan 2022 01:02:22 +0000 Subject: [PATCH 117/170] re2: 2021-09-01 -> 2021-11-01 (#153111) While at it added trivial updater plumbing. --- pkgs/development/libraries/re2/default.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/re2/default.nix b/pkgs/development/libraries/re2/default.nix index a70ad0f69e03..22d803c17be6 100644 --- a/pkgs/development/libraries/re2/default.nix +++ b/pkgs/development/libraries/re2/default.nix @@ -1,14 +1,14 @@ -{ lib, stdenv, fetchFromGitHub, fetchpatch }: +{ lib, stdenv, fetchFromGitHub, fetchpatch, nix-update-script }: stdenv.mkDerivation rec { pname = "re2"; - version = "2021-09-01"; + version = "2021-11-01"; src = fetchFromGitHub { owner = "google"; repo = "re2"; rev = version; - sha256 = "1fyhypw345xz8zdh53gz6j1fwgrx0gszk1d349ja37dpxh4jp2jh"; + sha256 = "sha256-q8u7xNp6n17F6twPoVkix8iCKPWUN+qg6rhSR4Dv+bI="; }; patches = [ @@ -39,6 +39,12 @@ stdenv.mkDerivation rec { doInstallCheck = true; installCheckTarget = "testinstall"; + passthru = { + updateScript = nix-update-script { + attrPath = pname; + }; + }; + meta = { homepage = "https://github.com/google/re2"; description = "An efficient, principled regular expression library"; From f9c2ed0713296a247bec8f142f32c479e1a2dcd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 9 Jan 2022 01:03:25 +0000 Subject: [PATCH 118/170] python3Packages.pybind11: 2.8.1 -> 2.9.0 (#152525) https://github.com/pybind/pybind11/releases/tag/v2.9.0 --- pkgs/development/python-modules/pybind11/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pybind11/default.nix b/pkgs/development/python-modules/pybind11/default.nix index d33d9ffc575d..d93bfe149cb8 100644 --- a/pkgs/development/python-modules/pybind11/default.nix +++ b/pkgs/development/python-modules/pybind11/default.nix @@ -13,13 +13,13 @@ buildPythonPackage rec { pname = "pybind11"; - version = "2.8.1"; + version = "2.9.0"; src = fetchFromGitHub { owner = "pybind"; repo = pname; rev = "v${version}"; - sha256 = "sha256-Gk4ZN/g6SRWFm0ALCvyald/9zq3wBd48mGdqdGCeGYI="; + hash = "sha256-zYDgXXpn8Z1Zti8Eje8qxDvbQV70/LmezG3AtxzDG+o="; }; nativeBuildInputs = [ cmake ]; From e324d9d94cfd1196ad7bbf74372d815bca94917b Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 9 Jan 2022 01:03:53 +0000 Subject: [PATCH 119/170] xxHash: 0.8.0 -> 0.8.1 (#153001) --- pkgs/development/libraries/xxHash/default.nix | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/xxHash/default.nix b/pkgs/development/libraries/xxHash/default.nix index fbeadc2b353a..f4fa06112814 100644 --- a/pkgs/development/libraries/xxHash/default.nix +++ b/pkgs/development/libraries/xxHash/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "xxHash"; - version = "0.8.0"; + version = "0.8.1"; src = fetchFromGitHub { owner = "Cyan4973"; repo = "xxHash"; rev = "v${version}"; - sha256 = "0hpbzdd6kfki5f61g103vp7pfczqkdj0js63avl0ss552jfb8h96"; + sha256 = "sha256-2WoYCO6QRHWrbGP2mK04/sLNTyQLOuL3urVktilAwMA="; }; # Upstream Makefile does not anticipate that user may not want to @@ -22,6 +22,11 @@ stdenv.mkDerivation rec { makeFlags = [ "PREFIX=$(dev)" "EXEC_PREFIX=$(out)" ]; + # pkgs/build-support/setup-hooks/compress-man-pages.sh hook fails + # to compress symlinked manpages. Avoid compressing manpages until + # it's fixed. + dontGzipMan = true; + meta = with lib; { description = "Extremely fast hash algorithm"; longDescription = '' From 77f02854488a9bf8ef7db1a28d57e616d3424bcd Mon Sep 17 00:00:00 2001 From: "Robert T. McGibbon" Date: Sat, 8 Jan 2022 20:04:24 -0500 Subject: [PATCH 120/170] python3Packages.html5lib: update to latest pytest (#153108) --- pkgs/development/python-modules/html5lib/default.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkgs/development/python-modules/html5lib/default.nix b/pkgs/development/python-modules/html5lib/default.nix index 08ea5a2b3e98..58da63d02edd 100644 --- a/pkgs/development/python-modules/html5lib/default.nix +++ b/pkgs/development/python-modules/html5lib/default.nix @@ -1,6 +1,7 @@ { lib , buildPythonPackage , fetchPypi +, fetchpatch , six , webencodings , mock @@ -17,6 +18,15 @@ buildPythonPackage rec { sha256 = "b2e5b40261e20f354d198eae92afc10d750afb487ed5e50f9c4eaf07c184146f"; }; + patches = [ + # Fix compatibility with pytest 6. + # Will be included in the next release after 1.1. + (fetchpatch { + url = "https://github.com/html5lib/html5lib-python/commit/2c19b9899ab3a3e8bd0ca35e5d78544334204169.patch"; + sha256 = "sha256-VGCeB6o2QO/skeCZs8XLPfgEYVOSRL8cCpG7ajbZWEs="; + }) + ]; + propagatedBuildInputs = [ six webencodings From bec452064c3df1bb8634958069085e12e708ae87 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 9 Jan 2022 09:38:35 +0800 Subject: [PATCH 121/170] =?UTF-8?q?vala:=200.54.5=20=E2=86=92=200.54.6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/vala/raw/0.54.6/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 4e21c100eccf..b9401b816ca1 100644 --- a/pkgs/development/compilers/vala/default.nix +++ b/pkgs/development/compilers/vala/default.nix @@ -114,8 +114,8 @@ in rec { }; vala_0_54 = generic { - version = "0.54.5"; - sha256 = "ACjaFoXe3KmTeSv7X0YNtbpUjJqkQyOxiZ9zOokSFYc="; + version = "0.54.6"; + sha256 = "SdYNlqP99sQoc5dEK8bW2Vv0CqffZ47kkSjEsRum5Gk="; }; vala = vala_0_54; From e7239d0e8a7cb1c6805eda61944e26f6c815e909 Mon Sep 17 00:00:00 2001 From: Zhaofeng Li Date: Sat, 8 Jan 2022 17:59:14 -0800 Subject: [PATCH 122/170] libhwy: init at 0.15.0 --- pkgs/development/libraries/libhwy/default.nix | 47 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 49 insertions(+) create mode 100644 pkgs/development/libraries/libhwy/default.nix diff --git a/pkgs/development/libraries/libhwy/default.nix b/pkgs/development/libraries/libhwy/default.nix new file mode 100644 index 000000000000..7656e063822d --- /dev/null +++ b/pkgs/development/libraries/libhwy/default.nix @@ -0,0 +1,47 @@ +{ lib, stdenv, cmake, ninja, gtest, fetchpatch, fetchFromGitHub }: + +stdenv.mkDerivation rec { + pname = "libhwy"; + version = "0.15.0"; + + src = fetchFromGitHub { + owner = "google"; + repo = "highway"; + rev = version; + sha256 = "sha256-v2HyyHtBydr7QiI83DW1yRv2kWjUOGxFT6mmdrN9XPo="; + }; + + patches = [ + # Remove on next release + # https://github.com/google/highway/issues/460 + (fetchpatch { + name = "hwy-add-missing-includes.patch"; + url = "https://github.com/google/highway/commit/8ccab40c2f931aca6004d175eec342cc60f6baec.patch"; + sha256 = "sha256-wlp5gIvK2+OlKtsZwxq/pXTbESkUtimHXaYDjcBzmQ0="; + }) + ]; + + nativeBuildInputs = [ cmake ninja ]; + + checkInputs = [ gtest ]; + + # Required for case-insensitive filesystems ("BUILD" exists) + dontUseCmakeBuildDir = true; + + cmakeFlags = [ + "-GNinja" + "-DCMAKE_INSTALL_LIBDIR=lib" + "-DCMAKE_INSTALL_INCLUDEDIR=include" + ] ++ lib.optional doCheck "-DHWY_SYSTEM_GTEST:BOOL=ON"; + + # hydra's darwin machines run into https://github.com/libjxl/libjxl/issues/408 + doCheck = !stdenv.hostPlatform.isDarwin; + + meta = with lib; { + description = "Performance-portable, length-agnostic SIMD with runtime dispatch"; + homepage = "https://github.com/google/highway"; + license = licenses.asl20; + platforms = platforms.unix; + maintainers = with maintainers; [ zhaofengli ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index efd1b056c2ca..125ff00818ec 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17961,6 +17961,8 @@ with pkgs; libhugetlbfs = callPackage ../development/libraries/libhugetlbfs { }; + libhwy = callPackage ../development/libraries/libhwy { }; + libHX = callPackage ../development/libraries/libHX { }; libibmad = callPackage ../development/libraries/libibmad { }; From ad7c7d632342687a93b8e06c61f9bfd6e64bf479 Mon Sep 17 00:00:00 2001 From: Zhaofeng Li Date: Sat, 8 Jan 2022 17:59:14 -0800 Subject: [PATCH 123/170] libjxl: Use own libhwy package, fix RISC-V build --- pkgs/development/libraries/libjxl/default.nix | 22 +++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/pkgs/development/libraries/libjxl/default.nix b/pkgs/development/libraries/libjxl/default.nix index ea4d8aa93f02..081ddaf4988a 100644 --- a/pkgs/development/libraries/libjxl/default.nix +++ b/pkgs/development/libraries/libjxl/default.nix @@ -8,6 +8,7 @@ , giflib , gperftools , gtest +, libhwy , libjpeg , libpng , libwebp @@ -37,19 +38,16 @@ stdenv.mkDerivation rec { url = "https://github.com/libjxl/libjxl/commit/88fe3fff3dc70c72405f57c69feffd9823930034.patch"; sha256 = "1419fyiq4srpj72cynwyvqy8ldi7vn9asvkp5fsbmiqkyhb15jpk"; }) - ]; - postPatch = '' # "robust statistics" have been removed in upstream mainline as they are # conidered to cause "interoperability problems". sure enough the tests # fail with precision issues on aarch64. - sed -i '/robust_statistics_test.cc/d' lib/{jxl_tests.cmake,lib.gni} - '' + lib.optionalString stdenv.isDarwin '' - # hydra's darwin machines run into https://github.com/libjxl/libjxl/issues/408 - # unless we disable highway's tests - substituteInPlace third_party/highway/CMakeLists.txt \ - --replace 'if(BUILD_TESTING)' 'if(false)' - ''; + (fetchpatch { + name = "remove-robust-and-descriptive-statistics.patch"; + url = "https://github.com/libjxl/libjxl/commit/204f87a5e4d684544b13900109abf040dc0b402b.patch"; + sha256 = "sha256-DoAaYWLmQ+R9GZbHMTYGe0gBL9ZesgtB+2WhmbARna8="; + }) + ]; nativeBuildInputs = [ asciidoc # for docs @@ -81,6 +79,7 @@ stdenv.mkDerivation rec { brotli giflib gperftools # provides `libtcmalloc` + libhwy libjpeg libpng libwebp @@ -96,6 +95,9 @@ stdenv.mkDerivation rec { # using the vendorered ones is easier. "-DJPEGXL_FORCE_SYSTEM_BROTLI=ON" + # Use our version of highway, though it is still statically linked in + "-DJPEGXL_FORCE_SYSTEM_HWY=ON" + # TODO: Update this package to enable this (overridably via an option): # Viewer tools for evaluation. # "-DJPEGXL_ENABLE_VIEWERS=ON" @@ -107,6 +109,8 @@ stdenv.mkDerivation rec { # "-DJPEGXL_ENABLE_PLUGINS=ON" ]; + LDFLAGS = lib.optionalString stdenv.hostPlatform.isRiscV "-latomic"; + doCheck = true; # The test driver runs a test `LibraryCLinkageTest` which without From 7eefe5259a8fc5970152d8489af1d5decef54eba Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 9 Jan 2022 16:03:53 +0100 Subject: [PATCH 124/170] tracker: ignore hidden executables in subcommand directory --- pkgs/development/libraries/tracker/default.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkgs/development/libraries/tracker/default.nix b/pkgs/development/libraries/tracker/default.nix index 7dbe0d410f75..727634a9fd5d 100644 --- a/pkgs/development/libraries/tracker/default.nix +++ b/pkgs/development/libraries/tracker/default.nix @@ -1,6 +1,7 @@ { stdenv , lib , fetchurl +, fetchpatch , gettext , meson , ninja @@ -44,6 +45,13 @@ stdenv.mkDerivation rec { src = ./fix-paths.patch; inherit asciidoc; }) + + # Filter out hidden (wrapped) subcommands + # https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/481 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/tracker/-/commit/8c28c24e447f13da8cf804cd7a00f9b909c5d3f9.patch"; + sha256 = "EYo1nOtEr4semaPC5wk6A7bliRXu8qsBHaltd0DEI6Y="; + }) ]; nativeBuildInputs = [ From 23ba741aecb970a451e1be24b59ddc6daba32edc Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 9 Jan 2022 22:27:32 +0000 Subject: [PATCH 125/170] =?UTF-8?q?libsoup=5F3:=203.0.3=20=E2=86=92=203.0.?= =?UTF-8?q?4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://ftp.gnome.org/pub/GNOME/sources/libsoup/3.0/libsoup-3.0.4.news --- pkgs/development/libraries/libsoup/3.x.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libsoup/3.x.nix b/pkgs/development/libraries/libsoup/3.x.nix index ef87c5f20337..454a1cdf40a2 100644 --- a/pkgs/development/libraries/libsoup/3.x.nix +++ b/pkgs/development/libraries/libsoup/3.x.nix @@ -21,13 +21,13 @@ stdenv.mkDerivation rec { pname = "libsoup"; - version = "3.0.3"; + version = "3.0.4"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-UWWwTa2uMCfpoogthoaUtFhq/9d4wZSYKuTeI3PS4l4="; + sha256 = "sha256-W9OLXgkfcH/X+j7Xw3qsyj+OFsZXh/HMF9w40dzeVns="; }; nativeBuildInputs = [ From 81d8b35ff51efd02c9dad8380cc497ade75c62bd Mon Sep 17 00:00:00 2001 From: Bernardo Meurer Date: Mon, 3 Jan 2022 16:48:50 -0300 Subject: [PATCH 126/170] commitizen: init @ 2.20.3 --- .../version-management/commitizen/default.nix | 49 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 51 insertions(+) create mode 100644 pkgs/applications/version-management/commitizen/default.nix diff --git a/pkgs/applications/version-management/commitizen/default.nix b/pkgs/applications/version-management/commitizen/default.nix new file mode 100644 index 000000000000..fddffe6d198d --- /dev/null +++ b/pkgs/applications/version-management/commitizen/default.nix @@ -0,0 +1,49 @@ +{ buildPythonApplication +, lib +, fetchFromGitHub +, poetry +, termcolor +, questionary +, colorama +, decli +, tomlkit +, jinja2 +, pyyaml +, argcomplete +, typing-extensions +}: + +buildPythonApplication rec { + pname = "commitizen"; + version = "2.20.3"; + + src = fetchFromGitHub { + owner = "commitizen-tools"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-rAm2GTRxZIHQmn/FM0IwwH/2h+oOvzGmeVr5xkvD/zA="; + }; + + format = "pyproject"; + + nativeBuildInputs = [ poetry ]; + + propagatedBuildInputs = [ + termcolor + questionary + colorama + decli + tomlkit + jinja2 + pyyaml + argcomplete + typing-extensions + ]; + + meta = with lib; { + description = "Tool to create committing rules for projects, auto bump versions, and generate changelogs"; + homepage = "https://github.com/commitizen-tools/commitizen"; + license = licenses.mit; + maintainers = with maintainers; [ lovesegfault ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dcc25c731902..cdbac82d992e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2546,6 +2546,8 @@ with pkgs; comma = callPackage ../tools/package-management/comma { }; + commitizen = python3Packages.callPackage ../applications/version-management/commitizen { }; + common-licenses = callPackage ../data/misc/common-licenses {}; compactor = callPackage ../applications/networking/compactor { }; From aeea1bb53b28fc7bbe4583bd21f5bda8b05d5041 Mon Sep 17 00:00:00 2001 From: Las Safin Date: Sun, 19 Dec 2021 19:12:08 +0000 Subject: [PATCH 127/170] alsa-lib: 1.2.5.1 -> 1.2.6.1 --- .../alsa-lib/alsa-plugin-conf-multilib.patch | 232 ------------------ .../linux/alsa-project/alsa-lib/default.nix | 14 +- 2 files changed, 3 insertions(+), 243 deletions(-) delete mode 100644 pkgs/os-specific/linux/alsa-project/alsa-lib/alsa-plugin-conf-multilib.patch diff --git a/pkgs/os-specific/linux/alsa-project/alsa-lib/alsa-plugin-conf-multilib.patch b/pkgs/os-specific/linux/alsa-project/alsa-lib/alsa-plugin-conf-multilib.patch deleted file mode 100644 index b17df9a492e5..000000000000 --- a/pkgs/os-specific/linux/alsa-project/alsa-lib/alsa-plugin-conf-multilib.patch +++ /dev/null @@ -1,232 +0,0 @@ -diff --git a/src/control/control.c b/src/control/control.c -index d66ed75..42cecad 100644 ---- a/src/control/control.c -+++ b/src/control/control.c -@@ -838,6 +838,10 @@ static int snd_ctl_open_conf(snd_ctl_t **ctlp, const char *name, - #ifndef PIC - extern void *snd_control_open_symbols(void); - #endif -+ -+ snd_config_t *libs = NULL; -+ const char *libs_lib = NULL; -+ - if (snd_config_get_type(ctl_conf) != SND_CONFIG_TYPE_COMPOUND) { - if (name) - SNDERR("Invalid type for CTL %s definition", name); -@@ -879,6 +883,19 @@ static int snd_ctl_open_conf(snd_ctl_t **ctlp, const char *name, - SNDERR("Invalid type for %s", id); - goto _err; - } -+ -+ continue; -+ } -+ // Handle an array of extra libs. -+ if (strcmp(id, "libs") == 0) { -+ if (snd_config_get_type(n) != SND_CONFIG_TYPE_COMPOUND) { -+ SNDERR("Invalid type for libs definition in CTL %s definition", -+ str); -+ goto _err; -+ } -+ -+ libs = n; -+ - continue; - } - if (strcmp(id, "open") == 0) { -@@ -903,7 +920,62 @@ static int snd_ctl_open_conf(snd_ctl_t **ctlp, const char *name, - open_name = buf; - sprintf(buf, "_snd_ctl_%s_open", str); - } -- if (!lib) { -+ -+#ifndef PIC -+ snd_control_open_symbols(); -+#endif -+ -+ // Normal alsa behaviour when there is no libs array. -+ if (!libs) { -+ if (lib) { -+ open_func = snd_dlobj_cache_get(lib, open_name, -+ SND_DLSYM_VERSION(SND_CONTROL_DLSYM_VERSION), 1); -+ } -+ } -+ // Handle libs array. -+ // Suppresses error messages if any function is loaded successfully. -+ else { -+ if (lib) { -+ open_func = snd_dlobj_cache_get(lib, open_name, -+ SND_DLSYM_VERSION(SND_CONTROL_DLSYM_VERSION), 0); -+ } -+ -+ if (!open_func) { -+ snd_config_for_each(i, next, libs) { -+ snd_config_t *n = snd_config_iterator_entry(i); -+ -+ err = snd_config_get_string(n, &libs_lib); -+ if (err < 0) { -+ SNDERR("Invalid entry in CTL %s libs definition", str); -+ goto _err; -+ } -+ -+ if (!open_func) { -+ open_func = snd_dlobj_cache_get(libs_lib, open_name, -+ SND_DLSYM_VERSION(SND_CONTROL_DLSYM_VERSION), 0); -+ } -+ } -+ } -+ -+ // Print error messages. -+ if (!open_func) { -+ if (lib) { -+ SNDERR("Either %s cannot be opened or %s was not defined inside", -+ lib, open_name); -+ } -+ -+ snd_config_for_each(i, next, libs) { -+ snd_config_t *n = snd_config_iterator_entry(i); -+ -+ snd_config_get_string(n, &libs_lib); -+ SNDERR("Either %s cannot be opened or %s was not defined inside", -+ libs_lib, open_name); -+ } -+ } -+ } -+ -+ // Look in ALSA_PLUGIN_DIR iff we found nowhere else to look. -+ if (!lib && (!libs || !libs_lib)) { - const char *const *build_in = build_in_ctls; - while (*build_in) { - if (!strcmp(*build_in, str)) -@@ -919,12 +991,11 @@ static int snd_ctl_open_conf(snd_ctl_t **ctlp, const char *name, - lib = buf1; - sprintf(buf1, "%s/libasound_module_ctl_%s.so", ALSA_PLUGIN_DIR, str); - } -- } --#ifndef PIC -- snd_control_open_symbols(); --#endif -- open_func = snd_dlobj_cache_get(lib, open_name, -+ -+ open_func = snd_dlobj_cache_get(lib, open_name, - SND_DLSYM_VERSION(SND_CONTROL_DLSYM_VERSION), 1); -+ } -+ - if (open_func) { - err = open_func(ctlp, name, ctl_root, ctl_conf, mode); - if (err >= 0) { -diff --git a/src/pcm/pcm.c b/src/pcm/pcm.c -index 2e24338..7f489f4 100644 ---- a/src/pcm/pcm.c -+++ b/src/pcm/pcm.c -@@ -2116,6 +2116,10 @@ static int snd_pcm_open_conf(snd_pcm_t **pcmp, const char *name, - #ifndef PIC - extern void *snd_pcm_open_symbols(void); - #endif -+ -+ snd_config_t *libs = NULL; -+ const char *libs_lib = NULL; -+ - if (snd_config_get_type(pcm_conf) != SND_CONFIG_TYPE_COMPOUND) { - char *val; - id = NULL; -@@ -2160,6 +2164,19 @@ static int snd_pcm_open_conf(snd_pcm_t **pcmp, const char *name, - SNDERR("Invalid type for %s", id); - goto _err; - } -+ -+ continue; -+ } -+ // Handle an array of extra libs. -+ if (strcmp(id, "libs") == 0) { -+ if (snd_config_get_type(n) != SND_CONFIG_TYPE_COMPOUND) { -+ SNDERR("Invalid type for libs definition in PCM %s definition", -+ str); -+ goto _err; -+ } -+ -+ libs = n; -+ - continue; - } - if (strcmp(id, "open") == 0) { -@@ -2184,7 +2201,62 @@ static int snd_pcm_open_conf(snd_pcm_t **pcmp, const char *name, - open_name = buf; - sprintf(buf, "_snd_pcm_%s_open", str); - } -- if (!lib) { -+ -+#ifndef PIC -+ snd_pcm_open_symbols(); /* this call is for static linking only */ -+#endif -+ -+ // Normal alsa behaviour when there is no libs array. -+ if (!libs) { -+ if (lib) { -+ open_func = snd_dlobj_cache_get(lib, open_name, -+ SND_DLSYM_VERSION(SND_PCM_DLSYM_VERSION), 1); -+ } -+ } -+ // Handle libs array. -+ // Suppresses error messages if any function is loaded successfully. -+ else { -+ if (lib) { -+ open_func = snd_dlobj_cache_get(lib, open_name, -+ SND_DLSYM_VERSION(SND_PCM_DLSYM_VERSION), 0); -+ } -+ -+ if (!open_func) { -+ snd_config_for_each(i, next, libs) { -+ snd_config_t *n = snd_config_iterator_entry(i); -+ -+ err = snd_config_get_string(n, &libs_lib); -+ if (err < 0) { -+ SNDERR("Invalid entry in PCM %s libs definition", str); -+ goto _err; -+ } -+ -+ if (!open_func) { -+ open_func = snd_dlobj_cache_get(libs_lib, open_name, -+ SND_DLSYM_VERSION(SND_PCM_DLSYM_VERSION), 0); -+ } -+ } -+ } -+ -+ // Print error messages. -+ if (!open_func) { -+ if (lib) { -+ SNDERR("Either %s cannot be opened or %s was not defined inside", -+ lib, open_name); -+ } -+ -+ snd_config_for_each(i, next, libs) { -+ snd_config_t *n = snd_config_iterator_entry(i); -+ -+ snd_config_get_string(n, &libs_lib); -+ SNDERR("Either %s cannot be opened or %s was not defined inside", -+ libs_lib, open_name); -+ } -+ } -+ } -+ -+ // Look in ALSA_PLUGIN_DIR iff we found nowhere else to look. -+ if (!lib && (!libs || !libs_lib)) { - const char *const *build_in = build_in_pcms; - while (*build_in) { - if (!strcmp(*build_in, str)) -@@ -2200,12 +2272,11 @@ static int snd_pcm_open_conf(snd_pcm_t **pcmp, const char *name, - lib = buf1; - sprintf(buf1, "%s/libasound_module_pcm_%s.so", ALSA_PLUGIN_DIR, str); - } -- } --#ifndef PIC -- snd_pcm_open_symbols(); /* this call is for static linking only */ --#endif -- open_func = snd_dlobj_cache_get(lib, open_name, -+ -+ open_func = snd_dlobj_cache_get(lib, open_name, - SND_DLSYM_VERSION(SND_PCM_DLSYM_VERSION), 1); -+ } -+ - if (open_func) { - err = open_func(pcmp, name, pcm_root, pcm_conf, stream, mode); - if (err >= 0) { diff --git a/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix b/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix index a23502714827..445d171d31fd 100644 --- a/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix +++ b/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix @@ -7,24 +7,15 @@ stdenv.mkDerivation rec { pname = "alsa-lib"; - version = "1.2.5.1"; + version = "1.2.6.1"; src = fetchurl { url = "mirror://alsa/lib/${pname}-${version}.tar.bz2"; - sha256 = "sha256-YoQh2VDOyvI03j+JnVIMCmkjMTyWStdR/6wIHfMxQ44="; + hash = "sha256-rVgpk9Us21+xWaC+q2CmrFfqsMwb34XcTbbWGX8CMz8="; }; - patches = [ - ./alsa-plugin-conf-multilib.patch - ]; - enableParallelBuilding = true; - # Fix pcm.h file in order to prevent some compilation bugs - postPatch = '' - sed -i -e 's|//int snd_pcm_mixer_element(snd_pcm_t \*pcm, snd_mixer_t \*mixer, snd_mixer_elem_t \*\*elem);|/\*int snd_pcm_mixer_element(snd_pcm_t \*pcm, snd_mixer_t \*mixer, snd_mixer_elem_t \*\*elem);\*/|' include/pcm.h - ''; - postInstall = '' ln -s ${alsa-ucm-conf}/share/alsa/{ucm,ucm2} $out/share/alsa ln -s ${alsa-topology-conf}/share/alsa/topology $out/share/alsa @@ -43,5 +34,6 @@ stdenv.mkDerivation rec { license = licenses.lgpl21Plus; platforms = platforms.linux; + maintainers = with maintainers; [ l-as ]; }; } From ef4fe46f17065d178f1067a24a9919ec57c93536 Mon Sep 17 00:00:00 2001 From: Zhaofeng Li Date: Wed, 5 Jan 2022 11:17:38 -0800 Subject: [PATCH 128/170] spidermonkey: Add patch to support riscv64 --- .../interpreters/spidermonkey/78.nix | 9 ++ .../spidermonkey/add-riscv64-support.patch | 123 ++++++++++++++++++ 2 files changed, 132 insertions(+) create mode 100644 pkgs/development/interpreters/spidermonkey/add-riscv64-support.patch diff --git a/pkgs/development/interpreters/spidermonkey/78.nix b/pkgs/development/interpreters/spidermonkey/78.nix index b4ed171eb78c..a534026d9ecd 100644 --- a/pkgs/development/interpreters/spidermonkey/78.nix +++ b/pkgs/development/interpreters/spidermonkey/78.nix @@ -35,6 +35,15 @@ stdenv.mkDerivation rec { url = "https://salsa.debian.org/mozilla-team/firefox/commit/fd6847c9416f9eebde636e21d794d25d1be8791d.patch"; sha256 = "02b7zwm6vxmk61aj79a6m32s1k5sr0hwm3q1j4v6np9jfyd10g1j"; }) + + # Remove this when updating to 79 - The patches are already applied upstream + # https://bugzilla.mozilla.org/show_bug.cgi?id=1318905 + + # Combination of 3 changesets, modified to apply on 78: + # - https://hg.mozilla.org/mozilla-central/rev/06d7e1b6b7e7 + # - https://hg.mozilla.org/mozilla-central/rev/ec48f15d085c + # - https://hg.mozilla.org/mozilla-central/rev/6803dda74d33 + ./add-riscv64-support.patch ]; outputs = [ "out" "dev" ]; diff --git a/pkgs/development/interpreters/spidermonkey/add-riscv64-support.patch b/pkgs/development/interpreters/spidermonkey/add-riscv64-support.patch new file mode 100644 index 000000000000..9d5d7c5507dc --- /dev/null +++ b/pkgs/development/interpreters/spidermonkey/add-riscv64-support.patch @@ -0,0 +1,123 @@ +# HG changeset patch +# User John Paul Adrian Glaubitz +# Date 1592464269 0 +# Thu Jun 18 07:11:09 2020 +0000 +# Node ID 5de7d747a962df5f8aefc016a62d7270ac18879e +# Parent e4b11f027efc1f8c2710ae3f52487a8f10a8fb39 +Bug 1318905 - build: Add riscv64 as target architecture to mozbuild r=glandium + +Adds the basic definitions for riscv64 to mozbuild, allowing to build Spidermonkey. + +Differential Revision: https://phabricator.services.mozilla.com/D78623 + +diff -r e4b11f027efc -r 5de7d747a962 build/moz.configure/init.configure +--- a/build/moz.configure/init.configure Sun May 31 17:11:57 2020 +0000 ++++ b/build/moz.configure/init.configure Thu Jun 18 07:11:09 2020 +0000 +@@ -741,6 +741,9 @@ + elif cpu.startswith('aarch64'): + canonical_cpu = 'aarch64' + endianness = 'little' ++ elif cpu in ('riscv64', 'riscv64gc'): ++ canonical_cpu = 'riscv64' ++ endianness = 'little' + elif cpu == 'sh4': + canonical_cpu = 'sh4' + endianness = 'little' +diff -r e4b11f027efc -r 5de7d747a962 python/mozbuild/mozbuild/configure/constants.py +--- a/python/mozbuild/mozbuild/configure/constants.py Sun May 31 17:11:57 2020 +0000 ++++ b/python/mozbuild/mozbuild/configure/constants.py Thu Jun 18 07:11:09 2020 +0000 +@@ -49,6 +49,7 @@ + 'mips64': 64, + 'ppc': 32, + 'ppc64': 64, ++ 'riscv64': 64, + 's390': 32, + 's390x': 64, + 'sh4': 32, +@@ -87,6 +88,7 @@ + ('sparc', '__sparc__'), + ('mips64', '__mips64'), + ('mips32', '__mips__'), ++ ('riscv64', '__riscv && __riscv_xlen == 64'), + ('sh4', '__sh__'), + )) + +diff -r e4b11f027efc -r 5de7d747a962 python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py +--- a/python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py Sun May 31 17:11:57 2020 +0000 ++++ b/python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py Thu Jun 18 07:11:09 2020 +0000 +@@ -1208,6 +1208,10 @@ + 'mips-unknown-linux-gnu': big_endian + { + '__mips__': 1, + }, ++ 'riscv64-unknown-linux-gnu': little_endian + { ++ '__riscv': 1, ++ '__riscv_xlen': 64, ++ }, + 'sh4-unknown-linux-gnu': little_endian + { + '__sh__': 1, + }, +# HG changeset patch +# User John Paul Adrian Glaubitz +# Date 1592464269 0 +# Thu Jun 18 07:11:09 2020 +0000 +# Node ID e3d924797cb2d508ff938414168e98ccf66f07fe +# Parent 5de7d747a962df5f8aefc016a62d7270ac18879e +Bug 1318905 - js:jit: Enable AtomicOperations-feeling-lucky.h on riscv64 r=lth + +This allows the build on riscv64 to use the atomic operations provided by GCC. + +Differential Revision: https://phabricator.services.mozilla.com/D78624 + +diff -r 5de7d747a962 -r e3d924797cb2 js/src/jit/AtomicOperations.h +--- a/js/src/jit/AtomicOperations.h Thu Jun 18 07:11:09 2020 +0000 ++++ b/js/src/jit/AtomicOperations.h Thu Jun 18 07:11:09 2020 +0000 +@@ -391,7 +391,7 @@ + #elif defined(__ppc__) || defined(__PPC__) || defined(__sparc__) || \ + defined(__ppc64__) || defined(__PPC64__) || defined(__ppc64le__) || \ + defined(__PPC64LE__) || defined(__alpha__) || defined(__hppa__) || \ +- defined(__sh__) || defined(__s390__) || defined(__s390x__) ++ defined(__sh__) || defined(__s390__) || defined(__s390x__) || defined(__riscv) + # include "jit/shared/AtomicOperations-feeling-lucky.h" + #else + # error "No AtomicOperations support provided for this platform" +diff -r 5de7d747a962 -r e3d924797cb2 js/src/jit/shared/AtomicOperations-feeling-lucky-gcc.h +--- a/js/src/jit/shared/AtomicOperations-feeling-lucky-gcc.h Thu Jun 18 07:11:09 2020 +0000 ++++ b/js/src/jit/shared/AtomicOperations-feeling-lucky-gcc.h Thu Jun 18 07:11:09 2020 +0000 +@@ -63,6 +63,11 @@ + # define HAS_64BIT_LOCKFREE + #endif + ++#if defined(__riscv) && __riscv_xlen == 64 ++# define HAS_64BIT_ATOMICS ++# define HAS_64BIT_LOCKFREE ++#endif ++ + #ifdef __sparc__ + # ifdef __LP64__ + # define HAS_64BIT_ATOMICS +# HG changeset patch +# User John Paul Adrian Glaubitz +# Date 1592464269 0 +# Thu Jun 18 07:11:09 2020 +0000 +# Node ID 3f652d12b8bc0bd213020d488ecb4d3710bb11fa +# Parent e3d924797cb2d508ff938414168e98ccf66f07fe +Bug 1318905 - mfbt:tests: Define RETURN_INSTR for riscv64 in TestPoisonArea r=glandium + +Define RETURN_INSTR for riscv64 in TestPoisonArea, i.e. the riscv64 assembly +opcodes for "ret ; ret". + +Differential Revision: https://phabricator.services.mozilla.com/D78625 + +diff -r e3d924797cb2 -r 3f652d12b8bc mfbt/tests/TestPoisonArea.cpp +--- a/mfbt/tests/TestPoisonArea.cpp Thu Jun 18 07:11:09 2020 +0000 ++++ b/mfbt/tests/TestPoisonArea.cpp Thu Jun 18 07:11:09 2020 +0000 +@@ -132,6 +132,9 @@ + #elif defined _ARCH_PPC || defined _ARCH_PWR || defined _ARCH_PWR2 + # define RETURN_INSTR 0x4E800020 /* blr */ + ++#elif defined __riscv ++# define RETURN_INSTR 0x80828082 /* ret; ret */ ++ + #elif defined __sparc || defined __sparcv9 + # define RETURN_INSTR 0x81c3e008 /* retl */ + From 2303031e51ca6e4bc11db858492992c0ea0ecd2a Mon Sep 17 00:00:00 2001 From: Zhaofeng Li Date: Wed, 5 Jan 2022 11:17:38 -0800 Subject: [PATCH 129/170] spidermonkey: Force lp64d ABI for riscv64 cc-rs is hardcoded to use the soft-float ABI for riscv64, while the rest of the system is double-float. This is not just a missing stub header file - You can't link object files using different ABIs. --- pkgs/development/interpreters/spidermonkey/78.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/interpreters/spidermonkey/78.nix b/pkgs/development/interpreters/spidermonkey/78.nix index a534026d9ecd..4f525c8f0a5b 100644 --- a/pkgs/development/interpreters/spidermonkey/78.nix +++ b/pkgs/development/interpreters/spidermonkey/78.nix @@ -107,6 +107,10 @@ stdenv.mkDerivation rec { depsBuildBuild = [ buildPackages.stdenv.cc ]; + # cc-rs insists on using -mabi=lp64 (soft-float) for riscv64, + # while we have a double-float toolchain + NIX_CFLAGS_COMPILE = lib.optionalString (with stdenv.hostPlatform; isRiscV && is64bit) "-mabi=lp64d"; + # Remove unnecessary static lib preFixup = '' moveToOutput bin/js78-config "$dev" From 93a83a761a253d6c849ef8c70b9802860828b9a4 Mon Sep 17 00:00:00 2001 From: Christian Kampka Date: Mon, 10 Jan 2022 20:45:19 +0100 Subject: [PATCH 130/170] libbpf: Fix musl build See https://github.com/libbpf/libbpf/pull/41 for details. --- pkgs/os-specific/linux/libbpf/default.nix | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/libbpf/default.nix b/pkgs/os-specific/linux/libbpf/default.nix index daee83e61dbc..81e86fe77efc 100644 --- a/pkgs/os-specific/linux/libbpf/default.nix +++ b/pkgs/os-specific/linux/libbpf/default.nix @@ -21,12 +21,16 @@ stdenv.mkDerivation rec { sha256 = "sha256-/MLPflnfooe7Wjy8M3CTowAi5oYpscruSkDsaVzhmYQ="; }; + patches = [(fetchpatch { + url = "https://github.com/libbpf/libbpf/pull/41.diff"; + sha256 = "sha256-pg5WARqh6z0nkTHMBhftxwdV2SyswC2lfaCXCpez0VA="; + })]; + nativeBuildInputs = [ pkg-config ]; buildInputs = [ libelf zlib ]; - sourceRoot = "source/src"; enableParallelBuilding = true; - makeFlags = [ "PREFIX=$(out)" ]; + makeFlags = [ "PREFIX=$(out)" "-C src" ]; passthru.tests = { bpf = nixosTests.bpf; @@ -34,7 +38,7 @@ stdenv.mkDerivation rec { postInstall = '' # install linux's libbpf-compatible linux/btf.h - install -Dm444 ../include/uapi/linux/btf.h -t $out/include/linux + install -Dm444 include/uapi/linux/btf.h -t $out/include/linux ''; # FIXME: Multi-output requires some fixes to the way the pkg-config file is From 6f4c70cbfe018cd57b1e56836905e5d05414c7ee Mon Sep 17 00:00:00 2001 From: Josh Hoffer Date: Wed, 24 Nov 2021 14:46:39 -0700 Subject: [PATCH 131/170] gst-plugins-base 1.18.4 -> 1.18.5 --- .../development/libraries/gstreamer/bad/default.nix | 13 ++----------- .../libraries/gstreamer/base/default.nix | 4 ++-- .../libraries/gstreamer/core/default.nix | 4 ++-- .../libraries/gstreamer/devtools/default.nix | 4 ++-- .../development/libraries/gstreamer/ges/default.nix | 4 ++-- .../libraries/gstreamer/good/default.nix | 4 ++-- .../libraries/gstreamer/libav/default.nix | 4 ++-- .../libraries/gstreamer/rtsp-server/default.nix | 4 ++-- .../libraries/gstreamer/ugly/default.nix | 4 ++-- .../libraries/gstreamer/vaapi/default.nix | 4 ++-- 10 files changed, 20 insertions(+), 29 deletions(-) diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix index 8c6a8b056781..016a7a992ed9 100644 --- a/pkgs/development/libraries/gstreamer/bad/default.nix +++ b/pkgs/development/libraries/gstreamer/bad/default.nix @@ -1,7 +1,6 @@ { lib , stdenv , fetchurl -, fetchpatch , meson , ninja , gettext @@ -93,26 +92,18 @@ stdenv.mkDerivation rec { pname = "gst-plugins-bad"; - version = "1.18.2"; + version = "1.18.5"; outputs = [ "out" "dev" ]; src = fetchurl { url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; - sha256 = "06ildd4rl6cynirv3p00d2ddf5is9svj4i7mkahldzhq24pq5mca"; + sha256 = "sha256-oWSSO5Tw0IV4pvyuqsbgwF2niKRpA6EIaHDpykWtZ44="; }; patches = [ # Use pkgconfig to inject the includedirs ./fix_pkgconfig_includedir.patch - # Fix “error: cannot initialize a parameter of type 'unsigned long *' with an rvalue of type 'typename std::remove_reference::type *' (aka 'volatile unsigned long *')” on Darwin. - (fetchpatch { - url = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/commit/640a65bf966df065d41a511e2d76d1f26a2e770c.patch"; - sha256 = "E5pig+qEfR58Jticr6ydFxZOhM3ZJ8zgrf5K4BdiB/Y="; - includes = [ - "ext/opencv/gstcvdilateerode.cpp" - ]; - }) ]; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gstreamer/base/default.nix b/pkgs/development/libraries/gstreamer/base/default.nix index 1edadf0a51bc..8b6073cb9588 100644 --- a/pkgs/development/libraries/gstreamer/base/default.nix +++ b/pkgs/development/libraries/gstreamer/base/default.nix @@ -41,13 +41,13 @@ stdenv.mkDerivation rec { pname = "gst-plugins-base"; - version = "1.18.4"; + version = "1.18.5"; outputs = [ "out" "dev" ]; src = fetchurl { url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; - sha256 = "08w3ivbc6n4vdds2ap6q7l8zdk9if8417nznyqidf0adm0lk5r99"; + sha256 = "sha256-lgt69FhXANsP3VuENVThHiVk/tngYfWR+uiKe+ZEb6M="; }; patches = [ diff --git a/pkgs/development/libraries/gstreamer/core/default.nix b/pkgs/development/libraries/gstreamer/core/default.nix index c4b40877fb54..268da0171630 100644 --- a/pkgs/development/libraries/gstreamer/core/default.nix +++ b/pkgs/development/libraries/gstreamer/core/default.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { pname = "gstreamer"; - version = "1.18.4"; + version = "1.18.5"; outputs = [ "bin" @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; - sha256 = "1igv9l4hm21kp1jmlwlagzs7ly1vaxv1sbda29q8247372dwkvls"; + sha256 = "sha256-VYYiMqY0Wbv1ar694whcqa7CEbR46JHazqTW34yv6Ao="; }; patches = [ diff --git a/pkgs/development/libraries/gstreamer/devtools/default.nix b/pkgs/development/libraries/gstreamer/devtools/default.nix index 12cb6dac6f31..0b7be2bd03ec 100644 --- a/pkgs/development/libraries/gstreamer/devtools/default.nix +++ b/pkgs/development/libraries/gstreamer/devtools/default.nix @@ -12,11 +12,11 @@ stdenv.mkDerivation rec { pname = "gst-devtools"; - version = "1.18.4"; + version = "1.18.5"; src = fetchurl { url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; - sha256 = "1kvcabcfzm7wqih3lzgrg9xjbn4xpx43d1m2zkkvab4i8161kggz"; + sha256 = "sha256-/s/8hkR9r1wqBoQ8dXqZHXRcqiBpRGoNdG6ZsT98sHk="; }; patches = [ diff --git a/pkgs/development/libraries/gstreamer/ges/default.nix b/pkgs/development/libraries/gstreamer/ges/default.nix index 840b0f252857..0bfe6f3e0e2f 100644 --- a/pkgs/development/libraries/gstreamer/ges/default.nix +++ b/pkgs/development/libraries/gstreamer/ges/default.nix @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { pname = "gst-editing-services"; - version = "1.18.4"; + version = "1.18.5"; outputs = [ "out" @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; - sha256 = "010xg960qsh5dwmf0y9l1q13h0cymmrgapzla2zsw66ylxqbi1s6"; + sha256 = "sha256-ivSoOU0FHz4YKAaG20mm76zMlcDFmhfw9WTjIABZDfU="; }; patches = [ diff --git a/pkgs/development/libraries/gstreamer/good/default.nix b/pkgs/development/libraries/gstreamer/good/default.nix index bc1656c191a4..a6ed248b663d 100644 --- a/pkgs/development/libraries/gstreamer/good/default.nix +++ b/pkgs/development/libraries/gstreamer/good/default.nix @@ -48,13 +48,13 @@ assert raspiCameraSupport -> (stdenv.isLinux && stdenv.isAarch64); stdenv.mkDerivation rec { pname = "gst-plugins-good"; - version = "1.18.4"; + version = "1.18.5"; outputs = [ "out" "dev" ]; src = fetchurl { url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; - sha256 = "1c1rpq709cy8maaykyn1n0kckj9c6fl3mhvixkk6xmdwkcx0xrdn"; + sha256 = "sha256-Oq7up3Zfv4gBrM5KUDqbBfc/BOijU1Lp0AIyz9VVeWs="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gstreamer/libav/default.nix b/pkgs/development/libraries/gstreamer/libav/default.nix index 009a1555f770..7f2828253c88 100644 --- a/pkgs/development/libraries/gstreamer/libav/default.nix +++ b/pkgs/development/libraries/gstreamer/libav/default.nix @@ -15,11 +15,11 @@ stdenv.mkDerivation rec { pname = "gst-libav"; - version = "1.18.4"; + version = "1.18.5"; src = fetchurl { url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; - sha256 = "15n3x3vhshqa3icw93g4vqmqd46122anzqvfxwn6q8famlxlcjil"; + sha256 = "sha256-gi4AipEOndE67b3Y3GP+3vQEDA7i6Se6sxEuneaTpUg="; }; outputs = [ "out" "dev" ]; diff --git a/pkgs/development/libraries/gstreamer/rtsp-server/default.nix b/pkgs/development/libraries/gstreamer/rtsp-server/default.nix index d66376b64996..a75af25224a0 100644 --- a/pkgs/development/libraries/gstreamer/rtsp-server/default.nix +++ b/pkgs/development/libraries/gstreamer/rtsp-server/default.nix @@ -12,11 +12,11 @@ stdenv.mkDerivation rec { pname = "gst-rtsp-server"; - version = "1.18.4"; + version = "1.18.5"; src = fetchurl { url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; - sha256 = "153c78klvzlmi86d0gmdf7w9crv11rkd4y82b14a0wdr83gbhsx4"; + sha256 = "sha256-BNY79IgWxvQcc/beD5EqfO8KqznEQWKnvOzhkj38nR8="; }; outputs = [ diff --git a/pkgs/development/libraries/gstreamer/ugly/default.nix b/pkgs/development/libraries/gstreamer/ugly/default.nix index 049e8a99f095..7c4b21f7c833 100644 --- a/pkgs/development/libraries/gstreamer/ugly/default.nix +++ b/pkgs/development/libraries/gstreamer/ugly/default.nix @@ -23,13 +23,13 @@ stdenv.mkDerivation rec { pname = "gst-plugins-ugly"; - version = "1.18.4"; + version = "1.18.5"; outputs = [ "out" "dev" ]; src = fetchurl { url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; - sha256 = "0g6i4db1883q3j0l2gdv46fcqwiiaw63n6mhvsfcms1i1p7g1391"; + sha256 = "sha256-3zKAPpj4qZeTc/osp+BeYvl3sQl1dtOoBhnZ9cafZtk="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gstreamer/vaapi/default.nix b/pkgs/development/libraries/gstreamer/vaapi/default.nix index 19e65c5a75eb..5de9a247a527 100644 --- a/pkgs/development/libraries/gstreamer/vaapi/default.nix +++ b/pkgs/development/libraries/gstreamer/vaapi/default.nix @@ -21,11 +21,11 @@ stdenv.mkDerivation rec { pname = "gstreamer-vaapi"; - version = "1.18.4"; + version = "1.18.5"; src = fetchurl { url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; - sha256 = "1sia4l88z7kkxm2z9j20l43rqkrnsa47xccski10s5gkhsprinwj"; + sha256 = "sha256-SkYPuVVZ9BRE6ySGStLZ43kitu6pQVEDEDGfw+C6cns="; }; outputs = [ From a4733c7952d2511c057437e3040fb6bad2baeb46 Mon Sep 17 00:00:00 2001 From: Josh Hoffer Date: Tue, 5 Oct 2021 17:08:14 -0600 Subject: [PATCH 132/170] libnice: added graphviz build input added graphviz build input for compatability with meson >=0.57.2 see PR meson#8641 --- pkgs/development/libraries/libnice/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/libnice/default.nix b/pkgs/development/libraries/libnice/default.nix index 87f2d7327125..42fb795d38ed 100644 --- a/pkgs/development/libraries/libnice/default.nix +++ b/pkgs/development/libraries/libnice/default.nix @@ -13,6 +13,7 @@ , gupnp-igd , gst_all_1 , gnutls +, graphviz }: stdenv.mkDerivation rec { @@ -48,6 +49,7 @@ stdenv.mkDerivation rec { gtk-doc docbook_xsl docbook_xml_dtd_412 + graphviz ]; buildInputs = [ From e7da4b5f40c7a9bf62f1e4d96aad9655c153d8dc Mon Sep 17 00:00:00 2001 From: Josh Hoffer Date: Fri, 12 Nov 2021 14:11:41 -0700 Subject: [PATCH 133/170] systemd: removed unknown meson options --- pkgs/os-specific/linux/systemd/default.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index e22b8f877bf6..813c255c5362 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -415,7 +415,7 @@ stdenv.mkDerivation { "-Dnetworkd=${lib.boolToString withNetworkd}" "-Doomd=${lib.boolToString withOomd}" "-Dpolkit=${lib.boolToString withPolkit}" - "-Dcryptsetup=${lib.boolToString withCryptsetup}" + "-Dlibcryptsetup=${lib.boolToString withCryptsetup}" "-Dportabled=${lib.boolToString withPortabled}" "-Dhwdb=${lib.boolToString withHwdb}" "-Dremote=${lib.boolToString withRemote}" @@ -453,7 +453,6 @@ stdenv.mkDerivation { "-Dsysvinit-path=" "-Dsysvrcnd-path=" - "-Dkill-path=${coreutils}/bin/kill" "-Dkmod-path=${kmod}/bin/kmod" "-Dsulogin-path=${util-linux}/bin/sulogin" "-Dmount-path=${util-linux}/bin/mount" @@ -471,7 +470,6 @@ stdenv.mkDerivation { ] ++ lib.optionals withEfi [ "-Defi-libdir=${toString gnu-efi}/lib" "-Defi-includedir=${toString gnu-efi}/include/efi" - "-Defi-ldsdir=${toString gnu-efi}/lib" ] ++ lib.optionals (withShellCompletions == false) [ "-Dbashcompletiondir=no" "-Dzshcompletiondir=no" From 23f24c95d776496adcb0cac27793cad3266052a9 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Fri, 3 Dec 2021 15:47:22 +0000 Subject: [PATCH 134/170] shared-mime-info: 2.1 -> unstable-2021-12-03 We need https://gitlab.freedesktop.org/xdg/shared-mime-info/-/merge_requests/162 ("migrate from itstool to msgfmt for creating translated XML") to fix the build with Meson 0.60.0. Signed-off-by: Patrick Hilhorst --- pkgs/data/misc/shared-mime-info/default.nix | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/pkgs/data/misc/shared-mime-info/default.nix b/pkgs/data/misc/shared-mime-info/default.nix index 4c60895897fe..2feb5e2f5a47 100644 --- a/pkgs/data/misc/shared-mime-info/default.nix +++ b/pkgs/data/misc/shared-mime-info/default.nix @@ -13,34 +13,24 @@ }: stdenv.mkDerivation rec { - pname = "shared-mime-info"; - version = "2.1"; + pname = "shared-mime-info-unstable"; + version = "2021-12-03"; outputs = [ "out" "dev" ]; src = fetchFromGitLab { domain = "gitlab.freedesktop.org"; owner = "xdg"; - repo = pname; - rev = version; - sha256 = "07bxv44p43pqq4ymfnyy50yli7lwdqymhvclna42rkn1cazq3vb5"; + repo = "shared-mime-info"; + rev = "5a406b06792e26a83c7346b3c2443c0bd8d4cdb2"; + sha256 = "1v7dx7mr0m4lcff1aasg9gxn280zn0ffn6fjg9xc44pnllg01n6s"; }; - patches = [ - # xmlto is only used for building the docs, which are not installed anyways. - (fetchpatch { - name = "xmlto-optional.patch"; - url = "https://gitlab.freedesktop.org/xdg/shared-mime-info/-/merge_requests/110.patch"; - sha256 = "0p5gxlcmn8ji5bc7pd105s1halqwa1d28lfx9yj43rn6mav7allx"; - }) - ]; - nativeBuildInputs = [ meson ninja pkg-config gettext - itstool libxml2 ] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) shared-mime-info; From 41d9dfb6195a80624648f96dc9fc3a0c1aeaba09 Mon Sep 17 00:00:00 2001 From: Las Safin Date: Sun, 9 Jan 2022 18:14:38 +0000 Subject: [PATCH 135/170] meson: Remove 0.57, use 0.60 everywhere --- .../misc/metadata-cleaner/default.nix | 4 +- pkgs/development/libraries/gtk/4.x.nix | 4 +- .../libraries/libadwaita/default.nix | 4 +- pkgs/development/libraries/wlroots/0.15.nix | 4 +- ...boost-Do-not-add-system-paths-on-nix.patch | 40 -------- .../build-managers/meson/0.57/default.nix | 94 ------------------- .../meson/0.57/gir-fallback-path.patch | 16 ---- .../meson/0.57/more-env-vars.patch | 13 --- .../0.60/allow-dirs-outside-of-prefix.patch | 19 ---- .../meson/0.60/clear-old-rpath.patch | 20 ---- .../build-managers/meson/0.60/fix-rpath.patch | 24 ----- .../build-managers/meson/0.60/setup-hook.sh | 37 -------- .../allow-dirs-outside-of-prefix.patch | 0 ...boost-Do-not-add-system-paths-on-nix.patch | 0 .../meson/{0.57 => }/clear-old-rpath.patch | 0 .../meson/{0.60 => }/default.nix | 0 .../meson/{0.57 => }/fix-rpath.patch | 0 .../meson/{0.60 => }/gir-fallback-path.patch | 0 .../meson/{0.60 => }/more-env-vars.patch | 0 .../meson/{0.57 => }/setup-hook.sh | 0 pkgs/top-level/all-packages.nix | 4 +- 21 files changed, 9 insertions(+), 274 deletions(-) delete mode 100644 pkgs/development/tools/build-managers/meson/0.57/boost-Do-not-add-system-paths-on-nix.patch delete mode 100644 pkgs/development/tools/build-managers/meson/0.57/default.nix delete mode 100644 pkgs/development/tools/build-managers/meson/0.57/gir-fallback-path.patch delete mode 100644 pkgs/development/tools/build-managers/meson/0.57/more-env-vars.patch delete mode 100644 pkgs/development/tools/build-managers/meson/0.60/allow-dirs-outside-of-prefix.patch delete mode 100644 pkgs/development/tools/build-managers/meson/0.60/clear-old-rpath.patch delete mode 100644 pkgs/development/tools/build-managers/meson/0.60/fix-rpath.patch delete mode 100644 pkgs/development/tools/build-managers/meson/0.60/setup-hook.sh rename pkgs/development/tools/build-managers/meson/{0.57 => }/allow-dirs-outside-of-prefix.patch (100%) rename pkgs/development/tools/build-managers/meson/{0.60 => }/boost-Do-not-add-system-paths-on-nix.patch (100%) rename pkgs/development/tools/build-managers/meson/{0.57 => }/clear-old-rpath.patch (100%) rename pkgs/development/tools/build-managers/meson/{0.60 => }/default.nix (100%) rename pkgs/development/tools/build-managers/meson/{0.57 => }/fix-rpath.patch (100%) rename pkgs/development/tools/build-managers/meson/{0.60 => }/gir-fallback-path.patch (100%) rename pkgs/development/tools/build-managers/meson/{0.60 => }/more-env-vars.patch (100%) rename pkgs/development/tools/build-managers/meson/{0.57 => }/setup-hook.sh (100%) diff --git a/pkgs/applications/misc/metadata-cleaner/default.nix b/pkgs/applications/misc/metadata-cleaner/default.nix index f113eed155fc..01c8ade58c4b 100644 --- a/pkgs/applications/misc/metadata-cleaner/default.nix +++ b/pkgs/applications/misc/metadata-cleaner/default.nix @@ -9,7 +9,7 @@ , itstool , libadwaita , librsvg -, meson_0_60 +, meson , ninja , pkg-config , poppler_gi @@ -35,7 +35,7 @@ python3.pkgs.buildPythonApplication rec { glib gtk4 itstool - meson_0_60 + meson ninja pkg-config wrapGAppsHook diff --git a/pkgs/development/libraries/gtk/4.x.nix b/pkgs/development/libraries/gtk/4.x.nix index d87c9a700e68..2b6dfc8fb52c 100644 --- a/pkgs/development/libraries/gtk/4.x.nix +++ b/pkgs/development/libraries/gtk/4.x.nix @@ -6,7 +6,7 @@ , gettext , graphene , gi-docgen -, meson_0_60 +, meson , ninja , python3 , makeWrapper @@ -81,7 +81,7 @@ stdenv.mkDerivation rec { gettext gobject-introspection makeWrapper - meson_0_60 + meson ninja pkg-config python3 diff --git a/pkgs/development/libraries/libadwaita/default.nix b/pkgs/development/libraries/libadwaita/default.nix index 1d2d152f8b42..5248c7403b30 100644 --- a/pkgs/development/libraries/libadwaita/default.nix +++ b/pkgs/development/libraries/libadwaita/default.nix @@ -5,7 +5,7 @@ , gi-docgen , gtk-doc , libxml2 -, meson_0_60 +, meson , ninja , pkg-config , sassc @@ -39,7 +39,7 @@ stdenv.mkDerivation rec { gi-docgen gtk-doc libxml2 # for xmllint - meson_0_60 + meson ninja pkg-config sassc diff --git a/pkgs/development/libraries/wlroots/0.15.nix b/pkgs/development/libraries/wlroots/0.15.nix index 93ecf0bd3ab3..b9d1246a841d 100644 --- a/pkgs/development/libraries/wlroots/0.15.nix +++ b/pkgs/development/libraries/wlroots/0.15.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitLab, meson_0_60, ninja, pkg-config, wayland-scanner +{ lib, stdenv, fetchFromGitLab, meson, ninja, pkg-config, wayland-scanner , libGL, wayland, wayland-protocols, libinput, libxkbcommon, pixman , xcbutilwm, libX11, libcap, xcbutilimage, xcbutilerrors, mesa , libpng, ffmpeg, xcbutilrenderutil, seatd, vulkan-loader, glslang @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { depsBuildBuild = [ pkg-config ]; - nativeBuildInputs = [ meson_0_60 ninja pkg-config wayland-scanner ]; + nativeBuildInputs = [ meson ninja pkg-config wayland-scanner ]; buildInputs = [ libGL wayland wayland-protocols libinput libxkbcommon pixman diff --git a/pkgs/development/tools/build-managers/meson/0.57/boost-Do-not-add-system-paths-on-nix.patch b/pkgs/development/tools/build-managers/meson/0.57/boost-Do-not-add-system-paths-on-nix.patch deleted file mode 100644 index 5b9020b3d540..000000000000 --- a/pkgs/development/tools/build-managers/meson/0.57/boost-Do-not-add-system-paths-on-nix.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 536108b10271f2f42d41c7d9ddb4ce2ea1851f4f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= -Date: Sat, 17 Oct 2020 19:27:08 +0200 -Subject: [PATCH] boost: Do not add system paths on nix - ---- - mesonbuild/dependencies/boost.py | 17 +---------------- - 1 file changed, 1 insertion(+), 16 deletions(-) - -diff --git a/mesonbuild/dependencies/boost.py b/mesonbuild/dependencies/boost.py -index 907c0c275..ecaf11b18 100644 ---- a/mesonbuild/dependencies/boost.py -+++ b/mesonbuild/dependencies/boost.py -@@ -643,22 +643,7 @@ class BoostDependency(ExternalDependency): - roots += [x for x in candidates if x.name.lower().startswith('boost') and x.is_dir()] - else: - tmp = [] # type: T.List[Path] -- -- # Homebrew -- brew_boost = Path('/usr/local/Cellar/boost') -- if brew_boost.is_dir(): -- tmp += [x for x in brew_boost.iterdir()] -- -- # Add some default system paths -- tmp += [Path('/opt/local')] -- tmp += [Path('/usr/local/opt/boost')] -- tmp += [Path('/usr/local')] -- tmp += [Path('/usr')] -- -- # Cleanup paths -- tmp = [x for x in tmp if x.is_dir()] -- tmp = [x.resolve() for x in tmp] -- roots += tmp -+ # Do not add any non-explicit paths on nix - - return roots - --- -2.25.4 - diff --git a/pkgs/development/tools/build-managers/meson/0.57/default.nix b/pkgs/development/tools/build-managers/meson/0.57/default.nix deleted file mode 100644 index 6fd93e8f86b1..000000000000 --- a/pkgs/development/tools/build-managers/meson/0.57/default.nix +++ /dev/null @@ -1,94 +0,0 @@ -{ lib -, python3 -, writeTextDir -, substituteAll -, fetchpatch -, installShellFiles -}: - -python3.pkgs.buildPythonApplication rec { - pname = "meson"; - version = "0.57.1"; - - src = python3.pkgs.fetchPypi { - inherit pname version; - sha256 = "19n8alcpzv6npgp27iqljkmvdmr7s2c7zm8y997j1nlvpa1cgqbj"; - }; - - patches = [ - # Upstream insists on not allowing bindir and other dir options - # outside of prefix for some reason: - # https://github.com/mesonbuild/meson/issues/2561 - # We remove the check so multiple outputs can work sanely. - ./allow-dirs-outside-of-prefix.patch - - # Meson is currently inspecting fewer variables than autoconf does, which - # makes it harder for us to use setup hooks, etc. Taken from - # https://github.com/mesonbuild/meson/pull/6827 - ./more-env-vars.patch - - # Unlike libtool, vanilla Meson does not pass any information - # about the path library will be installed to to g-ir-scanner, - # breaking the GIR when path other than ${!outputLib}/lib is used. - # We patch Meson to add a --fallback-library-path argument with - # library install_dir to g-ir-scanner. - ./gir-fallback-path.patch - - # In common distributions, RPATH is only needed for internal libraries so - # meson removes everything else. With Nix, the locations of libraries - # are not as predictable, therefore we need to keep them in the RPATH. - # At the moment we are keeping the paths starting with /nix/store. - # https://github.com/NixOS/nixpkgs/issues/31222#issuecomment-365811634 - (substituteAll { - src = ./fix-rpath.patch; - inherit (builtins) storeDir; - }) - - # When Meson removes build_rpath from DT_RUNPATH entry, it just writes - # the shorter NUL-terminated new rpath over the old one to reduce - # the risk of potentially breaking the ELF files. - # But this can cause much bigger problem for Nix as it can produce - # cut-in-half-by-\0 store path references. - # Let’s just clear the whole rpath and hope for the best. - ./clear-old-rpath.patch - - # Patch out default boost search paths to avoid impure builds on - # unsandboxed non-NixOS builds, see: - # https://github.com/NixOS/nixpkgs/issues/86131#issuecomment-711051774 - ./boost-Do-not-add-system-paths-on-nix.patch - ]; - - setupHook = ./setup-hook.sh; - - # 0.45 update enabled tests but they are failing - doCheck = false; - # checkInputs = [ ninja pkg-config ]; - # checkPhase = "python ./run_project_tests.py"; - - postFixup = '' - pushd $out/bin - # undo shell wrapper as meson tools are called with python - for i in *; do - mv ".$i-wrapped" "$i" - done - popd - - # Do not propagate Python - rm $out/nix-support/propagated-build-inputs - ''; - - nativeBuildInputs = [ installShellFiles ]; - - postInstall = '' - installShellCompletion --zsh data/shell-completions/zsh/_meson - installShellCompletion --bash data/shell-completions/bash/meson - ''; - - meta = with lib; { - homepage = "https://mesonbuild.com"; - description = "SCons-like build system that use python as a front-end language and Ninja as a building backend"; - license = licenses.asl20; - maintainers = with maintainers; [ jtojnar mbe ]; - platforms = platforms.all; - }; -} diff --git a/pkgs/development/tools/build-managers/meson/0.57/gir-fallback-path.patch b/pkgs/development/tools/build-managers/meson/0.57/gir-fallback-path.patch deleted file mode 100644 index 0c924bacf73f..000000000000 --- a/pkgs/development/tools/build-managers/meson/0.57/gir-fallback-path.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- a/mesonbuild/modules/gnome.py -+++ b/mesonbuild/modules/gnome.py -@@ -807,6 +807,13 @@ class GnomeModule(ExtensionModule): - if fatal_warnings: - scan_command.append('--warn-error') - -+ if len(set([girtarget.get_custom_install_dir()[0] for girtarget in girtargets])) > 1: -+ raise MesonException('generate_gir tries to build multiple libraries with different install_dir at once: {}'.format(','.join([str(girtarget) for girtarget in girtargets]))) -+ -+ fallback_libpath = girtargets[0].get_custom_install_dir()[0] -+ if fallback_libpath is not None and isinstance(fallback_libpath, str) and len(fallback_libpath) > 0 and fallback_libpath[0] == "/": -+ scan_command += ['--fallback-library-path=' + fallback_libpath] -+ - scan_target = self._make_gir_target(state, girfile, scan_command, depends, kwargs) - - typelib_output = '%s-%s.typelib' % (ns, nsversion) diff --git a/pkgs/development/tools/build-managers/meson/0.57/more-env-vars.patch b/pkgs/development/tools/build-managers/meson/0.57/more-env-vars.patch deleted file mode 100644 index 4b2606e2d694..000000000000 --- a/pkgs/development/tools/build-managers/meson/0.57/more-env-vars.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py -index 756dd8193..a5cc6ef8b 100644 ---- a/mesonbuild/environment.py -+++ b/mesonbuild/environment.py -@@ -151,7 +151,7 @@ def _get_env_var(for_machine: MachineChoice, is_cross: bool, var_name: str) -> T - # compiling we fall back on the unprefixed host version. This - # allows native builds to never need to worry about the 'BUILD_*' - # ones. -- ([var_name + '_FOR_BUILD'] if is_cross else [var_name]), -+ [var_name + '_FOR_BUILD'] + ([] if is_cross else [var_name]), - # Always just the unprefixed host verions - [var_name] - )[for_machine] diff --git a/pkgs/development/tools/build-managers/meson/0.60/allow-dirs-outside-of-prefix.patch b/pkgs/development/tools/build-managers/meson/0.60/allow-dirs-outside-of-prefix.patch deleted file mode 100644 index 4eb292a2e529..000000000000 --- a/pkgs/development/tools/build-managers/meson/0.60/allow-dirs-outside-of-prefix.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- a/mesonbuild/coredata.py -+++ b/mesonbuild/coredata.py -@@ -506,7 +506,6 @@ class CoreData: - return value - if option.name.endswith('dir') and value.is_absolute() and \ - option not in BULITIN_DIR_NOPREFIX_OPTIONS: -- # Value must be a subdir of the prefix - # commonpath will always return a path in the native format, so we - # must use pathlib.PurePath to do the same conversion before - # comparing. -@@ -518,7 +517,7 @@ class CoreData: - try: - value = value.relative_to(prefix) - except ValueError: -- raise MesonException(msg.format(option, value, prefix)) -+ pass - if '..' in str(value): - raise MesonException(msg.format(option, value, prefix)) - return value.as_posix() diff --git a/pkgs/development/tools/build-managers/meson/0.60/clear-old-rpath.patch b/pkgs/development/tools/build-managers/meson/0.60/clear-old-rpath.patch deleted file mode 100644 index f1e3c76e8b53..000000000000 --- a/pkgs/development/tools/build-managers/meson/0.60/clear-old-rpath.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff --git a/mesonbuild/scripts/depfixer.py b/mesonbuild/scripts/depfixer.py -index 4176b9a03..faaabf616 100644 ---- a/mesonbuild/scripts/depfixer.py -+++ b/mesonbuild/scripts/depfixer.py -@@ -336,6 +336,15 @@ class Elf(DataSizes): - if not new_rpath: - self.remove_rpath_entry(entrynum) - else: -+ # Clear old rpath to avoid stale references, -+ # not heeding the warning above about de-duplication -+ # since it does not seem to cause issues for us -+ # and not doing so trips up Nix’s reference checker. -+ # See https://github.com/NixOS/nixpkgs/pull/46020 -+ # and https://github.com/NixOS/nixpkgs/issues/95163 -+ self.bf.seek(rp_off) -+ self.bf.write(b'\0'*len(old_rpath)) -+ - self.bf.seek(rp_off) - self.bf.write(new_rpath) - self.bf.write(b'\0') diff --git a/pkgs/development/tools/build-managers/meson/0.60/fix-rpath.patch b/pkgs/development/tools/build-managers/meson/0.60/fix-rpath.patch deleted file mode 100644 index d34b6c4c4345..000000000000 --- a/pkgs/development/tools/build-managers/meson/0.60/fix-rpath.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- a/mesonbuild/backend/backends.py -+++ b/mesonbuild/backend/backends.py -@@ -456,6 +456,21 @@ class Backend: - args.extend(self.environment.coredata.get_external_link_args(target.for_machine, lang)) - except Exception: - pass -+ -+ nix_ldflags = os.environ.get('NIX_LDFLAGS', '').split() -+ next_is_path = False -+ # Try to add rpaths set by user or ld-wrapper so that they are not removed. -+ # Based on https://github.com/NixOS/nixpkgs/blob/69711a2f5ffe8cda208163be5258266172ff527f/pkgs/build-support/bintools-wrapper/ld-wrapper.sh#L148-L177 -+ for flag in nix_ldflags: -+ if flag == '-rpath' or flag == '-L': -+ next_is_path = True -+ elif next_is_path or flag.startswith('-L/'): -+ if flag.startswith('-L/'): -+ flag = flag[2:] -+ if flag.startswith('@storeDir@'): -+ dirs.add(flag) -+ next_is_path = False -+ - # Match rpath formats: - # -Wl,-rpath= - # -Wl,-rpath, diff --git a/pkgs/development/tools/build-managers/meson/0.60/setup-hook.sh b/pkgs/development/tools/build-managers/meson/0.60/setup-hook.sh deleted file mode 100644 index 3d946fcffd52..000000000000 --- a/pkgs/development/tools/build-managers/meson/0.60/setup-hook.sh +++ /dev/null @@ -1,37 +0,0 @@ -mesonConfigurePhase() { - runHook preConfigure - - if [ -z "${dontAddPrefix-}" ]; then - mesonFlags="--prefix=$prefix $mesonFlags" - fi - - # See multiple-outputs.sh and meson’s coredata.py - mesonFlags="\ - --libdir=${!outputLib}/lib --libexecdir=${!outputLib}/libexec \ - --bindir=${!outputBin}/bin --sbindir=${!outputBin}/sbin \ - --includedir=${!outputInclude}/include \ - --mandir=${!outputMan}/share/man --infodir=${!outputInfo}/share/info \ - --localedir=${!outputLib}/share/locale \ - -Dauto_features=${mesonAutoFeatures:-enabled} \ - -Dwrap_mode=${mesonWrapMode:-nodownload} \ - $mesonFlags" - - mesonFlags="${crossMesonFlags+$crossMesonFlags }--buildtype=${mesonBuildType:-plain} $mesonFlags" - - echo "meson flags: $mesonFlags ${mesonFlagsArray[@]}" - - meson build $mesonFlags "${mesonFlagsArray[@]}" - cd build - - if ! [[ -v enableParallelBuilding ]]; then - enableParallelBuilding=1 - echo "meson: enabled parallel building" - fi - - runHook postConfigure -} - -if [ -z "${dontUseMesonConfigure-}" -a -z "${configurePhase-}" ]; then - setOutputFlags= - configurePhase=mesonConfigurePhase -fi diff --git a/pkgs/development/tools/build-managers/meson/0.57/allow-dirs-outside-of-prefix.patch b/pkgs/development/tools/build-managers/meson/allow-dirs-outside-of-prefix.patch similarity index 100% rename from pkgs/development/tools/build-managers/meson/0.57/allow-dirs-outside-of-prefix.patch rename to pkgs/development/tools/build-managers/meson/allow-dirs-outside-of-prefix.patch diff --git a/pkgs/development/tools/build-managers/meson/0.60/boost-Do-not-add-system-paths-on-nix.patch b/pkgs/development/tools/build-managers/meson/boost-Do-not-add-system-paths-on-nix.patch similarity index 100% rename from pkgs/development/tools/build-managers/meson/0.60/boost-Do-not-add-system-paths-on-nix.patch rename to pkgs/development/tools/build-managers/meson/boost-Do-not-add-system-paths-on-nix.patch diff --git a/pkgs/development/tools/build-managers/meson/0.57/clear-old-rpath.patch b/pkgs/development/tools/build-managers/meson/clear-old-rpath.patch similarity index 100% rename from pkgs/development/tools/build-managers/meson/0.57/clear-old-rpath.patch rename to pkgs/development/tools/build-managers/meson/clear-old-rpath.patch diff --git a/pkgs/development/tools/build-managers/meson/0.60/default.nix b/pkgs/development/tools/build-managers/meson/default.nix similarity index 100% rename from pkgs/development/tools/build-managers/meson/0.60/default.nix rename to pkgs/development/tools/build-managers/meson/default.nix diff --git a/pkgs/development/tools/build-managers/meson/0.57/fix-rpath.patch b/pkgs/development/tools/build-managers/meson/fix-rpath.patch similarity index 100% rename from pkgs/development/tools/build-managers/meson/0.57/fix-rpath.patch rename to pkgs/development/tools/build-managers/meson/fix-rpath.patch diff --git a/pkgs/development/tools/build-managers/meson/0.60/gir-fallback-path.patch b/pkgs/development/tools/build-managers/meson/gir-fallback-path.patch similarity index 100% rename from pkgs/development/tools/build-managers/meson/0.60/gir-fallback-path.patch rename to pkgs/development/tools/build-managers/meson/gir-fallback-path.patch diff --git a/pkgs/development/tools/build-managers/meson/0.60/more-env-vars.patch b/pkgs/development/tools/build-managers/meson/more-env-vars.patch similarity index 100% rename from pkgs/development/tools/build-managers/meson/0.60/more-env-vars.patch rename to pkgs/development/tools/build-managers/meson/more-env-vars.patch diff --git a/pkgs/development/tools/build-managers/meson/0.57/setup-hook.sh b/pkgs/development/tools/build-managers/meson/setup-hook.sh similarity index 100% rename from pkgs/development/tools/build-managers/meson/0.57/setup-hook.sh rename to pkgs/development/tools/build-managers/meson/setup-hook.sh diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f8bcdfaab669..5e5e2784c091 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3386,9 +3386,7 @@ with pkgs; merriweather-sans = callPackage ../data/fonts/merriweather-sans { }; - # TODO: call a sprintable to deprecate Meson 0.57 as soon as possible - meson = callPackage ../development/tools/build-managers/meson/0.57 { }; - meson_0_60 = callPackage ../development/tools/build-managers/meson/0.60 { }; + meson = callPackage ../development/tools/build-managers/meson { }; meson-tools = callPackage ../misc/meson-tools { }; From 1ea759f94cf9b9d7c2e7af199c0f32c7cd8354c5 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 10 Jan 2022 21:11:21 +0000 Subject: [PATCH 136/170] gnumake: add debug info --- pkgs/development/tools/build-managers/gnumake/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/tools/build-managers/gnumake/default.nix b/pkgs/development/tools/build-managers/gnumake/default.nix index 3b9f0add8796..183548f5e31b 100644 --- a/pkgs/development/tools/build-managers/gnumake/default.nix +++ b/pkgs/development/tools/build-managers/gnumake/default.nix @@ -34,6 +34,7 @@ stdenv.mkDerivation rec { ++ lib.optional stdenv.isDarwin "ac_cv_struct_st_mtim_nsec=no"; outputs = [ "out" "man" "info" ]; + separateDebugInfo = true; meta = with lib; { homepage = "https://www.gnu.org/software/make/"; From c797aa41f4453e619f6624c06407d30b1c7c7454 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Wed, 12 Jan 2022 01:34:48 -0500 Subject: [PATCH 137/170] libuv: 1.42.0 -> 1.43.0 (#154195) https://github.com/libuv/libuv/raw/v1.43.0/ChangeLog --- 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 a3de139fb440..1d9354d48e1a 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, pkg-config, ApplicationServices, CoreServices }: stdenv.mkDerivation rec { - version = "1.42.0"; + version = "1.43.0"; pname = "libuv"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "0f6mfbg750q26fa85nhmw2m0gyp8jcp1kyx9zn6lgi8bha5b7kny"; + sha256 = "sha256-AsXJb2AGNx+SARPmY8uRFRLfX5vqTPNjwL8njSw/e7o="; }; postPatch = let From 37ed2951d2729a0409e219fe0f54e081b2d882c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Wed, 12 Jan 2022 06:35:23 +0000 Subject: [PATCH 138/170] libredirect: improve musl support (#154039) __nss_files_open is glibc only. Also mark some linux specific system calls as such for better portability with other unixes. --- pkgs/build-support/libredirect/libredirect.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/build-support/libredirect/libredirect.c b/pkgs/build-support/libredirect/libredirect.c index 9dde78c74922..0dc7feb382c3 100644 --- a/pkgs/build-support/libredirect/libredirect.c +++ b/pkgs/build-support/libredirect/libredirect.c @@ -153,7 +153,7 @@ WRAPPER(FILE *, fopen)(const char * path, const char * mode) } WRAPPER_DEF(fopen) -#ifndef __APPLE__ +#ifdef __GLIBC__ WRAPPER(FILE *, __nss_files_fopen)(const char * path) { FILE * (*__nss_files_fopen_real) (const char *) = LOOKUP_REAL(__nss_files_fopen); @@ -174,7 +174,7 @@ WRAPPER(FILE *, fopen64)(const char * path, const char * mode) WRAPPER_DEF(fopen64) #endif -#ifndef __APPLE__ +#ifdef __linux__ WRAPPER(int, __xstat)(int ver, const char * path, struct stat * st) { int (*__xstat_real) (int ver, const char *, struct stat *) = LOOKUP_REAL(__xstat); @@ -184,7 +184,7 @@ WRAPPER(int, __xstat)(int ver, const char * path, struct stat * st) WRAPPER_DEF(__xstat) #endif -#ifndef __APPLE__ +#ifdef __linux__ WRAPPER(int, __xstat64)(int ver, const char * path, struct stat64 * st) { int (*__xstat64_real) (int ver, const char *, struct stat64 *) = LOOKUP_REAL(__xstat64); From c1a712267026f3a2c7d1b0bd48db4842b0595409 Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Thu, 13 Jan 2022 20:24:33 +0100 Subject: [PATCH 139/170] mesa: 21.3.3 -> 21.3.4 --- pkgs/development/libraries/mesa/default.nix | 12 +++-- pkgs/development/libraries/mesa/musl.patch | 59 +++++++++++++++++++++ 2 files changed, 66 insertions(+), 5 deletions(-) create mode 100644 pkgs/development/libraries/mesa/musl.patch diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index cb1d99aff2ca..69f43d31da71 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -33,7 +33,7 @@ with lib; let # Release calendar: https://www.mesa3d.org/release-calendar.html # Release frequency: https://www.mesa3d.org/releasing.html#schedule - version = "21.3.3"; + version = "21.3.4"; branch = versions.major version; self = stdenv.mkDerivation { @@ -47,18 +47,20 @@ self = 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 = "08c118j440xpfbjjxmwzm6dfnv4y35q540mmzkchhpbwx89lczxd"; + sha256 = "0zd6skf9qcwlk1k1ljgwijwlyz5si3pgi0h97gd6kkivm7a4y43p"; }; # TODO: # revive ./dricore-gallium.patch when it gets ported (from Ubuntu), as it saved # ~35 MB in $drivers; watch https://launchpad.net/ubuntu/+source/mesa/+changelog patches = [ - # fixes pkgsMusl.mesa build + # To fix flickering on Intel GPUs (iris), see https://github.com/NixOS/nixpkgs/issues/153377: (fetchpatch { - url = "https://raw.githubusercontent.com/void-linux/void-packages/b9f58f303ae23754c95d5d1fe87a98b5a2d8f271/srcpkgs/mesa/patches/musl.patch"; - sha256 = "sha256-Jyl7ILLhn8hBJG7afnEjE8H56Wz/1bxkvlqfrXK5U7I="; + url = "https://gitlab.freedesktop.org/mesa/mesa/-/commit/07dc3d4238e57901ccf98e0b506d9aad2c86b9d9.diff"; + sha256 = "sha256-3fa1qHJes3x1/iXsxfjgy9HnEGlOyFtJatSkU1a3XDI="; }) + # fixes pkgsMusl.mesa build + ./musl.patch (fetchpatch { url = "https://raw.githubusercontent.com/void-linux/void-packages/b9f58f303ae23754c95d5d1fe87a98b5a2d8f271/srcpkgs/mesa/patches/musl-endian.patch"; sha256 = "sha256-eRc91qCaFlVzrxFrNUPpAHd1gsqKsLCCN0IW8pBQcqk="; diff --git a/pkgs/development/libraries/mesa/musl.patch b/pkgs/development/libraries/mesa/musl.patch new file mode 100644 index 000000000000..687a159c1788 --- /dev/null +++ b/pkgs/development/libraries/mesa/musl.patch @@ -0,0 +1,59 @@ +diff --git a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h +index 06ca90564f0..bb244f8f358 100644 +--- a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h ++++ b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h +@@ -30,6 +30,7 @@ + + #include + #include ++#include + #include "util/list.h" + #include "util/rwlock.h" + #include "ac_gpu_info.h" +diff --git a/src/gallium/drivers/freedreno/freedreno_util.h b/src/gallium/drivers/freedreno/freedreno_util.h +index 22f99c41909..2f3195926be 100644 +--- a/src/gallium/drivers/freedreno/freedreno_util.h ++++ b/src/gallium/drivers/freedreno/freedreno_util.h +@@ -108,6 +108,8 @@ extern bool fd_binning_enabled; + #include + #include + ++#define gettid() ((pid_t)syscall(SYS_gettid)) ++ + #define DBG(fmt, ...) \ + do { \ + if (FD_DBG(MSGS)) \ +diff --git a/src/gallium/frontends/nine/nine_debug.c b/src/gallium/frontends/nine/nine_debug.c +index f3a6a945025..f4a6c41a612 100644 +--- a/src/gallium/frontends/nine/nine_debug.c ++++ b/src/gallium/frontends/nine/nine_debug.c +@@ -65,7 +65,7 @@ _nine_debug_printf( unsigned long flag, + { + static boolean first = TRUE; + static unsigned long dbg_flags = DBG_ERROR | DBG_WARN; +- unsigned long tid = 0; ++ pthread_t tid = 0; + + if (first) { + first = FALSE; +@@ -74,7 +74,7 @@ _nine_debug_printf( unsigned long flag, + + #if defined(HAVE_PTHREAD) + if (dbg_flags & DBG_TID) +- tid = (unsigned long)pthread_self(); ++ tid = pthread_self(); + #endif + + if (dbg_flags & flag) { +diff --git a/src/util/rand_xor.c b/src/util/rand_xor.c +index 81b64f1ea71..56ebd2eccdf 100644 +--- a/src/util/rand_xor.c ++++ b/src/util/rand_xor.c +@@ -28,6 +28,7 @@ + #if defined(HAVE_GETRANDOM) + #include + #endif ++#include /* size_t, ssize_t */ + #include + #include + #endif From 7673650020d6b35cc1ad8bd76c2caac590133134 Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Thu, 13 Jan 2022 05:00:27 -0500 Subject: [PATCH 140/170] stdenv/darwin: fix for curl with zstd and idn2 The `curlMinimal` is to be used throughout the early bootstrap stages. The final stage will allow the new references of the `curl`. Fixes: 29526bc2 ('curl: IDN support requires libidn2 package') --- pkgs/stdenv/darwin/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix index 24ad0cb6959f..a6f927c287da 100644 --- a/pkgs/stdenv/darwin/default.nix +++ b/pkgs/stdenv/darwin/default.nix @@ -399,6 +399,8 @@ rec { persistent = self: super: with prevStage; { cmake = super.cmakeMinimal; + curl = super.curlMinimal; + inherit pbzx cpio; python3 = super.python3Minimal; @@ -755,6 +757,9 @@ rec { darwin.binutils darwin.binutils.bintools curl.out + zstd.out + libidn2.out + libunistring.out openssl.out libssh2.out nghttp2.lib From 3c984f9fe1257b88a5492de780c419deeb28c0a1 Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Sat, 15 Jan 2022 11:57:24 +0800 Subject: [PATCH 141/170] meson: do not update ldconfig cache --- .../tools/build-managers/meson/default.nix | 4 ++++ .../meson/do-not-update-ldconfig-cache.patch | 12 ++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 pkgs/development/tools/build-managers/meson/do-not-update-ldconfig-cache.patch diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix index a5efccfac9ca..aeddf457f48d 100644 --- a/pkgs/development/tools/build-managers/meson/default.nix +++ b/pkgs/development/tools/build-managers/meson/default.nix @@ -57,6 +57,10 @@ python3.pkgs.buildPythonApplication rec { # unsandboxed non-NixOS builds, see: # https://github.com/NixOS/nixpkgs/issues/86131#issuecomment-711051774 ./boost-Do-not-add-system-paths-on-nix.patch + + # Meson tries to update ld.so.cache which breaks when the target architecture + # differs from the build host's. + ./do-not-update-ldconfig-cache.patch ]; setupHook = ./setup-hook.sh; diff --git a/pkgs/development/tools/build-managers/meson/do-not-update-ldconfig-cache.patch b/pkgs/development/tools/build-managers/meson/do-not-update-ldconfig-cache.patch new file mode 100644 index 000000000000..884023aaa7eb --- /dev/null +++ b/pkgs/development/tools/build-managers/meson/do-not-update-ldconfig-cache.patch @@ -0,0 +1,12 @@ +diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py +index cb87faf5c..878ec4cd6 100644 +--- a/mesonbuild/minstall.py ++++ b/mesonbuild/minstall.py +@@ -551,7 +551,6 @@ class Installer: + self.install_emptydir(d, dm, destdir, fullprefix) + self.install_data(d, dm, destdir, fullprefix) + self.restore_selinux_contexts(destdir) +- self.apply_ldconfig(dm, destdir) + self.run_install_script(d, destdir, fullprefix) + if not self.did_install_something: + self.log('Nothing to install.') From 99050a2c3143a14805fea973b05c628efed54c23 Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Thu, 13 Jan 2022 17:56:41 +0100 Subject: [PATCH 142/170] ocamlPackages.ca-certs: disable test suite expecting nss db nss-cacert has updated a few certificates, including Google's which breaks the test suite of ca-certs expecting the old version. --- pkgs/development/ocaml-modules/ca-certs/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/ocaml-modules/ca-certs/default.nix b/pkgs/development/ocaml-modules/ca-certs/default.nix index acf869dbd275..ce8993b465eb 100644 --- a/pkgs/development/ocaml-modules/ca-certs/default.nix +++ b/pkgs/development/ocaml-modules/ca-certs/default.nix @@ -18,7 +18,8 @@ buildDunePackage rec { propagatedBuildInputs = [ bos fpath rresult ptime mirage-crypto x509 astring logs ]; - doCheck = true; + # Assumes nss-cacert < 3.74 https://github.com/mirage/ca-certs/issues/21 + doCheck = false; checkInputs = [ cacert # for /etc/ssl/certs/ca-bundle.crt alcotest From c8aa2e9d7aa3b28f4b59dcc328ec2c64abf6f089 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 18 Jan 2022 13:33:03 +0100 Subject: [PATCH 143/170] gtk3: fix patch hash The usual nix-prefetch-url confusion with fetchpatch: https://github.com/NixOS/nixpkgs/pull/153412#issuecomment-1015350908 --- pkgs/development/libraries/gtk/3.x.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/gtk/3.x.nix b/pkgs/development/libraries/gtk/3.x.nix index 9a2655a379f0..bb1451594475 100644 --- a/pkgs/development/libraries/gtk/3.x.nix +++ b/pkgs/development/libraries/gtk/3.x.nix @@ -88,7 +88,7 @@ stdenv.mkDerivation rec { # 3.24.31 does not declare QuartzCore dependency properly and fails to link (fetchpatch { url = "https://gitlab.gnome.org/GNOME/gtk/-/commit/0ac61443694b477c41fc246cb387ef86aba441de.patch"; - sha256 = "sha256-aiT/NeAxIl6ZS9KwMssQPzD7NtW7qqeySc/CyWakQfk="; + sha256 = "sha256-KaMeIdV/gfM4xzN9lIkY99E7bzAfTM6VETk5DEunB2w="; }) ]; From 03a4213c4f31401938b0079a00491023a92336ca Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Thu, 20 Jan 2022 11:16:49 -0800 Subject: [PATCH 144/170] azure-cli: fix adal tests --- pkgs/tools/admin/azure-cli/python-packages.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/tools/admin/azure-cli/python-packages.nix b/pkgs/tools/admin/azure-cli/python-packages.nix index a917112cc5f0..0339caa72ce8 100644 --- a/pkgs/tools/admin/azure-cli/python-packages.nix +++ b/pkgs/tools/admin/azure-cli/python-packages.nix @@ -466,6 +466,8 @@ let inherit version; sha256 = "sha256-109FuBMXRU2W6YL9HFDm+1yZrCIjcorqh2RDOjn1ZvE="; }; + # sdist lacks tests + doCheck = false; }); semver = super.semver.overridePythonAttrs(oldAttrs: rec { From 14dfd74d8e4901918c57fbdfc4ee60c7bb7f469a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 22 Jan 2022 08:06:05 +0100 Subject: [PATCH 145/170] gnome.gnome-settings-daemon338: fix build with new meson Our default gnome-settings-daemon release already contains this. --- .../gnome/core/gnome-settings-daemon/3.38/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix b/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix index de48b72faca4..aae01577a881 100644 --- a/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix +++ b/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix @@ -68,6 +68,12 @@ stdenv.mkDerivation rec { url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/commit/82d88014dfca2df7e081712870e1fb017c16b808.patch"; sha256 = "H5k/v+M2bRaswt5nrDJFNn4gS4BdB0UfzdjUCT4yLKg="; }) + + # Fix build with new meson + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/28e28e9e598342c897ae5ca350d0da6f4aea057b.diff"; + sha256 = "U+suR7wYjLWPqmkJpHm6pPOWL7sjL6GhIFX8MHrBRAY="; + }) ]; nativeBuildInputs = [ From 5411ee6465351f02e5a8cad63f24ca1f45c3e84e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 22 Jan 2022 08:13:32 +0100 Subject: [PATCH 146/170] libmodulemd: fix build with newer meson This option has been dropped by upstream libmodulemd https://github.com/fedora-modularity/libmodulemd/commit/1096cda67bbb and now meson apparently got stricter. --- pkgs/development/libraries/libmodulemd/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/development/libraries/libmodulemd/default.nix b/pkgs/development/libraries/libmodulemd/default.nix index 79f590af5ffd..8f59975a5967 100644 --- a/pkgs/development/libraries/libmodulemd/default.nix +++ b/pkgs/development/libraries/libmodulemd/default.nix @@ -56,7 +56,6 @@ stdenv.mkDerivation rec { ]; mesonFlags = [ - "-Ddeveloper_build=false" "-Dgobject_overrides_dir_py3=${placeholder "py"}/${python3.sitePackages}/gi/overrides" ]; From 11110136f5061f2112858557938c62ce3fc79fa5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 22 Jan 2022 08:25:16 +0100 Subject: [PATCH 147/170] orc: disable a benchmark test on x86_64-darwin It now fails repeatedly on Hydra: https://hydra.nixos.org/build/164595567 and I don't think it's worth debugging why. Other platform had issues: https://gitlab.freedesktop.org/gstreamer/orc/-/commit/5c1f5216b4867 --- pkgs/development/compilers/orc/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/compilers/orc/default.nix b/pkgs/development/compilers/orc/default.nix index 2d56d461627a..fa4bf686a2ac 100644 --- a/pkgs/development/compilers/orc/default.nix +++ b/pkgs/development/compilers/orc/default.nix @@ -15,6 +15,9 @@ in stdenv.mkDerivation rec { postPatch = lib.optionalString stdenv.isAarch32 '' # https://gitlab.freedesktop.org/gstreamer/orc/-/issues/20 sed -i '/exec_opcodes_sys/d' testsuite/meson.build + '' + lib.optionalString (stdenv.isDarwin && stdenv.isx86_64) '' + # This benchmark times out on Hydra.nixos.org + sed -i '/memcpy_speed/d' testsuite/meson.build ''; outputs = [ "out" "dev" ] From bbaa13e9abf391e463749859d0d4a92713c69d94 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Mon, 17 Jan 2022 14:28:56 +0100 Subject: [PATCH 148/170] python3Packages.poetry: propagate packaging and relax constraint --- pkgs/development/python-modules/poetry/default.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/poetry/default.nix b/pkgs/development/python-modules/poetry/default.nix index 2375800e3a75..5efbe56ac5bd 100644 --- a/pkgs/development/python-modules/poetry/default.nix +++ b/pkgs/development/python-modules/poetry/default.nix @@ -15,6 +15,7 @@ , intreehooks , keyring , lockfile +, packaging , pexpect , pkginfo , poetry-core @@ -45,9 +46,10 @@ buildPythonPackage rec { postPatch = '' substituteInPlace pyproject.toml \ - --replace 'importlib-metadata = {version = "^1.6.0", python = "<3.8"}' \ + --replace 'importlib-metadata = {version = "^1.6.0", python = "<3.8"}' \ 'importlib-metadata = {version = ">=1.6", python = "<3.8"}' \ - --replace 'version = "^21.2.0"' 'version = ">=21.2"' + --replace 'version = "^21.2.0"' 'version = ">=21.2"' \ + --replace 'packaging = "^20.4"' 'packaging = "*"' ''; nativeBuildInputs = [ @@ -64,6 +66,7 @@ buildPythonPackage rec { html5lib keyring lockfile + packaging pexpect pkginfo poetry-core From c09da2061b000fb33a706697e05d204e2d3a8723 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sun, 16 Jan 2022 22:04:42 +0100 Subject: [PATCH 149/170] home-assistant: update constraint relaxing mechanism And update constraints. --- pkgs/servers/home-assistant/default.nix | 31 ++++++++++++++++--------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 0cb5e13fbd27..e26c38bc87f3 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -206,17 +206,26 @@ in python.pkgs.buildPythonApplication rec { ./patches/tests-ignore-OSErrors-in-hass-fixture.patch ]; - postPatch = '' - substituteInPlace setup.py \ - --replace "aiohttp==3.8.1" "aiohttp" \ - --replace "async_timeout==4.0.0" "async_timeout" \ - --replace "bcrypt==3.1.7" "bcrypt" \ - --replace "cryptography==35.0.0" "cryptography" \ - --replace "httpx==0.21.0" "httpx" \ - --replace "pip>=8.0.3,<20.3" "pip" \ - --replace "PyJWT==2.1.0" "PyJWT" \ - --replace "pyyaml==6.0" "pyyaml" \ - --replace "yarl==1.6.3" "yarl" + postPatch = let + relaxedConstraints = [ + "aiohttp" + "async_timeout" + "attrs" + "awesomeversion" + "bcrypt" + "cryptography" + "httpx" + "pip" + "PyJWT" + "requests" + "yarl" + ]; + in '' + sed -r -i \ + ${lib.concatStringsSep "\n" (map (package: + ''-e 's@${package}[<>=]+.*@${package}",@g' \'' + ) relaxedConstraints)} + setup.py substituteInPlace tests/test_config.py --replace '"/usr"' '"/build/media"' ''; From edf5e394d3f5d50c0a7b7bcf495ce8aa80d97e47 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sat, 22 Jan 2022 20:43:45 +0800 Subject: [PATCH 150/170] fwupd: fix aarch64 build The following changes are introduced in 1.5.6 and the plugin_synaptics option no longer exist: https://github.com/fwupd/fwupd/commit/a75ef53eaf9ba03b617c02f08529dad03dd0e1f2 With meson 0.60 the build will fail. --- pkgs/os-specific/linux/firmware/fwupd/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/firmware/fwupd/default.nix b/pkgs/os-specific/linux/firmware/fwupd/default.nix index 71f6da0d13b1..077c37a72cb3 100644 --- a/pkgs/os-specific/linux/firmware/fwupd/default.nix +++ b/pkgs/os-specific/linux/firmware/fwupd/default.nix @@ -214,7 +214,7 @@ let "-Dc_link_args=-Wl,-rpath,${placeholder "out"}/lib" ] ++ lib.optionals (!haveDell) [ "-Dplugin_dell=false" - "-Dplugin_synaptics=false" + "-Dplugin_synaptics_mst=false" ] ++ lib.optionals (!haveRedfish) [ "-Dplugin_redfish=false" ] ++ lib.optionals haveFlashrom [ From e2686f5ab3881a366e6894293d1ee4aecfcb2d09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 17:36:47 +0100 Subject: [PATCH 151/170] mpc_cli: fix build with meson 0.60 Adds upstream patch from https://github.com/MusicPlayerDaemon/mpc/pull/76 to make the dependency on rsync optional. --- pkgs/applications/audio/mpc/default.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/applications/audio/mpc/default.nix b/pkgs/applications/audio/mpc/default.nix index 0511367db3b8..82f349216fe4 100644 --- a/pkgs/applications/audio/mpc/default.nix +++ b/pkgs/applications/audio/mpc/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchFromGitHub +, fetchpatch , meson , ninja , pkg-config @@ -20,6 +21,14 @@ stdenv.mkDerivation rec { sha256 = "sha256-2FjYBfak0IjibuU+CNQ0y9Ei8hTZhynS/BK2DNerhVw="; }; + patches = [ + # fix the build with meson 0.60 (https://github.com/MusicPlayerDaemon/mpc/pull/76) + (fetchpatch { + url = "https://github.com/MusicPlayerDaemon/mpc/commit/b656ca4b6c2a0d5b6cebd7f7daa679352f664e0e.patch"; + sha256 = "sha256-fjjSlCKxgkz7Em08CaK7+JAzl8YTzLcpGGMz2HJlsVw="; + }) + ]; + buildInputs = [ libmpdclient ] ++ lib.optionals stdenv.isDarwin [ libiconv ]; nativeBuildInputs = [ meson ninja pkg-config sphinx ]; From b5c610bac8f4128d3574def467362740373d3d3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 17:49:18 +0100 Subject: [PATCH 152/170] arcan.xarcan: fix build with meson 0.60 Adds upstream patch from https://github.com/letoram/xarcan/commit/b67e514dbb59bffc23b75d47ca7f24e96c4aeb05 to remove the warnings (which are now errors) --- pkgs/desktops/arcan/xarcan/default.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/desktops/arcan/xarcan/default.nix b/pkgs/desktops/arcan/xarcan/default.nix index 6245471a7efd..d72bf4ad5bb3 100644 --- a/pkgs/desktops/arcan/xarcan/default.nix +++ b/pkgs/desktops/arcan/xarcan/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchFromGitHub +, fetchpatch , arcan , audit , dbus @@ -46,6 +47,14 @@ stdenv.mkDerivation rec { hash = "sha256-UTIVDKnYD/q0K6G7NJUKh1tHcqnsuiJ/cQxWuPMJ2G4="; }; + patches = [ + # fix build with meson 0.60 + (fetchpatch { + url = "https://github.com/letoram/xarcan/commit/b67e514dbb59bffc23b75d47ca7f24e96c4aeb05.patch"; + sha256 = "sha256-tSQmNy1Id6nDIN+03dc1+rEEF8fMq0yJBiscNM60xic="; + }) + ]; + nativeBuildInputs = [ meson ninja From 3026e3dfd416bf479305adb38d1d606378024d85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 17:55:16 +0100 Subject: [PATCH 153/170] gtg: fix build with meson 0.60 Adds upstream patch from https://github.com/getting-things-gnome/gtg/pull/729 to fix the error about unknown keyword arguments --- pkgs/applications/office/gtg/default.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkgs/applications/office/gtg/default.nix b/pkgs/applications/office/gtg/default.nix index 4b9237d23ce7..6d536ea60a3d 100644 --- a/pkgs/applications/office/gtg/default.nix +++ b/pkgs/applications/office/gtg/default.nix @@ -1,5 +1,6 @@ { lib , fetchFromGitHub +, fetchpatch , meson , python3Packages , ninja @@ -25,6 +26,13 @@ python3Packages.buildPythonApplication rec { sha256 = "0b2slm7kjq6q8c7v4m7aqc8m1ynjxn3bl7445srpv1xc0dilq403"; }; + patches = [ + # fix build with meson 0.60 (https://github.com/getting-things-gnome/gtg/pull/729) + (fetchpatch { + url = "https://github.com/getting-things-gnome/gtg/commit/1809d10663ae3d8f69c04138b66f9b4e66ee14f6.patch"; + sha256 = "sha256-bYr5PAsuvcSqTf0vaJj2APtuBrwHdhXJxtXoAb7CfGk="; + }) + ]; nativeBuildInputs = [ meson From 49c85141aaa5186424d59dac4634b7401d0533e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 17:57:30 +0100 Subject: [PATCH 154/170] hexchat: rename with-text option to text-frontend Fixes the build with meson 0.60. The option was renamed in https://github.com/hexchat/hexchat/commit/cbb0927a7a9113d3b6b772e7b0566752dd54e6dd --- pkgs/applications/networking/irc/hexchat/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/networking/irc/hexchat/default.nix b/pkgs/applications/networking/irc/hexchat/default.nix index 504481479ed2..fbe9971f1d7d 100644 --- a/pkgs/applications/networking/irc/hexchat/default.nix +++ b/pkgs/applications/networking/irc/hexchat/default.nix @@ -39,7 +39,7 @@ stdenv.mkDerivation rec { done ''; - mesonFlags = [ "-Dwith-lua=lua" "-Dwith-text=true" ]; + mesonFlags = [ "-Dwith-lua=lua" "-Dtext-frontend=true" ]; postInstall = '' wrapProgram $out/bin/hexchat --prefix PYTHONPATH : "$PYTHONPATH" From 49d7624b770d4bcd03bb66b8e134dfdab5b6e203 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 18:13:19 +0100 Subject: [PATCH 155/170] intel-gpu-tools: fix build with meson 0.60 Adds upstream patch from https://github.com/freedesktop/xorg-intel-gpu-tools/commit/963917a3565466832a3b2fc22e9285d34a0bf944 --- pkgs/development/tools/misc/intel-gpu-tools/default.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/development/tools/misc/intel-gpu-tools/default.nix b/pkgs/development/tools/misc/intel-gpu-tools/default.nix index eca59819ba09..40cf1e14e94d 100644 --- a/pkgs/development/tools/misc/intel-gpu-tools/default.nix +++ b/pkgs/development/tools/misc/intel-gpu-tools/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchurl +, fetchpatch , pkg-config , libdrm , libpciaccess @@ -45,6 +46,14 @@ stdenv.mkDerivation rec { sha256 = "1dwvxh1yplsh1a7h3gpp40g91v12cfxy6yy99s1v9yr2kwxikm1n"; }; + patches = [ + # fix build with meson 0.60 + (fetchpatch { + url = "https://github.com/freedesktop/xorg-intel-gpu-tools/commit/963917a3565466832a3b2fc22e9285d34a0bf944.patch"; + sha256 = "sha256-goO2N7aK2dJYMhFGS1DlvjEYMSijN6stV6Q5z/RP8Ko="; + }) + ]; + nativeBuildInputs = [ pkg-config utilmacros meson ninja flex bison gtk-doc docutils docbook_xsl ]; buildInputs = [ libdrm From 4068bcbf353d3eded339349dfe25abbdf0d58930 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 18:16:52 +0100 Subject: [PATCH 156/170] iptsd: rename systemd build option to service_manager=systemd Fixes build with meson 0.60 --- pkgs/applications/misc/iptsd/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/misc/iptsd/default.nix b/pkgs/applications/misc/iptsd/default.nix index 297ea6dc6a29..7347c4b7849e 100644 --- a/pkgs/applications/misc/iptsd/default.nix +++ b/pkgs/applications/misc/iptsd/default.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { --replace "install_dir: rulesdir" "install_dir: datadir" \ ''; mesonFlags = [ - "-Dsystemd=true" + "-Dservice_manager=systemd" "-Dsample_config=false" "-Ddebug_tool=false" ]; From 9ab8b1400c5ac6cb2d0ed0bc7787cdecc86a6903 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 18:31:54 +0100 Subject: [PATCH 157/170] libfprint-tod: fix build with meson 0.60 libfprint 1.90.7 doesn't support the udev_rules_dir build option --- pkgs/development/libraries/libfprint-tod/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libfprint-tod/default.nix b/pkgs/development/libraries/libfprint-tod/default.nix index 8d7df57896d4..bffafc5e44f4 100644 --- a/pkgs/development/libraries/libfprint-tod/default.nix +++ b/pkgs/development/libraries/libfprint-tod/default.nix @@ -19,7 +19,9 @@ in { sha256 = "0cj7iy5799pchyzqqncpkhibkq012g3bdpn18pfb19nm43svhn4j"; }; - mesonFlags = mesonFlags ++ [ + mesonFlags = [ + # Include virtual drivers for fprintd tests + "-Ddrivers=all" "-Dudev_hwdb_dir=${placeholder "out"}/lib/udev/hwdb.d" ]; From 7d97b7dcf545650d9e34073905dcdb5d4326f439 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 18:48:14 +0100 Subject: [PATCH 158/170] libhttpseverywhere: fix build with meson 0.60 Adds patch from https://gitlab.gnome.org/GNOME/libhttpseverywhere/-/merge_requests/1 --- pkgs/development/libraries/libhttpseverywhere/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libhttpseverywhere/default.nix b/pkgs/development/libraries/libhttpseverywhere/default.nix index 975ad2258131..80bc73e9a043 100644 --- a/pkgs/development/libraries/libhttpseverywhere/default.nix +++ b/pkgs/development/libraries/libhttpseverywhere/default.nix @@ -15,12 +15,17 @@ in stdenv.mkDerivation rec { nativeBuildInputs = [ vala gobject-introspection meson ninja pkg-config ]; buildInputs = [ glib libgee json-glib libsoup libarchive ]; - # Fixes build with vala >=0.42 patches = [ + # Fixes build with vala >=0.42 (fetchpatch { url = "https://gitlab.gnome.org/GNOME/libhttpseverywhere/commit/6da08ef1ade9ea267cecf14dd5cb2c3e6e5e50cb.patch"; sha256 = "1nwjlh8iqgjayccwdh0fbpq2g1h8bg1k1g9i324f2bhhvyhmpq8f"; }) + # fix build with meson 0.60 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/libhttpseverywhere/-/commit/4c38b2ca25802c464f3204a62815201d8cf549fd.patch"; + sha256 = "sha256-1+fmR0bpvJ9ISN2Hr+BTIQz+Bf6VfY1RdVZ/OohUlWU="; + }) ]; mesonFlags = [ "-Denable_valadoc=true" ]; From 5276d5f62bb18c463d724447e9ad685b5cf85807 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 18:52:11 +0100 Subject: [PATCH 159/170] parlatype: remove libreoffice build option Fixes build with meson 0.60. The libreoffice extension was moved to its own repository in https://github.com/gkarsay/parlatype/commit/14386d24e50276fb91157301f3b4ab86214288ad so there's no need to disable it. --- pkgs/applications/audio/parlatype/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/applications/audio/parlatype/default.nix b/pkgs/applications/audio/parlatype/default.nix index 7b448cc69af7..c1bb1102bf1b 100644 --- a/pkgs/applications/audio/parlatype/default.nix +++ b/pkgs/applications/audio/parlatype/default.nix @@ -40,8 +40,6 @@ stdenv.mkDerivation rec { hicolor-icon-theme ]; - mesonFlags = [ "-Dlibreoffice=false" ]; - postPatch = '' chmod +x data/meson_post_install.py patchShebangs data/meson_post_install.py From 915e4a0fd07484333ef27b832ae85eee7b92da38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 18:58:40 +0100 Subject: [PATCH 160/170] retro-gtk: fix build with meson 0.60 Adds upstream patch from https://gitlab.gnome.org/GNOME/retro-gtk/-/merge_requests/167 --- pkgs/development/libraries/retro-gtk/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/libraries/retro-gtk/default.nix b/pkgs/development/libraries/retro-gtk/default.nix index e1385f7a3ef0..113143311edf 100644 --- a/pkgs/development/libraries/retro-gtk/default.nix +++ b/pkgs/development/libraries/retro-gtk/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchurl +, fetchpatch , cmake , meson , ninja @@ -27,6 +28,11 @@ stdenv.mkDerivation rec { patches = [ # https://gitlab.gnome.org/GNOME/retro-gtk/-/merge_requests/150 ./gio-unix.patch + # fix build with meson 0.60 (https://gitlab.gnome.org/GNOME/retro-gtk/-/merge_requests/167) + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/retro-gtk/-/commit/8016c10e7216394bc66281f2d9be740140b6fad6.patch"; + sha256 = "sha256-HcQnqadK5sJM5mMqi4KERkJM3H+MUl8AJAorpFDsJ68="; + }) ]; nativeBuildInputs = [ From d251bc57bc989e1728391ad1e76b6ba8647194ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 19:05:45 +0100 Subject: [PATCH 161/170] scrcpy: remove unknown override_server_path option Fixes the build with meson 0.60. The option was removed in https://github.com/Genymobile/scrcpy/commit/eb34098add981aebd0c9aaed89ea9fa04d9ce798 --- pkgs/misc/scrcpy/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/misc/scrcpy/default.nix b/pkgs/misc/scrcpy/default.nix index 871e5bff6c94..594561593e5a 100644 --- a/pkgs/misc/scrcpy/default.nix +++ b/pkgs/misc/scrcpy/default.nix @@ -47,7 +47,6 @@ stdenv.mkDerivation rec { echo -n > server/meson.build ''; - mesonFlags = [ "-Doverride_server_path=${prebuilt_server}" ]; postInstall = '' mkdir -p "$out/share/scrcpy" ln -s "${prebuilt_server}" "$out/share/scrcpy/scrcpy-server" From c5d52173c2e46487f23fc695883f2f812a08c5ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 19:24:21 +0100 Subject: [PATCH 162/170] yabridge: fix meson options Fixes the build with meson 0.60. Options were renamed to lower case in https://github.com/marzer/tomlplusplus/commit/1381240e10bca82064f80cb9f8cd3a4a70671565 and build_tests and build_examples are now disabled when tomlplusplus is used as a subproject. --- pkgs/tools/audio/yabridge/default.nix | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/pkgs/tools/audio/yabridge/default.nix b/pkgs/tools/audio/yabridge/default.nix index c468a845a1a6..688906e684d9 100644 --- a/pkgs/tools/audio/yabridge/default.nix +++ b/pkgs/tools/audio/yabridge/default.nix @@ -105,11 +105,7 @@ in multiStdenv.mkDerivation rec { "-Dwith-bitbridge=true" # Requires CMake and is unnecessary - "-Dtomlplusplus:GENERATE_CMAKE_CONFIG=disabled" - - # tomlplusplus examples and tests don't build with winegcc - "-Dtomlplusplus:BUILD_EXAMPLES=disabled" - "-Dtomlplusplus:BUILD_TESTS=disabled" + "-Dtomlplusplus:generate_cmake_config=false" ]; installPhase = '' From 1a6f79a47e8ff16af7bcdbf8767b557c77a00522 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sat, 22 Jan 2022 19:28:11 +0100 Subject: [PATCH 163/170] zrythm: fix build with meson 0.60 Feature flags were renamed in https://github.com/zrythm/zrythm/commit/2f6ca072f09d14993d60e29f4d5c3fbf5a08be02 and the ffmpeg dependency was dropped in https://github.com/zrythm/zrythm/commit/116b9553913a4616599d259fbe22bc30ffe1ed43 --- pkgs/applications/audio/zrythm/default.nix | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/pkgs/applications/audio/zrythm/default.nix b/pkgs/applications/audio/zrythm/default.nix index 8963cff4d12a..70b7fbb745f3 100644 --- a/pkgs/applications/audio/zrythm/default.nix +++ b/pkgs/applications/audio/zrythm/default.nix @@ -13,7 +13,6 @@ , curl , dconf , libepoxy -, ffmpeg , fftw , fftwFloat , flex @@ -95,7 +94,6 @@ stdenv.mkDerivation rec { curl dconf libepoxy - ffmpeg fftw fftwFloat flex @@ -133,10 +131,9 @@ stdenv.mkDerivation rec { ]; mesonFlags = [ - "-Denable_ffmpeg=true" - "-Denable_rtmidi=true" - "-Denable_rtaudio=true" - "-Denable_sdl=true" + "-Drtmidi=enabled" + "-Drtaudio=enabled" + "-Dsdl=enabled" "-Dcarla=enabled" "-Dmanpage=true" # "-Duser_manual=true" # needs sphinx-intl From 44d160059b012cf148a86a1e5309bca2d83f62cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sun, 23 Jan 2022 03:33:06 +0100 Subject: [PATCH 164/170] maintainers: add github handle for algorith --- maintainers/maintainer-list.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index db182861c7ba..911acbeb4768 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -515,6 +515,8 @@ }; algorith = { email = "dries_van_daele@telenet.be"; + github = "DriesVanDaele"; + githubId = 1141488; name = "Dries Van Daele"; }; alibabzo = { From d1ad218cc116993218a53a130b4c6d94dc73c355 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Na=C3=AFm=20Favier?= Date: Sun, 23 Jan 2022 03:33:16 +0100 Subject: [PATCH 165/170] mpc_cli: add ncfavier as maintainer --- pkgs/applications/audio/mpc/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/audio/mpc/default.nix b/pkgs/applications/audio/mpc/default.nix index 82f349216fe4..24ad2804f8ac 100644 --- a/pkgs/applications/audio/mpc/default.nix +++ b/pkgs/applications/audio/mpc/default.nix @@ -37,7 +37,7 @@ stdenv.mkDerivation rec { description = "A minimalist command line interface to MPD"; homepage = "https://www.musicpd.org/clients/mpc/"; license = licenses.gpl2; - maintainers = with maintainers; [ algorith ]; + maintainers = with maintainers; [ algorith ncfavier ]; platforms = with platforms; linux ++ darwin; }; } From d3ec14f6cb05c8532a0ee8af97fb2c6ed28509dd Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Sun, 23 Jan 2022 08:18:46 -0500 Subject: [PATCH 166/170] darwin.text_cmds: fix build --- .../darwin/apple-source-releases/text_cmds/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/os-specific/darwin/apple-source-releases/text_cmds/default.nix b/pkgs/os-specific/darwin/apple-source-releases/text_cmds/default.nix index 9e3d6e49204a..672bb443242b 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/text_cmds/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/text_cmds/default.nix @@ -20,6 +20,8 @@ appleDerivation { done ''; + NIX_CFLAGS_COMPILE=[ "-Wno-error=format-security" ]; # hardeningDisable doesn't cut it + meta = { platforms = lib.platforms.darwin; maintainers = with lib.maintainers; [ matthewbauer ]; From 1ab8a4f45be45efbd54e0b9d32ba396c9ec4e7ef Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Mon, 24 Jan 2022 02:18:06 +0100 Subject: [PATCH 167/170] sway: fix eval The meson_0_60 attribute was removed because meson was migrated to 0.60. --- pkgs/applications/window-managers/sway/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix index 72ca71d58960..194525dcffb5 100644 --- a/pkgs/applications/window-managers/sway/default.nix +++ b/pkgs/applications/window-managers/sway/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, fetchFromGitHub, substituteAll, swaybg -, meson_0_60, ninja, pkg-config, wayland-scanner, scdoc +, meson, ninja, pkg-config, wayland-scanner, scdoc , wayland, libxkbcommon, pcre, json_c, dbus, libevdev , pango, cairo, libinput, libcap, pam, gdk-pixbuf, librsvg , wlroots, wayland-protocols, libdrm @@ -43,7 +43,7 @@ stdenv.mkDerivation rec { ]; nativeBuildInputs = [ - meson_0_60 ninja pkg-config wayland-scanner scdoc + meson ninja pkg-config wayland-scanner scdoc ]; buildInputs = [ From fde0b2e2f28aeac074e424bb0a17917ceeee43b9 Mon Sep 17 00:00:00 2001 From: FliegendeWurst <2012gdwu+github@posteo.de> Date: Wed, 19 Jan 2022 10:28:22 +0100 Subject: [PATCH 168/170] vim: 8.2.3877 -> 8.2.4186 (security) (cherry picked from staging commit ea5a1dd5e7c0afb3c1, PR #155587) I believe this qualifies for staging-next; rebuilds aren't that huge, and they look relatively cheap (mostly vim plugins). --- 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 42cae7992853..51a9b9af5bfd 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.3877"; + version = "8.2.4186"; src = fetchFromGitHub { owner = "vim"; repo = "vim"; rev = "v${version}"; - sha256 = "sha256-NqTO2TdhOs63eP7CdWY9U9nbR7No3hqPV5rGhYF9arA="; + sha256 = "0g276mbmq69z7c4kgj59r0azxmx9ih2sd8v83dx2gfph6wgw65ph"; }; enableParallelBuilding = true; From 4bde5a3a68d8d7095017f57c831b6f9540848e16 Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Mon, 24 Jan 2022 03:20:51 -0800 Subject: [PATCH 169/170] libredirect: fix build for aarch64-darwin (PR #156460) --- pkgs/build-support/libredirect/default.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/build-support/libredirect/default.nix b/pkgs/build-support/libredirect/default.nix index 5545c93c19e1..9ed00c8a8f63 100644 --- a/pkgs/build-support/libredirect/default.nix +++ b/pkgs/build-support/libredirect/default.nix @@ -44,7 +44,7 @@ else stdenv.mkDerivation rec { -isystem ${llvmPackages_13.clang.libc}/include \ -isystem ${llvmPackages_13.libclang.lib}/lib/clang/*/include \ -L${llvmPackages_13.clang.libc}/lib \ - -Wl,-install_name,$out/lib/$libName \ + -Wl,-install_name,$libName \ -Wall -std=c99 -O3 -fPIC libredirect.c \ -ldl -shared -o "$libName" '' else if stdenv.isDarwin then '' @@ -73,6 +73,12 @@ else stdenv.mkDerivation rec { install -vD "$libName" "$out/lib/$libName" + '' + lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) '' + # dylib will be rejected unless dylib rpath gets explictly set + install_name_tool \ + -change $libName $out/lib/$libName \ + $out/lib/$libName + '' + '' # Provide a setup hook that injects our library into every process. mkdir -p "$hook/nix-support" cat < "$hook/nix-support/setup-hook" From 2f14e11f3a545130409c520909a64b86e92f737d Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Mon, 24 Jan 2022 10:20:24 +0000 Subject: [PATCH 170/170] cryptsetup: don't look at targetPlatform targetPlatform refers to the platform the program being compiled will produce binaries for, which only makes sense for things like compilers, not cryptsetup. The correct platform to look at to check static support is hostPlatform, which refers to the architecture the program being compiled will run on. --- pkgs/os-specific/linux/cryptsetup/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/cryptsetup/default.nix b/pkgs/os-specific/linux/cryptsetup/default.nix index 434bdc624710..939a7115e89b 100644 --- a/pkgs/os-specific/linux/cryptsetup/default.nix +++ b/pkgs/os-specific/linux/cryptsetup/default.nix @@ -24,13 +24,13 @@ stdenv.mkDerivation rec { substituteInPlace tests/unit-utils-io.c --replace "| O_DIRECT" "" ''; - NIX_LDFLAGS = lib.optionalString (stdenv.cc.isGNU && !stdenv.targetPlatform.isStatic) "-lgcc_s"; + NIX_LDFLAGS = lib.optionalString (stdenv.cc.isGNU && !stdenv.hostPlatform.isStatic) "-lgcc_s"; configureFlags = [ "--enable-cryptsetup-reencrypt" "--with-crypto_backend=openssl" "--disable-ssh-token" - ] ++ lib.optionals stdenv.targetPlatform.isStatic [ + ] ++ lib.optionals stdenv.hostPlatform.isStatic [ "--enable-static-cryptsetup" ];