diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 202e166443a8..5e640482381c 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -302,6 +302,12 @@ githubId = 4296804; name = "Alex Franchuk"; }; + agbrooks = { + email = "andrewgrantbrooks@gmail.com"; + github = "agbrooks"; + githubId = 19290901; + name = "Andrew Brooks"; + }; aherrmann = { email = "andreash87@gmx.ch"; github = "aherrmann"; diff --git a/pkgs/applications/blockchains/openethereum/default.nix b/pkgs/applications/blockchains/openethereum/default.nix index b4b5d13f1407..be2373941b32 100644 --- a/pkgs/applications/blockchains/openethereum/default.nix +++ b/pkgs/applications/blockchains/openethereum/default.nix @@ -10,18 +10,18 @@ , darwin }: -rustPlatform.buildRustPackage.override { stdenv = stdenv; } rec { +rustPlatform.buildRustPackage rec { pname = "openethereum"; - version = "3.2.5"; + version = "3.2.6"; src = fetchFromGitHub { owner = "openethereum"; repo = "openethereum"; rev = "v${version}"; - sha256 = "1g48fkznvr9fs3j9zy2d9pcwnahmyghxg2b9bsn2mxpyczmfqrki"; + sha256 = "0lxps3cyg8dzb9qr1kg91s9jc3mnm6hxybwcbhva38pcq4yc40xc"; }; - cargoSha256 = "02nlm5ariv4dr6b3rckzs7hw1xrl83yvhimrzb0g5l0j0sxh1nhc"; + cargoSha256 = "08yrpls3szmw6vy2c4d6b1k907ga0809ylvyx0zb6f8mp8z7ahl2"; nativeBuildInputs = [ cmake pkg-config ]; diff --git a/pkgs/applications/editors/poke/default.nix b/pkgs/applications/editors/poke/default.nix index f0b8c43546d8..df53bcb52c99 100644 --- a/pkgs/applications/editors/poke/default.nix +++ b/pkgs/applications/editors/poke/default.nix @@ -40,7 +40,7 @@ in stdenv.mkDerivation rec { ] ++ lib.optional guiSupport makeWrapper; buildInputs = [ boehmgc readline ] - ++ lib.optional guiSupport tk + ++ lib.optionals guiSupport [ tk tcl.tclPackageHook tcllib ] ++ lib.optional miSupport json_c ++ lib.optional nbdSupport libnbd ++ lib.optional textStylingSupport gettext @@ -57,11 +57,6 @@ in stdenv.mkDerivation rec { doCheck = !isCross; checkInputs = lib.optionals (!isCross) [ dejagnu ]; - postFixup = lib.optionalString guiSupport '' - wrapProgram "$out/bin/poke-gui" \ - --prefix TCLLIBPATH ' ' ${tcllib}/lib/tcllib${tcllib.version} - ''; - meta = with lib; { description = "Interactive, extensible editor for binary data"; homepage = "http://www.jemarch.net/poke"; diff --git a/pkgs/applications/graphics/ImageMagick/7.0.nix b/pkgs/applications/graphics/ImageMagick/7.0.nix index ed1e580cb167..64c5a31a756a 100644 --- a/pkgs/applications/graphics/ImageMagick/7.0.nix +++ b/pkgs/applications/graphics/ImageMagick/7.0.nix @@ -18,13 +18,13 @@ in stdenv.mkDerivation rec { pname = "imagemagick"; - version = "7.0.11-9"; + version = "7.0.11-12"; src = fetchFromGitHub { owner = "ImageMagick"; repo = "ImageMagick"; rev = version; - sha256 = "sha256-eL9zFrgkLb3pS8/UlQB5+p50UG8j3Q7TNDwcO/3BuXo="; + sha256 = "sha256-vTCfpHcja0z/aplcunUDlg/90EbfrR/xQ9bzdG0n2RY="; }; outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big diff --git a/pkgs/applications/networking/cluster/k9s/default.nix b/pkgs/applications/networking/cluster/k9s/default.nix index 8d515528a026..965c50cf03b0 100644 --- a/pkgs/applications/networking/cluster/k9s/default.nix +++ b/pkgs/applications/networking/cluster/k9s/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "k9s"; - version = "0.24.8"; + version = "0.24.9"; src = fetchFromGitHub { owner = "derailed"; repo = "k9s"; rev = "v${version}"; - sha256 = "sha256-6RGm2uiYvsdpWdhNwDTw4z1O6uNErkWTuyOiwKIvXOY="; + sha256 = "sha256-9/P6OaSZDJ98EQ9DM4Oib0T1sC1K3WxUXh4IQU3qXbs="; }; buildFlagsArray = '' @@ -18,7 +18,7 @@ buildGoModule rec { -X github.com/derailed/k9s/cmd.commit=${src.rev} ''; - vendorSha256 = "sha256-lzxGTubm+qQes5QKaamfmSkXs4qquHHjIhts8YmKlYI="; + vendorSha256 = "sha256-hqmymxP4zK8GVqOxzB6vRfFyo+VIeI1suBu64/oEVig="; doCheck = false; diff --git a/pkgs/applications/science/chemistry/jmol/default.nix b/pkgs/applications/science/chemistry/jmol/default.nix index d8f7bd5eb552..93ec987e2c69 100644 --- a/pkgs/applications/science/chemistry/jmol/default.nix +++ b/pkgs/applications/science/chemistry/jmol/default.nix @@ -17,14 +17,14 @@ let }; in stdenv.mkDerivation rec { - version = "14.31.38"; + version = "14.31.39"; pname = "jmol"; src = let baseVersion = "${lib.versions.major version}.${lib.versions.minor version}"; in fetchurl { url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${version}/Jmol-${version}-binary.tar.gz"; - sha256 = "sha256-yXJ1KtTH3bi24GFiVXu8zzQkreDkqbCxgm7fVoSJepg="; + sha256 = "sha256-ss+QvBsmivqNdjXW45Sv9h/JXuZpryCGmRTsUgcDlRE="; }; patchPhase = '' diff --git a/pkgs/applications/version-management/fossil/default.nix b/pkgs/applications/version-management/fossil/default.nix index af2ed175ac87..5b15f19c673d 100644 --- a/pkgs/applications/version-management/fossil/default.nix +++ b/pkgs/applications/version-management/fossil/default.nix @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { sha256 = "sha256-uNDJIBlt2K4pFS+nRI5ROh+nxYiHG3heP7/Ae0KgX7k="; }; - nativeBuildInputs = [ installShellFiles tcl ]; + nativeBuildInputs = [ installShellFiles tcl tcllib ]; buildInputs = [ zlib openssl readline sqlite which ed ] ++ lib.optional stdenv.isDarwin libiconv; @@ -36,10 +36,6 @@ stdenv.mkDerivation rec { configureFlags = [ "--disable-internal-sqlite" ] ++ lib.optional withJson "--json"; - preCheck = '' - export TCLLIBPATH="${tcllib}/lib/tcllib${tcllib.version}" - ''; - preBuild = '' export USER=nonexistent-but-specified-user ''; diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix index 8ad150f13060..53ac8a0d1a06 100644 --- a/pkgs/applications/version-management/git-and-tools/git/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git/default.nix @@ -2,7 +2,7 @@ , curl, openssl, zlib, expat, perlPackages, python3, gettext, cpio , gnugrep, gnused, gawk, coreutils # needed at runtime by git-filter-branch etc , openssh, pcre2 -, asciidoctor, texinfo, xmlto, docbook2x, docbook_xsl, docbook_xsl_ns, docbook_xml_dtd_45 +, asciidoc, texinfo, xmlto, docbook2x, docbook_xsl, docbook_xml_dtd_45 , libxslt, tcl, tk, makeWrapper, libiconv , svnSupport, subversionClient, perlLibs, smtpPerlLibs , perlSupport ? stdenv.buildPlatform == stdenv.hostPlatform @@ -68,8 +68,8 @@ stdenv.mkDerivation { ''; nativeBuildInputs = [ gettext perlPackages.perl makeWrapper ] - ++ lib.optionals withManual [ asciidoctor texinfo xmlto docbook2x - docbook_xsl docbook_xsl_ns docbook_xml_dtd_45 libxslt ]; + ++ lib.optionals withManual [ asciidoc texinfo xmlto docbook2x + docbook_xsl docbook_xml_dtd_45 libxslt ]; buildInputs = [curl openssl zlib expat cpio libiconv] ++ lib.optionals perlSupport [ perlPackages.perl ] ++ lib.optionals guiSupport [tcl tk] @@ -148,7 +148,7 @@ stdenv.mkDerivation { } # Install git-subtree. - make -C contrib/subtree install ${lib.optionalString withManual "USE_ASCIIDOCTOR=1 install-doc"} + make -C contrib/subtree install ${lib.optionalString withManual "install-doc"} rm -rf contrib/subtree # Install contrib stuff. @@ -233,7 +233,7 @@ stdenv.mkDerivation { '') + lib.optionalString withManual ''# Install man pages - make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES USE_ASCIIDOCTOR=1 PERL_PATH="${buildPackages.perl}/bin/perl" cmd-list.made install install-html \ + make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES PERL_PATH="${buildPackages.perl}/bin/perl" cmd-list.made install install-html \ -C Documentation '' + (if guiSupport then '' diff --git a/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix b/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix index 62ebe39788f4..f1efcbfd2781 100644 --- a/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix +++ b/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix @@ -2,13 +2,13 @@ buildKodiBinaryAddon rec { pname = "inputstream-adaptive"; namespace = "inputstream.adaptive"; - version = "2.6.14"; + version = "2.6.15"; src = fetchFromGitHub { owner = "xbmc"; repo = "inputstream.adaptive"; rev = "${version}-${rel}"; - sha256 = "sha256-5hYB9J4syY+2XOTdg9h7xLk8MMEG88EETIgkUmz4KOU="; + sha256 = "sha256-Q4MaHIUM/ixAKyTklwuXCu7t/po+q5ZT+YpYf1n+PkA="; }; extraNativeBuildInputs = [ gtest ]; diff --git a/pkgs/build-support/pkg-config-wrapper/add-flags.sh b/pkgs/build-support/pkg-config-wrapper/add-flags.sh index 35ecf62ca230..90aee712be63 100644 --- a/pkgs/build-support/pkg-config-wrapper/add-flags.sh +++ b/pkgs/build-support/pkg-config-wrapper/add-flags.sh @@ -6,7 +6,7 @@ var_templates_list=( accumulateRoles for var in "${var_templates_list[@]}"; do - mangleVarList "$var" ${role_suffixes[@]+"${role_suffixes[@]}"} + mangleVarListGeneric ":" "$var" ${role_suffixes[@]+"${role_suffixes[@]}"} done export NIX_PKG_CONFIG_WRAPPER_FLAGS_SET_@suffixSalt@=1 diff --git a/pkgs/build-support/wrapper-common/utils.bash b/pkgs/build-support/wrapper-common/utils.bash index 66b7c3f3e83c..f773270f7de9 100644 --- a/pkgs/build-support/wrapper-common/utils.bash +++ b/pkgs/build-support/wrapper-common/utils.bash @@ -13,7 +13,9 @@ accumulateRoles() { fi } -mangleVarList() { +mangleVarListGeneric() { + local sep="$1" + shift local var="$1" shift local -a role_suffixes=("$@") @@ -25,11 +27,15 @@ mangleVarList() { for suffix in "${role_suffixes[@]}"; do local inputVar="${var}${suffix}" if [ -v "$inputVar" ]; then - export ${outputVar}+="${!outputVar:+ }${!inputVar}" + export ${outputVar}+="${!outputVar:+$sep}${!inputVar}" fi done } +mangleVarList() { + mangleVarListGeneric " " "$@" +} + mangleVarBool() { local var="$1" shift diff --git a/pkgs/development/compilers/llvm/10/clang/default.nix b/pkgs/development/compilers/llvm/10/clang/default.nix index e0c52651cadc..b42f40b96943 100644 --- a/pkgs/development/compilers/llvm/10/clang/default.nix +++ b/pkgs/development/compilers/llvm/10/clang/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 +{ lib, stdenv, llvm_meta, fetch, substituteAll, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 , buildLlvmTools , fixDarwinDylibNames , enableManpages ? false @@ -46,6 +46,10 @@ let # https://reviews.llvm.org/D51899 ./compiler-rt-baremetal.patch ./gnu-install-dirs.patch + (substituteAll { + src = ../../clang-6-10-LLVMgold-path.patch; + libllvmLibdir = "${libllvm.lib}/lib"; + }) ]; postPatch = '' @@ -64,12 +68,7 @@ let outputs = [ "out" "lib" "dev" "python" ]; - # Clang expects to find LLVMgold in its own prefix postInstall = '' - if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then - ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib - fi - ln -sv $out/bin/clang $out/bin/cpp # Move libclang to 'lib' output diff --git a/pkgs/development/compilers/llvm/11/clang/default.nix b/pkgs/development/compilers/llvm/11/clang/default.nix index f23394a8b754..07e5326128aa 100644 --- a/pkgs/development/compilers/llvm/11/clang/default.nix +++ b/pkgs/development/compilers/llvm/11/clang/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, llvm_meta, fetch, fetchpatch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 +{ lib, stdenv, llvm_meta, fetch, fetchpatch, substituteAll, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 , buildLlvmTools , fixDarwinDylibNames , enableManpages ? false @@ -57,6 +57,10 @@ let excludes = [ "docs/*" "test/*" ]; sha256 = "0gxgmi0qbm89mq911dahallhi8m6wa9vpklklqmxafx4rplrr8ph"; }) + (substituteAll { + src = ../../clang-11-12-LLVMgold-path.patch; + libllvmLibdir = "${libllvm.lib}/lib"; + }) ]; postPatch = '' @@ -75,12 +79,7 @@ let outputs = [ "out" "lib" "dev" "python" ]; - # Clang expects to find LLVMgold in its own prefix postInstall = '' - if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then - ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib - fi - ln -sv $out/bin/clang $out/bin/cpp # Move libclang to 'lib' output diff --git a/pkgs/development/compilers/llvm/12/clang/default.nix b/pkgs/development/compilers/llvm/12/clang/default.nix index 3d1106dbc52c..dbd6ea1e1ac4 100644 --- a/pkgs/development/compilers/llvm/12/clang/default.nix +++ b/pkgs/development/compilers/llvm/12/clang/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 +{ lib, stdenv, llvm_meta, fetch, substituteAll, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 , buildLlvmTools , fixDarwinDylibNames , enableManpages ? false @@ -44,6 +44,10 @@ let ./purity.patch # https://reviews.llvm.org/D51899 ./gnu-install-dirs.patch + (substituteAll { + src = ../../clang-11-12-LLVMgold-path.patch; + libllvmLibdir = "${libllvm.lib}/lib"; + }) ]; postPatch = '' @@ -59,12 +63,7 @@ let outputs = [ "out" "lib" "dev" "python" ]; - # Clang expects to find LLVMgold in its own prefix postInstall = '' - if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then - ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib - fi - ln -sv $out/bin/clang $out/bin/cpp # Move libclang to 'lib' output diff --git a/pkgs/development/compilers/llvm/5/clang/LLVMgold-path.patch b/pkgs/development/compilers/llvm/5/clang/LLVMgold-path.patch new file mode 100644 index 000000000000..6a09c91b5132 --- /dev/null +++ b/pkgs/development/compilers/llvm/5/clang/LLVMgold-path.patch @@ -0,0 +1,14 @@ +diff --git a/lib/Driver/ToolChains/CommonArgs.cpp b/lib/Driver/ToolChains/CommonArgs.cpp +index 00bd60bc24bb..17416b0bd3c0 100644 +--- a/lib/Driver/ToolChains/CommonArgs.cpp ++++ b/lib/Driver/ToolChains/CommonArgs.cpp +@@ -376,8 +376,7 @@ void tools::AddGoldPlugin(const ToolChain &ToolChain, const ArgList &Args, + // as gold requires -plugin to come before any -plugin-opt that -Wl might + // forward. + CmdArgs.push_back("-plugin"); +- std::string Plugin = +- ToolChain.getDriver().Dir + "/../lib" CLANG_LIBDIR_SUFFIX "/LLVMgold.so"; ++ std::string Plugin = "@libllvmLibdir@" "/LLVMgold.so"; + CmdArgs.push_back(Args.MakeArgString(Plugin)); + + // Try to pass driver level flags relevant to LTO code generation down to diff --git a/pkgs/development/compilers/llvm/5/clang/default.nix b/pkgs/development/compilers/llvm/5/clang/default.nix index b5887a23c65e..df3d26139866 100644 --- a/pkgs/development/compilers/llvm/5/clang/default.nix +++ b/pkgs/development/compilers/llvm/5/clang/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 +{ lib, stdenv, llvm_meta, fetch, substituteAll, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 , buildLlvmTools , fixDarwinDylibNames , enableManpages ? false @@ -43,6 +43,10 @@ let patches = [ ./purity.patch ./gnu-install-dirs.patch + (substituteAll { + src = ./LLVMgold-path.patch; + libllvmLibdir = "${libllvm.lib}/lib"; + }) ]; postPatch = '' @@ -58,12 +62,7 @@ let outputs = [ "out" "lib" "dev" "python" ]; - # Clang expects to find LLVMgold in its own prefix postInstall = '' - if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then - ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib - fi - ln -sv $out/bin/clang $out/bin/cpp # Move libclang to 'lib' output diff --git a/pkgs/development/compilers/llvm/6/clang/default.nix b/pkgs/development/compilers/llvm/6/clang/default.nix index eba9111d9d32..ee8859c159a1 100644 --- a/pkgs/development/compilers/llvm/6/clang/default.nix +++ b/pkgs/development/compilers/llvm/6/clang/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 +{ lib, stdenv, llvm_meta, fetch, substituteAll, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 , buildLlvmTools , fixDarwinDylibNames , enableManpages ? false @@ -43,6 +43,10 @@ let patches = [ ./purity.patch ./gnu-install-dirs.patch + (substituteAll { + src = ../../clang-6-10-LLVMgold-path.patch; + libllvmLibdir = "${libllvm.lib}/lib"; + }) ]; postPatch = '' @@ -58,12 +62,7 @@ let outputs = [ "out" "lib" "dev" "python" ]; - # Clang expects to find LLVMgold in its own prefix postInstall = '' - if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then - ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib - fi - ln -sv $out/bin/clang $out/bin/cpp # Move libclang to 'lib' output diff --git a/pkgs/development/compilers/llvm/7/clang/default.nix b/pkgs/development/compilers/llvm/7/clang/default.nix index e1b031ad352b..afa1669ace61 100644 --- a/pkgs/development/compilers/llvm/7/clang/default.nix +++ b/pkgs/development/compilers/llvm/7/clang/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 +{ lib, stdenv, llvm_meta, fetch, substituteAll, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 , buildLlvmTools , fixDarwinDylibNames , enableManpages ? false @@ -52,6 +52,10 @@ let # needed for our bootstrapping to not interfere with C. ./unwindlib.patch ./gnu-install-dirs.patch + (substituteAll { + src = ../../clang-6-10-LLVMgold-path.patch; + libllvmLibdir = "${libllvm.lib}/lib"; + }) ]; postPatch = '' @@ -70,12 +74,7 @@ let outputs = [ "out" "lib" "dev" "python" ]; - # Clang expects to find LLVMgold in its own prefix postInstall = '' - if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then - ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib - fi - ln -sv $out/bin/clang $out/bin/cpp # Move libclang to 'lib' output diff --git a/pkgs/development/compilers/llvm/8/clang/default.nix b/pkgs/development/compilers/llvm/8/clang/default.nix index c3399dccd1d7..5cb7720d026f 100644 --- a/pkgs/development/compilers/llvm/8/clang/default.nix +++ b/pkgs/development/compilers/llvm/8/clang/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 +{ lib, stdenv, llvm_meta, fetch, substituteAll, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 , buildLlvmTools , fixDarwinDylibNames , enableManpages ? false @@ -59,6 +59,10 @@ let # make clang -xhip use $PATH to find executables ./HIP-use-PATH-8.patch ./gnu-install-dirs.patch + (substituteAll { + src = ../../clang-6-10-LLVMgold-path.patch; + libllvmLibdir = "${libllvm.lib}/lib"; + }) ]; postPatch = '' @@ -77,12 +81,7 @@ let outputs = [ "out" "lib" "dev" "python" ]; - # Clang expects to find LLVMgold in its own prefix postInstall = '' - if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then - ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib - fi - ln -sv $out/bin/clang $out/bin/cpp # Move libclang to 'lib' output diff --git a/pkgs/development/compilers/llvm/9/clang/default.nix b/pkgs/development/compilers/llvm/9/clang/default.nix index 700fcb414fce..c98b4a830c42 100644 --- a/pkgs/development/compilers/llvm/9/clang/default.nix +++ b/pkgs/development/compilers/llvm/9/clang/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, llvm_meta, fetch, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 +{ lib, stdenv, llvm_meta, fetch, substituteAll, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3 , buildLlvmTools , fixDarwinDylibNames , enableManpages ? false @@ -52,6 +52,10 @@ let # make clang -xhip use $PATH to find executables ./HIP-use-PATH-9.patch ./gnu-install-dirs.patch + (substituteAll { + src = ../../clang-6-10-LLVMgold-path.patch; + libllvmLibdir = "${libllvm.lib}/lib"; + }) ]; postPatch = '' @@ -70,12 +74,7 @@ let outputs = [ "out" "lib" "dev" "python" ]; - # Clang expects to find LLVMgold in its own prefix postInstall = '' - if [ -e ${libllvm.lib}/lib/LLVMgold.so ]; then - ln -sv ${libllvm.lib}/lib/LLVMgold.so $lib/lib - fi - ln -sv $out/bin/clang $out/bin/cpp # Move libclang to 'lib' output diff --git a/pkgs/development/compilers/llvm/clang-11-12-LLVMgold-path.patch b/pkgs/development/compilers/llvm/clang-11-12-LLVMgold-path.patch new file mode 100644 index 000000000000..8f8991976f33 --- /dev/null +++ b/pkgs/development/compilers/llvm/clang-11-12-LLVMgold-path.patch @@ -0,0 +1,13 @@ +diff --git a/lib/Driver/ToolChains/CommonArgs.cpp b/lib/Driver/ToolChains/CommonArgs.cpp +index 6b6e276b8ce7..7896542a1202 100644 +--- a/lib/Driver/ToolChains/CommonArgs.cpp ++++ b/lib/Driver/ToolChains/CommonArgs.cpp +@@ -409,7 +409,7 @@ void tools::addLTOOptions(const ToolChain &ToolChain, const ArgList &Args, + + SmallString<1024> Plugin; + llvm::sys::path::native( +- Twine(D.Dir) + "/../lib" CLANG_LIBDIR_SUFFIX "/LLVMgold" + Suffix, ++ Twine("@libllvmLibdir@" "/LLVMgold") + Suffix, + Plugin); + CmdArgs.push_back(Args.MakeArgString(Plugin)); + } diff --git a/pkgs/development/compilers/llvm/clang-6-10-LLVMgold-path.patch b/pkgs/development/compilers/llvm/clang-6-10-LLVMgold-path.patch new file mode 100644 index 000000000000..93504316edf3 --- /dev/null +++ b/pkgs/development/compilers/llvm/clang-6-10-LLVMgold-path.patch @@ -0,0 +1,15 @@ +diff --git a/lib/Driver/ToolChains/CommonArgs.cpp b/lib/Driver/ToolChains/CommonArgs.cpp +index 37ec73468570..b73e75aa6e59 100644 +--- a/lib/Driver/ToolChains/CommonArgs.cpp ++++ b/lib/Driver/ToolChains/CommonArgs.cpp +@@ -370,8 +370,8 @@ void tools::AddGoldPlugin(const ToolChain &ToolChain, const ArgList &Args, + #endif + + SmallString<1024> Plugin; +- llvm::sys::path::native(Twine(ToolChain.getDriver().Dir) + +- "/../lib" CLANG_LIBDIR_SUFFIX "/LLVMgold" + ++ llvm::sys::path::native(Twine("@libllvmLibdir@" ++ "/LLVMgold") + + Suffix, + Plugin); + CmdArgs.push_back(Args.MakeArgString(Plugin)); diff --git a/pkgs/development/compilers/rust/1_52.nix b/pkgs/development/compilers/rust/1_52.nix index 775792d06f60..822708741bda 100644 --- a/pkgs/development/compilers/rust/1_52.nix +++ b/pkgs/development/compilers/rust/1_52.nix @@ -15,21 +15,22 @@ , CoreFoundation, Security , pkgsBuildTarget, pkgsBuildBuild, pkgsBuildHost , makeRustPlatform -, llvmPackages_11, llvm_11 +, llvmPackages_11 +, llvmPackages_12, llvm_12 } @ args: import ./default.nix { rustcVersion = "1.52.1"; rustcSha256 = "sha256-Om8jom0Oj4erv78yxc19qgwLcdCYar78Vrml+/vQv5g="; - llvmSharedForBuild = pkgsBuildBuild.llvmPackages_11.libllvm.override { enableSharedLibraries = true; }; - llvmSharedForHost = pkgsBuildHost.llvmPackages_11.libllvm.override { enableSharedLibraries = true; }; - llvmSharedForTarget = pkgsBuildTarget.llvmPackages_11.libllvm.override { enableSharedLibraries = true; }; + llvmSharedForBuild = pkgsBuildBuild.llvmPackages_12.libllvm.override { enableSharedLibraries = true; }; + llvmSharedForHost = pkgsBuildHost.llvmPackages_12.libllvm.override { enableSharedLibraries = true; }; + llvmSharedForTarget = pkgsBuildTarget.llvmPackages_12.libllvm.override { enableSharedLibraries = true; }; llvmBootstrapForDarwin = llvmPackages_11; # For use at runtime - llvmShared = llvm_11.override { enableSharedLibraries = true; }; + llvmShared = llvm_12.override { enableSharedLibraries = true; }; # Note: the version MUST be one version prior to the version we're # building @@ -55,4 +56,4 @@ import ./default.nix { ]; } -(builtins.removeAttrs args [ "fetchpatch" "pkgsBuildHost" "llvmPackages_11" "llvm_11"]) +(builtins.removeAttrs args [ "fetchpatch" "pkgsBuildHost" "llvmPackages_11" "llvmPackages_12" "llvm_12"]) diff --git a/pkgs/development/interpreters/chibi/default.nix b/pkgs/development/interpreters/chibi/default.nix index 92531eacd20d..c0ee8988c094 100644 --- a/pkgs/development/interpreters/chibi/default.nix +++ b/pkgs/development/interpreters/chibi/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchFromGitHub, makeWrapper }: let - version = "0.9.1"; + version = "0.10"; name = "chibi-scheme-${version}"; in stdenv.mkDerivation { @@ -18,7 +18,7 @@ stdenv.mkDerivation { owner = "ashinn"; repo = "chibi-scheme"; rev = version; - sha256 = "0nd63i924ifh39cba1hd4sbi6vh1cb73v97nrn4bf8rrjh3k8pdi"; + sha256 = "sha256-7vDxcnXhq1wJSLFHGxtwh+H+KWxh6B0JXSMPzSmQFXo="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/development/interpreters/python/hooks/pip-build-hook.sh b/pkgs/development/interpreters/python/hooks/pip-build-hook.sh index 6dd384b4847f..745f02e8c9bc 100644 --- a/pkgs/development/interpreters/python/hooks/pip-build-hook.sh +++ b/pkgs/development/interpreters/python/hooks/pip-build-hook.sh @@ -7,7 +7,7 @@ pipBuildPhase() { mkdir -p dist echo "Creating a wheel..." - @pythonInterpreter@ -m pip wheel --no-index --no-deps --no-clean --no-build-isolation --wheel-dir dist . + @pythonInterpreter@ -m pip wheel --verbose --no-index --no-deps --no-clean --no-build-isolation --wheel-dir dist . echo "Finished creating a wheel..." runHook postBuild diff --git a/pkgs/development/interpreters/ruby/default.nix b/pkgs/development/interpreters/ruby/default.nix index 9179866fe9e3..9386eb75abdd 100644 --- a/pkgs/development/interpreters/ruby/default.nix +++ b/pkgs/development/interpreters/ruby/default.nix @@ -12,7 +12,7 @@ let opString = lib.optionalString; patchSet = import ./rvm-patchsets.nix { inherit fetchFromGitHub; }; config = import ./config.nix { inherit fetchFromSavannah; }; - rubygems = import ./rubygems { inherit stdenv lib fetchurl; }; + rubygems = import ./rubygems { inherit stdenv lib fetchurl fetchpatch; }; # Contains the ruby version heuristics rubyVersion = import ./ruby-version.nix { inherit lib; }; diff --git a/pkgs/development/interpreters/ruby/rubygems/default.nix b/pkgs/development/interpreters/ruby/rubygems/default.nix index db508caae310..cf2ca1b766ea 100644 --- a/pkgs/development/interpreters/ruby/rubygems/default.nix +++ b/pkgs/development/interpreters/ruby/rubygems/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchurl }: +{ stdenv, lib, fetchurl, fetchpatch }: stdenv.mkDerivation rec { name = "rubygems"; @@ -13,6 +13,12 @@ stdenv.mkDerivation rec { ./0001-add-post-extract-hook.patch ./0002-binaries-with-env-shebang.patch ./0003-gem-install-default-to-user.patch + # Ensure tmp directory are not left behind + # https://github.com/rubygems/rubygems/pull/4610 + (fetchpatch { + url = "https://github.com/rubygems/rubygems/commit/2c2ffde6e4a9f7f571d38af687034fb8507a833d.patch"; + sha256 = "sha256-bs2dXALKiJvMgk7lKjMx0NzGqlEqDYBBO35UrzNifms="; + }) ]; installPhase = '' diff --git a/pkgs/development/interpreters/tcl/generic.nix b/pkgs/development/interpreters/tcl/generic.nix index e665e8cfb1ea..beb95d51d2c1 100644 --- a/pkgs/development/interpreters/tcl/generic.nix +++ b/pkgs/development/interpreters/tcl/generic.nix @@ -1,55 +1,67 @@ -{ lib, stdenv +{ lib, stdenv, callPackage, makeSetupHook, makeWrapper # Version specific stuff , release, version, src , ... }: -stdenv.mkDerivation { - pname = "tcl"; - inherit version; +let + baseInterp = + stdenv.mkDerivation { + pname = "tcl"; + inherit version src; - inherit src; + outputs = [ "out" "man" ]; - outputs = [ "out" "man" ]; + setOutputFlags = false; - setOutputFlags = false; + preConfigure = '' + cd unix + ''; - preConfigure = '' - cd unix - ''; + configureFlags = [ + "--enable-threads" + # Note: using $out instead of $man to prevent a runtime dependency on $man. + "--mandir=${placeholder "out"}/share/man" + "--enable-man-symlinks" + # Don't install tzdata because NixOS already has a more up-to-date copy. + "--with-tzdata=no" + "tcl_cv_strtod_unbroken=ok" + ] ++ lib.optional stdenv.is64bit "--enable-64bit"; - configureFlags = [ - "--enable-threads" - # Note: using $out instead of $man to prevent a runtime dependency on $man. - "--mandir=${placeholder "out"}/share/man" - "--enable-man-symlinks" - # Don't install tzdata because NixOS already has a more up-to-date copy. - "--with-tzdata=no" - "tcl_cv_strtod_unbroken=ok" - ] ++ lib.optional stdenv.is64bit "--enable-64bit"; + enableParallelBuilding = true; - enableParallelBuilding = true; + postInstall = let + dllExtension = stdenv.hostPlatform.extensions.sharedLibrary; + in '' + make install-private-headers + ln -s $out/bin/tclsh${release} $out/bin/tclsh + ln -s $out/lib/libtcl${release}${dllExtension} $out/lib/libtcl${dllExtension} + ''; - postInstall = let - dllExtension = stdenv.hostPlatform.extensions.sharedLibrary; - in '' - make install-private-headers - ln -s $out/bin/tclsh${release} $out/bin/tclsh - ln -s $out/lib/libtcl${release}${dllExtension} $out/lib/libtcl${dllExtension} - ''; + meta = with lib; { + description = "The Tcl scripting language"; + homepage = "https://www.tcl.tk/"; + license = licenses.tcltk; + platforms = platforms.all; + maintainers = with maintainers; [ agbrooks ]; + }; - meta = with lib; { - description = "The Tcl scripting language"; - homepage = "https://www.tcl.tk/"; - license = licenses.tcltk; - platforms = platforms.all; - maintainers = with maintainers; [ vrthra ]; - }; + passthru = rec { + inherit release version; + libPrefix = "tcl${release}"; + libdir = "lib/${libPrefix}"; + tclPackageHook = callPackage ({}: makeSetupHook { + name = "tcl-package-hook"; + deps = [ makeWrapper ]; + } ./tcl-package-hook.sh) {}; + }; + }; - passthru = rec { - inherit release version; - libPrefix = "tcl${release}"; - libdir = "lib/${libPrefix}"; - }; -} + mkTclDerivation = callPackage ./mk-tcl-derivation.nix { tcl = baseInterp; }; + +in baseInterp.overrideAttrs (self: { + passthru = self.passthru // { + inherit mkTclDerivation; + }; +}) diff --git a/pkgs/development/interpreters/tcl/mk-tcl-derivation.nix b/pkgs/development/interpreters/tcl/mk-tcl-derivation.nix new file mode 100644 index 000000000000..4f3ffe6f995f --- /dev/null +++ b/pkgs/development/interpreters/tcl/mk-tcl-derivation.nix @@ -0,0 +1,69 @@ +# Generic builder for tcl packages/applications, generally based on mk-python-derivation.nix +{ tcl +, lib +, makeWrapper +, runCommand +, writeScript +}: + +{ buildInputs ? [] +, nativeBuildInputs ? [] +, propagatedBuildInputs ? [] +, checkInputs ? [] + +# true if we should skip the configuration phase altogether +, dontConfigure ? false + +# Extra flags passed to configure step +, configureFlags ? [] + +# Whether or not we should add common Tcl-related configure flags +, addTclConfigureFlags ? true + +, meta ? {} +, passthru ? {} +, doCheck ? true +, ... } @ attrs: + +let + inherit (tcl) stdenv; + inherit (lib) getBin optionalAttrs optionals; + + defaultTclPkgConfigureFlags = [ + "--with-tcl=${tcl}/lib" + "--with-tclinclude=${tcl}/include" + "--exec-prefix=\${out}" + ]; + + self = (stdenv.mkDerivation ((builtins.removeAttrs attrs [ + "addTclConfigureFlags" "checkPhase" "checkInputs" "doCheck" + ]) // { + + buildInputs = buildInputs ++ [ makeWrapper tcl.tclPackageHook ]; + nativeBuildInputs = nativeBuildInputs ++ [ tcl ]; + propagatedBuildInputs = propagatedBuildInputs ++ [ tcl ]; + + TCLSH = "${getBin tcl}/bin/tclsh"; + + # Run tests after install, at which point we've done all TCLLIBPATH setup + doCheck = false; + doInstallCheck = attrs.doCheck or ((attrs ? doInstallCheck) && attrs.doInstallCheck); + installCheckInputs = checkInputs ++ (optionals (attrs ? installCheckInputs) attrs.installCheckInputs); + + # Add typical values expected by TEA for configureFlags + configureFlags = + if (!dontConfigure && addTclConfigureFlags) + then (configureFlags ++ defaultTclPkgConfigureFlags) + else configureFlags; + + meta = { + platforms = tcl.meta.platforms; + } // meta; + + + } // optionalAttrs (attrs?checkPhase) { + installCheckPhase = attrs.checkPhase; + } + )); + +in lib.extendDerivation true passthru self diff --git a/pkgs/development/interpreters/tcl/tcl-package-hook.sh b/pkgs/development/interpreters/tcl/tcl-package-hook.sh new file mode 100644 index 000000000000..747783cb1c27 --- /dev/null +++ b/pkgs/development/interpreters/tcl/tcl-package-hook.sh @@ -0,0 +1,74 @@ +# This hook ensures that we do the following in post-fixup: +# * wrap any installed executables with a wrapper that configures TCLLIBPATH +# * write a setup hook that extends the TCLLIBPATH of any anti-dependencies + +# Add a directory to TCLLIBPATH, provided that it exists +_addToTclLibPath() { + local tclPkg="$1" + if [[ -z "$tclPkg" ]]; then + return + fi + + if [[ ! -d "$tclPkg" ]]; then + >&2 echo "can't add $tclPkg to TCLLIBPATH; that directory doesn't exist" + exit 1 + fi + + if [[ "$tclPkg" == *" "* ]]; then + tclPkg="{$tclPkg}" + fi + + if [[ -z "${TCLLIBPATH-}" ]]; then + export TCLLIBPATH="$tclPkg" + else + if [[ "$TCLLIBPATH" != *"$tclPkg "* && "$TCLLIBPATH" != *"$tclPkg" ]]; then + export TCLLIBPATH="${TCLLIBPATH} $tclPkg" + fi + fi +} + +# Locate any directory containing an installed pkgIndex file +findInstalledTclPkgs() { + local -r newLibDir="${!outputLib}/lib" + if [[ ! -d "$newLibDir" ]]; then + >&2 echo "Assuming no loadable tcl packages installed ($newLibDir does not exist)" + return + fi + echo "$(find "$newLibDir" -name pkgIndex.tcl -exec dirname {} \;)" +} + +# Wrap any freshly-installed binaries and set up their TCLLIBPATH +wrapTclBins() { + if [[ -z "${TCLLIBPATH-}" ]]; then + echo "skipping automatic Tcl binary wrapping (nothing to do)" + return + fi + + local -r tclBinsDir="${!outputBin}/bin" + if [[ ! -d "$tclBinsDir" ]]; then + echo "No outputBin found, not using any TCLLIBPATH wrapper" + return + fi + + find "$tclBinsDir" -type f -executable -print | + while read -r someBin; do + echo "Adding TCLLIBPATH wrapper for $someBin" + wrapProgram "$someBin" --prefix TCLLIBPATH ' ' "$TCLLIBPATH" + done +} + +# Generate hook to adjust TCLLIBPATH in anti-dependencies +writeTclLibPathHook() { + local -r hookPath="${!outputLib}/nix-support/setup-hook" + mkdir -p "$(dirname "$hookPath")" + + typeset -f _addToTclLibPath >> "$hookPath" + local -r tclPkgs=$(findInstalledTclPkgs) + while IFS= read -r tclPkg; do + echo "_addToTclLibPath \"$tclPkg\"" >> "$hookPath" + _addToTclLibPath "$tclPkg" true + done <<< "$tclPkgs" +} + +postFixupHooks+=(writeTclLibPathHook) +postFixupHooks+=(wrapTclBins) diff --git a/pkgs/development/interpreters/tclreadline/default.nix b/pkgs/development/interpreters/tclreadline/default.nix index 44d2745dac8b..de671bab5739 100644 --- a/pkgs/development/interpreters/tclreadline/default.nix +++ b/pkgs/development/interpreters/tclreadline/default.nix @@ -8,7 +8,7 @@ , tk }: -stdenv.mkDerivation rec { +tcl.mkTclDerivation rec { pname = "tclreadline"; version = "2.3.8"; @@ -26,7 +26,6 @@ stdenv.mkDerivation rec { ]; buildInputs = [ readline - tcl tk ]; @@ -35,7 +34,6 @@ stdenv.mkDerivation rec { configureFlags = [ "--enable-tclshrl" "--enable-wishrl" - "--with-tcl=${tcl}/lib" "--with-tk=${tk}/lib" "--with-readline-includes=${readline.dev}/include/readline" "--with-libtool=${libtool}" diff --git a/pkgs/development/libraries/atk/default.nix b/pkgs/development/libraries/atk/default.nix index 7961211dc63e..38c557316982 100644 --- a/pkgs/development/libraries/atk/default.nix +++ b/pkgs/development/libraries/atk/default.nix @@ -1,5 +1,6 @@ { lib, stdenv, fetchurl, meson, ninja, gettext, pkg-config, glib , fixDarwinDylibNames, gobject-introspection, gnome +, withIntrospection ? stdenv.buildPlatform == stdenv.hostPlatform }: let @@ -17,8 +18,9 @@ stdenv.mkDerivation rec { outputs = [ "out" "dev" ]; - nativeBuildInputs = [ meson ninja pkg-config gettext gobject-introspection glib ] - ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames; + nativeBuildInputs = [ meson ninja pkg-config gettext glib ] + ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames + ++ lib.optional withIntrospection gobject-introspection; propagatedBuildInputs = [ # Required by atk.pc @@ -31,6 +33,10 @@ stdenv.mkDerivation rec { ./fix_pc.patch ]; + mesonFlags = [ + "-Dintrospection=${lib.boolToString withIntrospection}" + ]; + doCheck = true; passthru = { diff --git a/pkgs/development/libraries/bwidget/default.nix b/pkgs/development/libraries/bwidget/default.nix index f3f09497a660..34f0e8b5b495 100644 --- a/pkgs/development/libraries/bwidget/default.nix +++ b/pkgs/development/libraries/bwidget/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv, fetchurl, tcl }: +{ lib, fetchurl, tcl, tk }: -stdenv.mkDerivation rec { +tcl.mkTclDerivation rec { pname = "bwidget"; version = "1.9.14"; @@ -10,21 +10,17 @@ stdenv.mkDerivation rec { }; dontBuild = true; + propagatedBuildInputs = [ tk ]; installPhase = '' - mkdir -p "$out/lib/${passthru.libPrefix}" - cp -R *.tcl lang images "$out/lib/${passthru.libPrefix}" + mkdir -p "$out/lib/bwidget${version}" + cp -R *.tcl lang images "$out/lib/bwidget${version}" ''; - passthru = { - libPrefix = "bwidget${version}"; - }; - - buildInputs = [ tcl ]; - meta = { homepage = "https://sourceforge.net/projects/tcllib"; description = "High-level widget set for Tcl/Tk"; + maintainers = with lib.maintainers; [ agbrooks ]; license = lib.licenses.tcltk; platforms = lib.platforms.linux; }; diff --git a/pkgs/development/libraries/dav1d/default.nix b/pkgs/development/libraries/dav1d/default.nix index 51df5a9254a5..fe6926fe809a 100644 --- a/pkgs/development/libraries/dav1d/default.nix +++ b/pkgs/development/libraries/dav1d/default.nix @@ -10,14 +10,14 @@ assert useVulkan -> withExamples; stdenv.mkDerivation rec { pname = "dav1d"; - version = "0.8.2"; + version = "0.9.0"; src = fetchFromGitLab { domain = "code.videolan.org"; owner = "videolan"; repo = pname; rev = version; - sha256 = "0plmnxpz66yv3nqv1kgbyyfnwfqi9dqs0zbsdj488i6464a1m6si"; + sha256 = "0ki3wlyaqr80gl1srbbd18dd5bs1sl9icxym8ar62abpvgzxl5yk"; }; nativeBuildInputs = [ meson ninja nasm pkg-config ]; diff --git a/pkgs/development/libraries/dbus-glib/default.nix b/pkgs/development/libraries/dbus-glib/default.nix index f56a1eaac245..0bab4eb1949e 100644 --- a/pkgs/development/libraries/dbus-glib/default.nix +++ b/pkgs/development/libraries/dbus-glib/default.nix @@ -3,11 +3,11 @@ }: stdenv.mkDerivation rec { - name = "dbus-glib-0.110"; + name = "dbus-glib-0.112"; src = fetchurl { url = "${meta.homepage}/releases/dbus-glib/${name}.tar.gz"; - sha256 = "09g8swvc95bk1z6j8sw463p2v0dqmgm2zjfndf7i8sbcyq67dr3w"; + sha256 = "sha256-fVUNzN/NKG4ziVUBgp7Zce62XGFOc6rbSgiu73GbFDo="; }; outputs = [ "out" "dev" "devdoc" ]; @@ -29,7 +29,7 @@ stdenv.mkDerivation rec { meta = { homepage = "https://dbus.freedesktop.org"; - license = with lib.licenses; [ afl21 gpl2 ]; + license = with lib.licenses; [ afl21 gpl2Plus ]; description = "Obsolete glib bindings for D-Bus lightweight IPC mechanism"; maintainers = [ ]; platforms = lib.platforms.unix; diff --git a/pkgs/development/libraries/incrtcl/default.nix b/pkgs/development/libraries/incrtcl/default.nix index 67ae5623db12..dae01961a10c 100644 --- a/pkgs/development/libraries/incrtcl/default.nix +++ b/pkgs/development/libraries/incrtcl/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchurl, writeText, tcl }: -stdenv.mkDerivation rec { +tcl.mkTclDerivation rec { pname = "incrtcl"; version = "4.2.0"; @@ -9,18 +9,12 @@ stdenv.mkDerivation rec { sha256 = "0w28v0zaraxcq1s9pa6cihqqwqvvwfgz275lks7w4gl7hxjxmasw"; }; - buildInputs = [ tcl ]; - configureFlags = [ "--with-tcl=${tcl}/lib" ]; enableParallelBuilding = true; patchPhase = '' substituteInPlace configure --replace "\''${TCL_SRC_DIR}/generic" "${tcl}/include" ''; - preConfigure = '' - configureFlags="--exec_prefix=$prefix $configureFlags" - ''; - postInstall = '' rmdir $out/bin mv $out/lib/itcl${version}/* $out/lib diff --git a/pkgs/development/libraries/itktcl/default.nix b/pkgs/development/libraries/itktcl/default.nix index 570190a43c1e..66039c61b4d5 100644 --- a/pkgs/development/libraries/itktcl/default.nix +++ b/pkgs/development/libraries/itktcl/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchurl, tcl, tk, incrtcl }: -stdenv.mkDerivation rec { +tcl.mkTclDerivation rec { pname = "itk-tcl"; version = "4.1.0"; @@ -9,11 +9,10 @@ stdenv.mkDerivation rec { sha256 = "1iy964jfgsfnc1agk1w6bbm44x18ily8d4wmr7cc9z9f4acn2r6s"; }; - buildInputs = [ tcl tk incrtcl ]; + buildInputs = [ tk incrtcl ]; enableParallelBuilding = true; configureFlags = [ - "--with-tcl=${tcl}/lib" "--with-tk=${tk}/lib" "--with-itcl=${incrtcl}/lib" "--with-tkinclude=${tk.dev}/include" diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix index b7fd94f9f123..ca90750b8c24 100644 --- a/pkgs/development/libraries/libdrm/default.nix +++ b/pkgs/development/libraries/libdrm/default.nix @@ -5,11 +5,11 @@ stdenv.mkDerivation rec { pname = "libdrm"; - version = "2.4.105"; + version = "2.4.106"; src = fetchurl { url = "https://dri.freedesktop.org/${pname}/${pname}-${version}.tar.xz"; - sha256 = "0iiamypwdfiz250ki120nh598r48yyacmnndb4mkximdgi5h478x"; + sha256 = "1m3vwpabjg3az84vmyxi96jyd7rrqm6qkhk1gq41w5wv89aarn4j"; }; outputs = [ "out" "dev" "bin" ]; diff --git a/pkgs/development/libraries/libgcrypt/default.nix b/pkgs/development/libraries/libgcrypt/default.nix index 6b761d2170c3..506b1a5b25fb 100644 --- a/pkgs/development/libraries/libgcrypt/default.nix +++ b/pkgs/development/libraries/libgcrypt/default.nix @@ -4,11 +4,11 @@ assert enableCapabilities -> stdenv.isLinux; stdenv.mkDerivation rec { pname = "libgcrypt"; - version = "1.9.2"; + version = "1.9.3"; src = fetchurl { url = "mirror://gnupg/libgcrypt/${pname}-${version}.tar.bz2"; - sha256 = "sha256-ssENCRUTsnHkcXcnRgex/7o9lbGIu/qHl/lIrskFPFo="; + sha256 = "sha256-l+vk+U4vfjW3UhlM4VoPPGYyTg/2ryZlm7+1/y7DKP0="; }; outputs = [ "out" "dev" "info" ]; @@ -58,6 +58,7 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://www.gnu.org/software/libgcrypt/"; + changelog = "https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=blob;f=NEWS;hb=refs/tags/${pname}-${version}"; description = "General-purpose cryptographic library"; license = licenses.lgpl2Plus; platforms = platforms.all; diff --git a/pkgs/development/libraries/libjpeg-turbo/default.nix b/pkgs/development/libraries/libjpeg-turbo/default.nix index f2d4e00d1aad..bca6f50bde8c 100644 --- a/pkgs/development/libraries/libjpeg-turbo/default.nix +++ b/pkgs/development/libraries/libjpeg-turbo/default.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation rec { pname = "libjpeg-turbo"; - version = "2.0.6"; + version = "2.1.0"; src = fetchFromGitHub { owner = "libjpeg-turbo"; repo = "libjpeg-turbo"; rev = version; - sha256 = "0njdxfmyk8smj8bbd6fs3lxjaq3lybivwgg16gpnbiyl984dpi9b"; + sha256 = "sha256-Ma3Q/zMJPjsQmoaYJtVbHJOx65AfGLWJYi2iRFm3l5s="; }; # This is needed by freeimage diff --git a/pkgs/development/libraries/libksba/default.nix b/pkgs/development/libraries/libksba/default.nix index e623aa0d1119..c8998446c7da 100644 --- a/pkgs/development/libraries/libksba/default.nix +++ b/pkgs/development/libraries/libksba/default.nix @@ -1,11 +1,11 @@ { buildPackages, lib, stdenv, fetchurl, gettext, libgpgerror }: stdenv.mkDerivation rec { - name = "libksba-1.5.0"; + name = "libksba-1.5.1"; src = fetchurl { url = "mirror://gnupg/libksba/${name}.tar.bz2"; - sha256 = "1fm0mf3wq9fmyi1rmc1vk2fafn6liiw2mgxml3g7ybbb44lz2jmf"; + sha256 = "sha256-sPTGXk5EfZojSfa4wOd6KL6VMeRUi6AsVF0fRtx7+SE="; }; outputs = [ "out" "dev" "info" ]; diff --git a/pkgs/development/libraries/libndctl/default.nix b/pkgs/development/libraries/libndctl/default.nix index 91a2c378c03c..6e82191e7558 100644 --- a/pkgs/development/libraries/libndctl/default.nix +++ b/pkgs/development/libraries/libndctl/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, fetchFromGitHub, autoreconfHook -, asciidoctor, pkg-config, xmlto, docbook_xsl, docbook_xml_dtd_45, libxslt +, asciidoc, pkg-config, xmlto, docbook_xsl, docbook_xml_dtd_45, libxslt , json_c, kmod, which, util-linux, udev, keyutils }: @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { outputs = [ "out" "lib" "man" "dev" ]; nativeBuildInputs = - [ autoreconfHook asciidoctor pkg-config xmlto docbook_xml_dtd_45 docbook_xsl libxslt + [ autoreconfHook asciidoc pkg-config xmlto docbook_xml_dtd_45 docbook_xsl libxslt which ]; @@ -28,6 +28,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--without-bash" "--without-systemd" + "--disable-asciidoctor" # depends on ruby 2.7, use asciidoc instead ]; patchPhase = '' diff --git a/pkgs/development/libraries/libqmi/default.nix b/pkgs/development/libraries/libqmi/default.nix index 8a3179b03427..a812a2d78489 100644 --- a/pkgs/development/libraries/libqmi/default.nix +++ b/pkgs/development/libraries/libqmi/default.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation rec { pname = "libqmi"; - version = "1.28.2"; + version = "1.28.4"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "https://www.freedesktop.org/software/libqmi/${pname}-${version}.tar.xz"; - sha256 = "jIw+5xmHTSUpvOmzWwKP5DWzbwA5eaNg060JOESdt4M="; + sha256 = "sha256-OxTNKrUiGnrbs5/tFu9pdTjqHHkwiCGtLRm1BeHarqA="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/libsass/default.nix b/pkgs/development/libraries/libsass/default.nix index f4caa22b3229..9b61ce65d453 100644 --- a/pkgs/development/libraries/libsass/default.nix +++ b/pkgs/development/libraries/libsass/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libsass"; - version = "3.6.4"; + version = "3.6.5"; src = fetchFromGitHub { owner = "sass"; repo = pname; rev = version; - sha256 = "074kvacdan85h4qrvsk97575ys9xgkc044gplz3m6vn4a8pcl2rn"; + sha256 = "1cxj6r85d5f3qxdwzxrmkx8z875hig4cr8zsi30w6vj23cyds3l2"; # Remove unicode file names which leads to different checksums on HFS+ # vs. other filesystems because of unicode normalisation. extraPostFetch = '' diff --git a/pkgs/development/libraries/libwacom/default.nix b/pkgs/development/libraries/libwacom/default.nix index c17b8be592aa..5bb6445ac38f 100644 --- a/pkgs/development/libraries/libwacom/default.nix +++ b/pkgs/development/libraries/libwacom/default.nix @@ -1,8 +1,8 @@ -{ lib, stdenv, fetchFromGitHub, meson, ninja, glib, pkg-config, udev, libgudev, doxygen }: +{ lib, stdenv, fetchFromGitHub, meson, ninja, glib, pkg-config, udev, libgudev, doxygen, python3 }: stdenv.mkDerivation rec { pname = "libwacom"; - version = "1.9"; + version = "1.10"; outputs = [ "out" "dev" ]; @@ -10,10 +10,10 @@ stdenv.mkDerivation rec { owner = "linuxwacom"; repo = "libwacom"; rev = "libwacom-${version}"; - sha256 = "sha256-o1xCSrWKPzz1GePEVB1jgx2cGzRtw0I6c4wful08Vx4="; + sha256 = "sha256-Q7b54AMAxdIzN7TUuhIdlrXaVtj2szV4n3y9bAE0LsU="; }; - nativeBuildInputs = [ pkg-config meson ninja doxygen ]; + nativeBuildInputs = [ pkg-config meson ninja doxygen python3 ]; mesonFlags = [ "-Dtests=disabled" ]; diff --git a/pkgs/development/libraries/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix index ca3cbc4a1884..1b58b4539e46 100644 --- a/pkgs/development/libraries/libxml2/default.nix +++ b/pkgs/development/libraries/libxml2/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchurl +{ stdenv, lib, fetchurl, fetchpatch , zlib, xz, libintl, python, gettext, ncurses, findXMLCatalogs , pythonSupport ? enableShared && stdenv.buildPlatform == stdenv.hostPlatform , icuSupport ? false, icu ? null @@ -27,6 +27,13 @@ stdenv.mkDerivation rec { # https://github.com/NixOS/nixpkgs/pull/63174 # https://github.com/NixOS/nixpkgs/pull/72342 ./utf8-xmlErrorFuncHandler.patch + + # Work around lxml API misuse. + # https://gitlab.gnome.org/GNOME/libxml2/issues/255 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/libxml2/commit/85b1792e37b131e7a51af98a37f92472e8de5f3f.patch"; + sha256 = "epqlNs2S0Zczox3KyCB6R2aJKh87lXydlZ0x6tLHweE="; + }) ]; outputs = [ "bin" "dev" "out" "man" "doc" ] diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index 2b94f9c3bb50..6c44441dd92d 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -5,7 +5,6 @@ , llvmPackages, libffi, libomxil-bellagio, libva-minimal , libelf, libvdpau , libglvnd -, enableRadv ? true , galliumDrivers ? ["auto"] , driDrivers ? ["auto"] , vulkanDrivers ? ["auto"] @@ -32,7 +31,7 @@ with lib; let # Release calendar: https://www.mesa3d.org/release-calendar.html # Release frequency: https://www.mesa3d.org/releasing.html#schedule - version = "21.0.1"; + version = "21.0.3"; branch = versions.major version; self = stdenv.mkDerivation { @@ -46,7 +45,7 @@ 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 = "1fqj2xhhd1ary0pfg31jq6fqcnd6qgyrw1445nmz554k8n2ck7rp"; + sha256 = "0awiyvicvcn3b18x0vx5ik3ly0k3k51ivz2ljj8pnx6ms95nyp2n"; }; prePatch = "patchShebangs ."; diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix index f464a755f6e4..ccb37d295bff 100644 --- a/pkgs/development/libraries/science/math/openblas/default.nix +++ b/pkgs/development/libraries/science/math/openblas/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, fetchpatch, perl, which +{ lib, stdenv, fetchFromGitHub, perl, which # Most packages depending on openblas expect integer width to match # pointer width, but some expect to use 32-bit integers always # (for compatibility with reference BLAS). @@ -116,7 +116,7 @@ let in stdenv.mkDerivation rec { pname = "openblas"; - version = "0.3.13"; + version = "0.3.15"; outputs = [ "out" "dev" ]; @@ -124,19 +124,9 @@ stdenv.mkDerivation rec { owner = "xianyi"; repo = "OpenBLAS"; rev = "v${version}"; - sha256 = "14jxh0v3jfbw4mfjx4mcz4dd51lyq7pqvh9k8dg94539ypzjr2lj"; + sha256 = "1qjr02cqncv20abdp1yzr55n7smhx6h9chqvb0xbp18byynvj87w"; }; - # apply https://github.com/xianyi/OpenBLAS/pull/3060 to fix a crash on arm - # remove this when updating to 0.3.14 or newer - patches = [ - (fetchpatch { - name = "label-get_cpu_ftr-as-volatile.patch"; - url = "https://github.com/xianyi/OpenBLAS/commit/6fe0f1fab9d6a7f46d71d37ebb210fbf56924fbc.diff"; - sha256 = "06gwh73k4sas1ap2fi3jvpifbjkys2vhmnbj4mzrsvj279ljsfdk"; - }) - ]; - inherit blas64; # Some hardening features are disabled due to sporadic failures in diff --git a/pkgs/development/libraries/tcllib/default.nix b/pkgs/development/libraries/tcllib/default.nix index 4cab15ca5c22..90c4528a6454 100644 --- a/pkgs/development/libraries/tcllib/default.nix +++ b/pkgs/development/libraries/tcllib/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv, fetchurl, tcl }: +{ lib, fetchurl, tcl }: -stdenv.mkDerivation rec { +tcl.mkTclDerivation rec { pname = "tcllib"; version = "1.20"; @@ -9,12 +9,6 @@ stdenv.mkDerivation rec { sha256 = "0wax281h6ksz974a5qpfgf9y34lmlpd8i87lkm1w94ybbd3rgc73"; }; - passthru = { - libPrefix = "tcllib${version}"; - }; - - buildInputs = [ tcl ]; - meta = { homepage = "https://sourceforge.net/projects/tcllib/"; description = "Tcl-only library of standard routines for Tcl"; diff --git a/pkgs/development/libraries/tcltls/default.nix b/pkgs/development/libraries/tcltls/default.nix index e88358bbce0a..8883ad5dd440 100644 --- a/pkgs/development/libraries/tcltls/default.nix +++ b/pkgs/development/libraries/tcltls/default.nix @@ -1,33 +1,24 @@ -{ lib, stdenv, fetchurl, tcl, openssl }: +{ lib, fetchurl, tcl, openssl }: -stdenv.mkDerivation rec { +tcl.mkTclDerivation rec { pname = "tcltls"; - version = "1.6.7"; + version = "1.7.21"; src = fetchurl { - url = "mirror://sourceforge/tls/tls${version}-src.tar.gz"; - sha256 = "1f53sfcnrridjl5ayrq1xrqkahs8khf8c3d0m2brndbhahzdw6ai"; + url = "https://core.tcl-lang.org/tcltls/uv/tcltls-${version}.tar.gz"; + sha256 = "0xf1rfsnn4k9j1bd2a1p8ir0xr4a3phgr9lcgbazh4084l2y8sl0"; }; - buildInputs = [ tcl openssl ]; + buildInputs = [ openssl ]; configureFlags = [ - "--with-tcl=${tcl}/lib" - "--with-tclinclude=${tcl}/include" "--with-ssl-dir=${openssl.dev}" ]; - preConfigure = '' - configureFlags="--exec_prefix=$prefix $configureFlags" - ''; - - passthru = { - libPrefix = "tls${version}"; - }; - meta = { - homepage = "http://tls.sourceforge.net/"; + homepage = "https://core.tcl-lang.org/tcltls/index"; description = "An OpenSSL / RSA-bsafe Tcl extension"; + maintainers = [ lib.maintainers.agbrooks ]; license = lib.licenses.tcltk; platforms = lib.platforms.unix; }; diff --git a/pkgs/development/libraries/tclx/default.nix b/pkgs/development/libraries/tclx/default.nix index 85eae730575f..a8cf2a44fab6 100644 --- a/pkgs/development/libraries/tclx/default.nix +++ b/pkgs/development/libraries/tclx/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv, fetchurl, tcl }: +{ lib, fetchurl, tcl }: -stdenv.mkDerivation rec { +tcl.mkTclDerivation rec { name = "tclx-${version}.${patch}"; version = "8.4"; patch = "1"; @@ -10,13 +10,10 @@ stdenv.mkDerivation rec { sha256 = "1v2qwzzidz0is58fd1p7wfdbscxm3ip2wlbqkj5jdhf6drh1zd59"; }; - passthru = { - libPrefix = ""; # Using tclx${version} did not work - }; - - buildInputs = [ tcl ]; - - configureFlags = [ "--with-tcl=${tcl}/lib" "--exec-prefix=\${prefix}" ]; + # required in order for tclx to properly detect tclx.tcl at runtime + postInstall = '' + ln -s $prefix/lib/tclx${version} $prefix/lib/tclx${version}/tclx${version} + ''; meta = { homepage = "http://tclx.sourceforge.net/"; diff --git a/pkgs/development/libraries/tix/default.nix b/pkgs/development/libraries/tix/default.nix index e0f91330efca..c42847ef5335 100644 --- a/pkgs/development/libraries/tix/default.nix +++ b/pkgs/development/libraries/tix/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchurl, tcl, tk, fetchpatch } : -stdenv.mkDerivation { +tcl.mkTclDerivation { version = "8.4.3"; pname = "tix"; src = fetchurl { @@ -20,7 +20,7 @@ stdenv.mkDerivation { sha256 = "1jaz0l22xj7x1k4rb9ia6i1psnbwk4pblgq4gfvya7gg7fbb7r36"; }) ; - buildInputs = [ tcl tk ]; + buildInputs = [ tk ]; # the configure script expects to find the location of the sources of # tcl and tk in {tcl,tk}Config.sh # In fact, it only needs some private headers. We copy them in @@ -34,8 +34,8 @@ stdenv.mkDerivation { ln -s $i private_headers/generic; done; ''; + addTclConfigureFlags = false; configureFlags = [ - "--with-tclinclude=${tcl}/include" "--with-tclconfig=." "--with-tkinclude=${tk.dev}/include" "--with-tkconfig=." @@ -52,4 +52,3 @@ stdenv.mkDerivation { ]; }; } - diff --git a/pkgs/development/libraries/tk/generic.nix b/pkgs/development/libraries/tk/generic.nix index ecb3840b2de3..b829d846be56 100644 --- a/pkgs/development/libraries/tk/generic.nix +++ b/pkgs/development/libraries/tk/generic.nix @@ -2,7 +2,7 @@ , enableAqua ? stdenv.isDarwin, darwin , ... }: -stdenv.mkDerivation { +tcl.mkTclDerivation { name = "tk-${tcl.version}"; inherit src patches; @@ -33,14 +33,13 @@ stdenv.mkDerivation { configureFlags = [ "--enable-threads" - "--with-tcl=${tcl}/lib" ] ++ lib.optional stdenv.is64bit "--enable-64bit" ++ lib.optional enableAqua "--enable-aqua"; nativeBuildInputs = [ pkg-config ]; buildInputs = lib.optional enableAqua (with darwin.apple_sdk.frameworks; [ Cocoa ]); - propagatedBuildInputs = [ tcl libXft ]; + propagatedBuildInputs = [ libXft ]; doCheck = false; # fails. can't find itself diff --git a/pkgs/development/libraries/wayland/protocols.nix b/pkgs/development/libraries/wayland/protocols.nix index 8a2b05aa4dff..7f3ec5f3d597 100644 --- a/pkgs/development/libraries/wayland/protocols.nix +++ b/pkgs/development/libraries/wayland/protocols.nix @@ -1,15 +1,29 @@ -{ lib, stdenv, fetchurl, wayland-scanner }: +{ lib, stdenv, fetchurl +, pkg-config +, meson, ninja, wayland-scanner +, python3, wayland +}: stdenv.mkDerivation rec { pname = "wayland-protocols"; version = "1.21"; + doCheck = stdenv.hostPlatform == stdenv.buildPlatform; + src = fetchurl { url = "https://wayland.freedesktop.org/releases/${pname}-${version}.tar.xz"; sha256 = "1rfdlkzz67qsb955zqb8jbw3m22pl6ppvrvfq8bqiqcb5n24b6dr"; }; - nativeBuildInputs = [ wayland-scanner ]; + postPatch = lib.optionalString doCheck '' + patchShebangs tests/ + ''; + + depsBuildBuild = [ pkg-config ]; + nativeBuildInputs = [ meson ninja wayland-scanner ]; + checkInputs = [ python3 wayland ]; + + mesonFlags = [ "-Dtests=${lib.boolToString doCheck}" ]; meta = { description = "Wayland protocol extensions"; diff --git a/pkgs/development/python-modules/importlib-metadata/default.nix b/pkgs/development/python-modules/importlib-metadata/default.nix index 4149de3f43ae..d430c4cf29c2 100644 --- a/pkgs/development/python-modules/importlib-metadata/default.nix +++ b/pkgs/development/python-modules/importlib-metadata/default.nix @@ -10,13 +10,13 @@ buildPythonPackage rec { pname = "importlib-metadata"; - version = "3.7.3"; + version = "4.0.1"; disabled = pythonOlder "3.6"; src = fetchPypi { pname = "importlib_metadata"; inherit version; - sha256 = "742add720a20d0467df2f444ae41704000f50e1234f46174b51f9c6031a1bd71"; + sha256 = "sha256-jFARluSfud9d9DgzvbHkMo9khHdj7IpQcDFItzeE1YE="; }; nativeBuildInputs = [ setuptools-scm ]; diff --git a/pkgs/development/python-modules/marshmallow-sqlalchemy/default.nix b/pkgs/development/python-modules/marshmallow-sqlalchemy/default.nix index ba10c89e1405..a5483245d663 100644 --- a/pkgs/development/python-modules/marshmallow-sqlalchemy/default.nix +++ b/pkgs/development/python-modules/marshmallow-sqlalchemy/default.nix @@ -1,5 +1,6 @@ { lib , buildPythonPackage +, pythonOlder , fetchPypi , marshmallow , sqlalchemy @@ -9,11 +10,12 @@ buildPythonPackage rec { pname = "marshmallow-sqlalchemy"; - version = "0.24.2"; + version = "0.25.0"; + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "ee3ead3b83de6608c6850ff60515691b0dc556ca226680f8a82b9f785cdb71b1"; + sha256 = "0i39ckrixh1w9fmkm0wl868gvza72j5la0x6dd0cij9shf1iyjgi"; }; propagatedBuildInputs = [ @@ -21,6 +23,10 @@ buildPythonPackage rec { sqlalchemy ]; + pythonImportsCheck = [ + "marshmallow_sqlalchemy" + ]; + checkInputs = [ pytest-lazy-fixture pytestCheckHook @@ -28,7 +34,7 @@ buildPythonPackage rec { meta = with lib; { homepage = "https://github.com/marshmallow-code/marshmallow-sqlalchemy"; - description = "SQLAlchemy integration with marshmallow "; + description = "SQLAlchemy integration with marshmallow"; license = licenses.mit; }; diff --git a/pkgs/development/python-modules/marshmallow/default.nix b/pkgs/development/python-modules/marshmallow/default.nix index a7ca14beb942..0deeb0e53866 100644 --- a/pkgs/development/python-modules/marshmallow/default.nix +++ b/pkgs/development/python-modules/marshmallow/default.nix @@ -1,27 +1,40 @@ -{ lib, buildPythonPackage, fetchPypi, - dateutil, simplejson, isPy27 +{ lib +, buildPythonPackage +, pythonOlder +, fetchFromGitHub +, pytestCheckHook +, pytz +, simplejson }: buildPythonPackage rec { pname = "marshmallow"; - version = "3.10.0"; - disabled = isPy27; + version = "3.11.1"; + disabled = pythonOlder "3.5"; - meta = { - homepage = "https://github.com/marshmallow-code/marshmallow"; + src = fetchFromGitHub { + owner = "marshmallow-code"; + repo = pname; + rev = version; + sha256 = "1ypm142y3giaqydc7fkigm9r057yp2sd1ng5zr2x3w3wbbj5yfm6"; + }; + + pythonImportsCheck = [ + "marshmallow" + ]; + + checkInputs = [ + pytestCheckHook + pytz + simplejson + ]; + + meta = with lib; { description = '' A lightweight library for converting complex objects to and from simple Python datatypes. ''; - license = lib.licenses.mit; + homepage = "https://github.com/marshmallow-code/marshmallow"; + license = licenses.mit; }; - - src = fetchPypi { - inherit pname version; - sha256 = "4ab2fdb7f36eb61c3665da67a7ce281c8900db08d72ba6bf0e695828253581f7"; - }; - - propagatedBuildInputs = [ dateutil simplejson ]; - - doCheck = false; } diff --git a/pkgs/development/python-modules/sqlalchemy/default.nix b/pkgs/development/python-modules/sqlalchemy/default.nix index 5964e382084f..0e03b17963ee 100644 --- a/pkgs/development/python-modules/sqlalchemy/default.nix +++ b/pkgs/development/python-modules/sqlalchemy/default.nix @@ -1,4 +1,11 @@ -{ stdenv, lib, fetchPypi, buildPythonPackage, isPy3k, isPy35, fetchpatch +{ stdenv +, lib +, fetchPypi +, buildPythonPackage +, isPy3k +, pythonOlder +, greenlet +, importlib-metadata , mock , pysqlite ? null , pytestCheckHook @@ -7,19 +14,17 @@ buildPythonPackage rec { pname = "SQLAlchemy"; - version = "1.3.23"; + version = "1.4.15"; src = fetchPypi { inherit pname version; - sha256 = "6fca33672578666f657c131552c4ef8979c1606e494f78cd5199742dfb26918b"; + sha256 = "1rj9h3mcxrgh5q8qvz7m39diyil27l5mldr49mgz6xfibk3h1w8g"; }; - patches = [ - # fix test_pyodbc_extra_connect_azure test failure - (fetchpatch { - url = "https://github.com/sqlalchemy/sqlalchemy/commit/7293b3dc0e9eb3dae84ffd831494b85355df8e73.patch"; - sha256 = "1z61lzxamz74771ddlqmbxba1dcr77f016vqfcmb44dxb228w2db"; - }) + propagatedBuildInputs = [ + greenlet + ] ++ lib.optionals (pythonOlder "3.8") [ + importlib-metadata ]; checkInputs = [ @@ -28,7 +33,9 @@ buildPythonPackage rec { mock ] ++ lib.optional (!isPy3k) pysqlite; - pytestFlagsArray = [ "-n auto" ]; + pytestFlagsArray = [ + "-n auto" + ]; postInstall = '' sed -e 's:--max-worker-restart=5::g' -i setup.cfg @@ -37,8 +44,10 @@ buildPythonPackage rec { dontUseSetuptoolsCheck = true; # disable mem-usage tests on mac, has trouble serializing pickle files - disabledTests = lib.optionals isPy35 [ "exception_persistent_flush_py3k "] - ++ lib.optionals stdenv.isDarwin [ "MemUsageWBackendTest" "MemUsageTest" ]; + disabledTests = lib.optionals stdenv.isDarwin [ + "MemUsageWBackendTest" + "MemUsageTest" + ]; meta = with lib; { homepage = "http://www.sqlalchemy.org/"; diff --git a/pkgs/development/tools/just/default.nix b/pkgs/development/tools/just/default.nix index 247d055f5786..a93807c939f2 100644 --- a/pkgs/development/tools/just/default.nix +++ b/pkgs/development/tools/just/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "just"; - version = "0.9.1"; + version = "0.9.3"; src = fetchFromGitHub { owner = "casey"; repo = pname; rev = "v${version}"; - sha256 = "sha256-5W/5HgXjDmr2JGYGy5FPmCNIuAagmzEHnskDUg+FzjY="; + sha256 = "sha256-rcHS0QchUzgcSVIw01x0p1lU/q2CqC5QAwLSFuBTPtE="; }; - cargoSha256 = "sha256-4lLWtj/MLaSZU7nC4gVn7TyhaLtO1FUSinQejocpiuY="; + cargoSha256 = "sha256-LZL95AFzbWhdWPGjJr7lZORtVOUdz8lno0T8xSkblHU="; nativeBuildInputs = [ installShellFiles ]; buildInputs = lib.optionals stdenv.isDarwin [ libiconv ]; diff --git a/pkgs/development/tools/rust/cargo-c/default.nix b/pkgs/development/tools/rust/cargo-c/default.nix index 9458cb030a7c..71394c098907 100644 --- a/pkgs/development/tools/rust/cargo-c/default.nix +++ b/pkgs/development/tools/rust/cargo-c/default.nix @@ -5,7 +5,7 @@ rustPlatform.buildRustPackage rec { pname = "cargo-c"; - version = "0.8.0"; + version = "0.8.1"; src = stdenv.mkDerivation rec { name = "${pname}-source-${version}"; @@ -14,11 +14,11 @@ rustPlatform.buildRustPackage rec { owner = "lu-zero"; repo = pname; rev = "v${version}"; - sha256 = "1rvbikhbqsfa2sh79kapqg4yz19r1yhqfykl6cf4yjg6vawkwfw1"; + sha256 = "0fd0xql5cbqgmir2z3ah91iasaq9133wmi5bnhiy3dv7drcqv4rc"; }; cargoLock = fetchurl { url = "https://github.com/lu-zero/${pname}/releases/download/v${version}/Cargo.lock"; - sha256 = "17cdac8ym59jwjxs3k4isazknhrlr6lw0j0r76n5xf0dd7apfgcs"; + sha256 = "1xlh3h77rxhqyr1nkqyanb120lwdks6fklh202camqpmznd763g5"; }; installPhase = '' @@ -28,7 +28,7 @@ rustPlatform.buildRustPackage rec { ''; }; - cargoSha256 = "0pxakfiidxfczh3harnjhb1zv340r812jxzwam8z2kyw3mkyhh8z"; + cargoSha256 = "0b952xkg0l31laqlhsv3cqdag7v15k9na6xr6q9y8xwy1fjh9gzv"; nativeBuildInputs = [ pkg-config ]; buildInputs = [ openssl ] diff --git a/pkgs/games/scid-vs-pc/default.nix b/pkgs/games/scid-vs-pc/default.nix index 33373e0e7b1d..2837f96357a7 100644 --- a/pkgs/games/scid-vs-pc/default.nix +++ b/pkgs/games/scid-vs-pc/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv, fetchurl, tcl, tk, libX11, zlib, makeWrapper, makeDesktopItem }: +{ lib, fetchurl, tcl, tk, libX11, zlib, makeWrapper, makeDesktopItem }: -stdenv.mkDerivation rec { +tcl.mkTclDerivation rec { pname = "scid-vs-pc"; version = "4.21"; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ makeWrapper ]; - buildInputs = [ tcl tk libX11 zlib ]; + buildInputs = [ tk libX11 zlib ]; prePatch = '' sed -i -e '/^ *set headerPath *{/a ${tcl}/include ${tk}/include' \ @@ -49,7 +49,6 @@ stdenv.mkDerivation rec { for cmd in $out/bin/* ; do wrapProgram "$cmd" \ - --set TCLLIBPATH "${tcl}/${tcl.libdir}" \ --set TK_LIBRARY "${tk}/lib/${tk.libPrefix}" done ''; @@ -79,4 +78,3 @@ stdenv.mkDerivation rec { platforms = lib.platforms.linux; }; } - diff --git a/pkgs/games/scid/default.nix b/pkgs/games/scid/default.nix index 7b1a15c0a551..43794f6bc255 100644 --- a/pkgs/games/scid/default.nix +++ b/pkgs/games/scid/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv, fetchurl, tcl, tk, libX11, zlib, makeWrapper }: +{ lib, fetchurl, tcl, tk, libX11, zlib, makeWrapper }: -stdenv.mkDerivation { +tcl.mkTclDerivation { pname = "scid"; version = "4.3"; @@ -10,7 +10,7 @@ stdenv.mkDerivation { }; nativeBuildInputs = [ makeWrapper ]; - buildInputs = [ tcl tk libX11 zlib ]; + buildInputs = [ tk libX11 zlib ]; prePatch = '' sed -i -e '/^ *set headerPath *{/a ${tcl}/include ${tk}/include' \ @@ -45,13 +45,13 @@ stdenv.mkDerivation { for cmd in $out/bin/* do wrapProgram "$cmd" \ - --set TCLLIBPATH "${tcl}/${tcl.libdir}" \ --set TK_LIBRARY "${tk}/lib/${tk.libPrefix}" done ''; meta = { description = "Chess database with play and training functionality"; + maintainers = with lib.maintainers; [ agbrooks ]; homepage = "http://scid.sourceforge.net/"; license = lib.licenses.gpl2; }; diff --git a/pkgs/games/tcl2048/default.nix b/pkgs/games/tcl2048/default.nix index 734e7be3666b..dbc429746846 100644 --- a/pkgs/games/tcl2048/default.nix +++ b/pkgs/games/tcl2048/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchurl, tcl, tcllib, runtimeShell }: -stdenv.mkDerivation { +tcl.mkTclDerivation { name = "tcl2048-0.4.0"; src = fetchurl { @@ -8,20 +8,12 @@ stdenv.mkDerivation { sha256 = "53f5503efd7f029b2614b0f9b1e3aac6c0342735a3c9b811d74a5135fee3e89e"; }; - phases = "installPhase"; + buildInputs = [ tcllib ]; + phases = "installPhase fixupPhase"; installPhase = '' mkdir -pv $out/bin - cp $src $out/2048.tcl - cat > $out/bin/2048 << EOF - #!${runtimeShell} - - # wrapper for tcl2048 - export TCLLIBPATH="${tcllib}/lib/tcllib${tcllib.version}" - ${tcl}/bin/tclsh $out/2048.tcl - EOF - - chmod +x $out/bin/2048 + install -m 755 $src $out/bin/2048 ''; meta = { diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 441d8834e086..706e292732b0 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -703,11 +703,11 @@ lib.makeScope newScope (self: with self; { }) {}; libX11 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libxcb, xtrans }: stdenv.mkDerivation { - name = "libX11-1.7.0"; + name = "libX11-1.7.1"; builder = ./builder.sh; src = fetchurl { - url = "mirror://xorg/individual/lib/libX11-1.7.0.tar.bz2"; - sha256 = "0m6bfwllr3pq2c00l51y62yiq15kphc8dw69zf67qhwmclxzkj1n"; + url = "mirror://xorg/individual/lib/libX11-1.7.1.tar.bz2"; + sha256 = "0isxad59hvdwggbxqqjjjg3zmih9xiq4d9mdsnqbyb2nmbg46kp6"; }; hardeningDisable = [ "bindnow" "relro" ]; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/servers/x11/xorg/tarballs.list b/pkgs/servers/x11/xorg/tarballs.list index 093aba26f639..139dd60eb3f2 100644 --- a/pkgs/servers/x11/xorg/tarballs.list +++ b/pkgs/servers/x11/xorg/tarballs.list @@ -175,7 +175,7 @@ mirror://xorg/individual/lib/libICE-1.0.10.tar.bz2 mirror://xorg/individual/lib/libpciaccess-0.16.tar.bz2 mirror://xorg/individual/lib/libSM-1.2.3.tar.bz2 mirror://xorg/individual/lib/libWindowsWM-1.0.1.tar.bz2 -mirror://xorg/individual/lib/libX11-1.7.0.tar.bz2 +mirror://xorg/individual/lib/libX11-1.7.1.tar.bz2 mirror://xorg/individual/lib/libXau-1.0.9.tar.bz2 mirror://xorg/individual/lib/libXaw-1.0.14.tar.bz2 mirror://xorg/individual/lib/libXaw3d-1.6.3.tar.bz2 diff --git a/pkgs/tools/filesystems/btrfs-progs/default.nix b/pkgs/tools/filesystems/btrfs-progs/default.nix index 9a05a0d67fec..aad633f3ba46 100644 --- a/pkgs/tools/filesystems/btrfs-progs/default.nix +++ b/pkgs/tools/filesystems/btrfs-progs/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { pname = "btrfs-progs"; - version = "5.11.1"; + version = "5.12.1"; src = fetchurl { url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz"; - sha256 = "sha256-46rMxHVuxOVQLLKp+Ftn1SiWZE9MPA+IprxZjHC96/4="; + sha256 = "sha256-lQhG/qRU+0scOfD6RUmDZEVy35HfXAYEezNb8tVHN1k="; }; nativeBuildInputs = [ diff --git a/pkgs/tools/misc/expect/default.nix b/pkgs/tools/misc/expect/default.nix index 1315ac8540cb..03e8e260ac6b 100644 --- a/pkgs/tools/misc/expect/default.nix +++ b/pkgs/tools/misc/expect/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, buildPackages, fetchurl, tcl, makeWrapper, autoreconfHook, fetchpatch }: -stdenv.mkDerivation rec { +tcl.mkTclDerivation rec { pname = "expect"; version = "5.45.4"; @@ -20,24 +20,14 @@ stdenv.mkDerivation rec { sed -i "s,/bin/stty,$(type -p stty),g" configure.in ''; - nativeBuildInputs = [ autoreconfHook makeWrapper tcl ]; - buildInputs = [ tcl ]; + nativeBuildInputs = [ autoreconfHook makeWrapper ]; strictDeps = true; hardeningDisable = [ "format" ]; - configureFlags = [ - "--with-tcl=${buildPackages.tcl}/lib" - "--with-tclinclude=${tcl}/include" - "--exec-prefix=${placeholder "out"}" - ]; - - postInstall = '' + postInstall = lib.optionalString stdenv.isDarwin '' for i in $out/bin/*; do - wrapProgram $i \ - --prefix PATH : "${tcl}/bin" \ - --prefix TCLLIBPATH ' ' $out/lib/* \ - ${lib.optionalString stdenv.isDarwin "--prefix DYLD_LIBRARY_PATH : $out/lib/expect${version}"} + wrapProgram $i --prefix DYLD_LIBRARY_PATH : $out/lib/expect${version} done ''; diff --git a/pkgs/tools/misc/remind/default.nix b/pkgs/tools/misc/remind/default.nix index 293cc136c8c8..d10811ffa049 100644 --- a/pkgs/tools/misc/remind/default.nix +++ b/pkgs/tools/misc/remind/default.nix @@ -3,20 +3,18 @@ , fetchurl , tk , tcllib -, makeWrapper +, tcl , tkremind ? true }: let - inherit (lib) optional optionalString; - tclLibraries = lib.optionals tkremind [ tcllib tk ]; - tclLibPaths = lib.concatStringsSep " " - (map (p: "${p}/lib/${p.libPrefix}") tclLibraries); + inherit (lib) optional optionals optionalString; + tclLibraries = optionals tkremind [ tcllib tk ]; tkremindPatch = optionalString tkremind '' substituteInPlace scripts/tkremind --replace "exec wish" "exec ${tk}/bin/wish" ''; in -stdenv.mkDerivation rec { +tcl.mkTclDerivation rec { pname = "remind"; version = "03.03.06"; @@ -25,7 +23,6 @@ stdenv.mkDerivation rec { sha256 = "sha256-lpoMAXDJxwODY0/aoo25GRBYWFhE4uf11pR5/ITZX1s="; }; - nativeBuildInputs = optional tkremind makeWrapper; propagatedBuildInputs = tclLibraries; postPatch = '' @@ -37,10 +34,6 @@ stdenv.mkDerivation rec { ${tkremindPatch} ''; - postInstall = optionalString tkremind '' - wrapProgram $out/bin/tkremind --set TCLLIBPATH "${tclLibPaths}" - ''; - meta = with lib; { homepage = "https://dianne.skoll.ca/projects/remind/"; description = "Sophisticated calendar and alarm program for the console"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d428aa67201a..a374b6dfab00 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11597,7 +11597,7 @@ in }; rust_1_52 = callPackage ../development/compilers/rust/1_52.nix { inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; - llvm_11 = llvmPackages_11.libllvm; + llvm_12 = llvmPackages_12.libllvm; }; rust = rust_1_52; @@ -18095,9 +18095,7 @@ in tcllib = callPackage ../development/libraries/tcllib { }; - tcltls = callPackage ../development/libraries/tcltls { - openssl = openssl_1_0_2; - }; + tcltls = callPackage ../development/libraries/tcltls { }; tclx = callPackage ../development/libraries/tclx { }; @@ -27887,7 +27885,7 @@ in zcash = callPackage ../applications/blockchains/zcash { stdenv = llvmPackages_11.stdenv; }; - openethereum = callPackage ../applications/blockchains/openethereum { stdenv = llvmPackages_12.stdenv; }; + openethereum = callPackage ../applications/blockchains/openethereum { }; parity-ui = callPackage ../applications/blockchains/parity-ui { };