diff --git a/lib/systems/default.nix b/lib/systems/default.nix index 85e24e08d360..bd2762925837 100644 --- a/lib/systems/default.nix +++ b/lib/systems/default.nix @@ -50,6 +50,7 @@ rec { else if final.isFreeBSD then "fblibc" else if final.isNetBSD then "nblibc" else if final.isAvr then "avrlibc" + else if final.isGhcjs then null else if final.isNone then "newlib" # TODO(@Ericson2314) think more about other operating systems else "native/impure"; diff --git a/pkgs/applications/audio/polyphone/default.nix b/pkgs/applications/audio/polyphone/default.nix index 568f3b6ba151..f7008bf66bba 100644 --- a/pkgs/applications/audio/polyphone/default.nix +++ b/pkgs/applications/audio/polyphone/default.nix @@ -36,7 +36,6 @@ mkDerivation rec { qmakeFlags = [ "DEFINES+=USE_LOCAL_STK" "DEFINES+=USE_LOCAL_QCUSTOMPLOT" - "INCLUDEPATH+=${libjack2}/include/jack" ]; meta = with lib; { diff --git a/pkgs/build-support/bintools-wrapper/ld-wrapper.sh b/pkgs/build-support/bintools-wrapper/ld-wrapper.sh index 0d832bc4a67a..dcbe8a4c2494 100644 --- a/pkgs/build-support/bintools-wrapper/ld-wrapper.sh +++ b/pkgs/build-support/bintools-wrapper/ld-wrapper.sh @@ -55,10 +55,12 @@ if [[ "${NIX_ENFORCE_PURITY:-}" = 1 && -n "${NIX_STORE:-}" # produces '-syslibroot //' linker flag. It's a no-op, # which does not introduce impurities. n+=1; skip "$p2" - elif [ "${p:0:1}" = / ] && badPath "$p"; then - # We cannot skip this; barf. - echo "impure path \`$p' used in link" >&2 - exit 1 + elif [ "${p:0:10}" = /LIBPATH:/ ] && badPath "${p:9}"; then + reject "${p:9}" + # We need to not match LINK.EXE-style flags like + # /NOLOGO or /LIBPATH:/nix/store/foo + elif [[ $p =~ ^/[^:]*/ ]] && badPath "$p"; then + reject "$p" elif [ "${p:0:9}" = --sysroot ]; then # Our ld is not built with sysroot support (Can we fix that?) : diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix index adab6f239a61..bc9c199f778d 100644 --- a/pkgs/build-support/cc-wrapper/default.nix +++ b/pkgs/build-support/cc-wrapper/default.nix @@ -518,7 +518,7 @@ stdenv.mkDerivation { '' # TODO: categorize these and figure out a better place for them - + optionalString hostPlatform.isCygwin '' + + optionalString targetPlatform.isWindows '' hardening_unsupported_flags+=" pic" '' + optionalString targetPlatform.isMinGW '' hardening_unsupported_flags+=" stackprotector fortify" diff --git a/pkgs/build-support/setup-hooks/make-binary-wrapper/make-binary-wrapper.sh b/pkgs/build-support/setup-hooks/make-binary-wrapper/make-binary-wrapper.sh index 5f759d323cf6..88a50befd732 100644 --- a/pkgs/build-support/setup-hooks/make-binary-wrapper/make-binary-wrapper.sh +++ b/pkgs/build-support/setup-hooks/make-binary-wrapper/make-binary-wrapper.sh @@ -67,7 +67,7 @@ wrapProgramBinary() { hidden="${hidden}_" done mv "$prog" "$hidden" - makeWrapper "$hidden" "$prog" --inherit-argv0 "${@:2}" + makeBinaryWrapper "$hidden" "$prog" --inherit-argv0 "${@:2}" } # Generate source code for the wrapper in such a way that the wrapper inputs diff --git a/pkgs/build-support/setup-hooks/make-wrapper.sh b/pkgs/build-support/setup-hooks/make-wrapper.sh index 84e5ecee2909..4932e934ec16 100644 --- a/pkgs/build-support/setup-hooks/make-wrapper.sh +++ b/pkgs/build-support/setup-hooks/make-wrapper.sh @@ -217,5 +217,5 @@ wrapProgramShell() { hidden="${hidden}_" done mv "$prog" "$hidden" - makeWrapper "$hidden" "$prog" --inherit-argv0 "${@:2}" + makeShellWrapper "$hidden" "$prog" --inherit-argv0 "${@:2}" } diff --git a/pkgs/build-support/wrapper-common/utils.bash b/pkgs/build-support/wrapper-common/utils.bash index 44b44818c8ed..2faf96df15b4 100644 --- a/pkgs/build-support/wrapper-common/utils.bash +++ b/pkgs/build-support/wrapper-common/utils.bash @@ -84,12 +84,17 @@ mangleVarSingle() { done } -skip () { +skip() { if (( "${NIX_DEBUG:-0}" >= 1 )); then echo "skipping impure path $1" >&2 fi } +reject() { + echo "impure path \`$1' used in link" >&2 + exit 1 +} + # Checks whether a path is impure. E.g., `/lib/foo.so' is impure, but # `/nix/store/.../lib/foo.so' isn't. diff --git a/pkgs/development/compilers/glslang/default.nix b/pkgs/development/compilers/glslang/default.nix index 8eb10fe84397..c3ed81a839af 100644 --- a/pkgs/development/compilers/glslang/default.nix +++ b/pkgs/development/compilers/glslang/default.nix @@ -10,12 +10,12 @@ }: stdenv.mkDerivation rec { pname = "glslang"; - version = "1.3.243.0"; + version = "12.1.0"; src = fetchFromGitHub { owner = "KhronosGroup"; repo = "glslang"; - rev = "sdk-${version}"; + rev = version; hash = "sha256-U45/7G02o82EP4zh7i2Go0VCnsO1B7vxDwIokjyo5Rk="; }; diff --git a/pkgs/development/compilers/llvm/10/compiler-rt/default.nix b/pkgs/development/compilers/llvm/10/compiler-rt/default.nix index bfff847b6b52..6aed5d219a57 100644 --- a/pkgs/development/compilers/llvm/10/compiler-rt/default.nix +++ b/pkgs/development/compilers/llvm/10/compiler-rt/default.nix @@ -40,8 +40,6 @@ stdenv.mkDerivation { "-DCMAKE_CXX_COMPILER_WORKS=ON" "-DCOMPILER_RT_BAREMETAL_BUILD=ON" "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" - ] ++ lib.optionals (useLLVM && !haveLibc) [ - "-DCMAKE_C_FLAGS=-nodefaultlibs" ] ++ lib.optionals (useLLVM) [ "-DCOMPILER_RT_BUILD_BUILTINS=ON" #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program @@ -90,6 +88,10 @@ stdenv.mkDerivation { --replace "#include " "" ''; + preConfigure = lib.optionalString (useLLVM && !haveLibc) '' + cmakeFlagsArray+=(-DCMAKE_C_FLAGS="-nodefaultlibs -ffreestanding") + ''; + # Hack around weird upsream RPATH bug postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) '' ln -s "$out/lib"/*/* "$out/lib" diff --git a/pkgs/development/compilers/llvm/10/default.nix b/pkgs/development/compilers/llvm/10/default.nix index 75985e962479..feae428456da 100644 --- a/pkgs/development/compilers/llvm/10/default.nix +++ b/pkgs/development/compilers/llvm/10/default.nix @@ -102,7 +102,8 @@ let # pick clang appropriate for package set we are targeting clang = - /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc + else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; diff --git a/pkgs/development/compilers/llvm/11/compiler-rt/default.nix b/pkgs/development/compilers/llvm/11/compiler-rt/default.nix index f737d34bb84c..aaea3bf9e0d2 100644 --- a/pkgs/development/compilers/llvm/11/compiler-rt/default.nix +++ b/pkgs/development/compilers/llvm/11/compiler-rt/default.nix @@ -41,8 +41,6 @@ stdenv.mkDerivation { "-DCMAKE_CXX_COMPILER_WORKS=ON" "-DCOMPILER_RT_BAREMETAL_BUILD=ON" "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" - ] ++ lib.optionals (!haveLibc) [ - "-DCMAKE_C_FLAGS=-nodefaultlibs" ] ++ lib.optionals (useLLVM || isNewDarwinBootstrap) [ "-DCOMPILER_RT_BUILD_BUILTINS=ON" #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program @@ -75,6 +73,8 @@ stdenv.mkDerivation { preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin '' cmakeFlagsArray+=("-DCMAKE_LIPO=$(command -v ${stdenv.cc.targetPrefix}lipo)") + '' + lib.optionalString (!haveLibc) '' + cmakeFlagsArray+=("-DCMAKE_C_FLAGS=-nodefaultlibs -ffreestanding") ''; # TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks diff --git a/pkgs/development/compilers/llvm/11/default.nix b/pkgs/development/compilers/llvm/11/default.nix index 6f73f50e3183..cdfc9eb02d00 100644 --- a/pkgs/development/compilers/llvm/11/default.nix +++ b/pkgs/development/compilers/llvm/11/default.nix @@ -117,7 +117,8 @@ let # pick clang appropriate for package set we are targeting clang = - /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc + else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; diff --git a/pkgs/development/compilers/llvm/12/compiler-rt/default.nix b/pkgs/development/compilers/llvm/12/compiler-rt/default.nix index 2202e2c23c7c..82c190fa0d64 100644 --- a/pkgs/development/compilers/llvm/12/compiler-rt/default.nix +++ b/pkgs/development/compilers/llvm/12/compiler-rt/default.nix @@ -42,8 +42,6 @@ stdenv.mkDerivation { "-DCMAKE_CXX_COMPILER_WORKS=ON" "-DCOMPILER_RT_BAREMETAL_BUILD=ON" "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" - ] ++ lib.optionals (useLLVM && !haveLibc) [ - "-DCMAKE_C_FLAGS=-nodefaultlibs" ] ++ lib.optionals (useLLVM) [ "-DCOMPILER_RT_BUILD_BUILTINS=ON" #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program @@ -93,6 +91,10 @@ stdenv.mkDerivation { --replace "#include " "" ''; + preConfigure = lib.optionalString (useLLVM && !haveLibc) '' + cmakeFlagsArray+=(-DCMAKE_C_FLAGS="-nodefaultlibs -ffreestanding") + ''; + # Hack around weird upsream RPATH bug postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) '' ln -s "$out/lib"/*/* "$out/lib" diff --git a/pkgs/development/compilers/llvm/12/default.nix b/pkgs/development/compilers/llvm/12/default.nix index b936b35b155a..81443ddbacab 100644 --- a/pkgs/development/compilers/llvm/12/default.nix +++ b/pkgs/development/compilers/llvm/12/default.nix @@ -105,7 +105,8 @@ let # pick clang appropriate for package set we are targeting clang = - /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc + else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; diff --git a/pkgs/development/compilers/llvm/13/compiler-rt/default.nix b/pkgs/development/compilers/llvm/13/compiler-rt/default.nix index 8f7977002920..faa123312bd7 100644 --- a/pkgs/development/compilers/llvm/13/compiler-rt/default.nix +++ b/pkgs/development/compilers/llvm/13/compiler-rt/default.nix @@ -46,8 +46,6 @@ stdenv.mkDerivation { "-DCMAKE_CXX_COMPILER_WORKS=ON" "-DCOMPILER_RT_BAREMETAL_BUILD=ON" "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" - ] ++ lib.optionals (useLLVM && !haveLibc) [ - "-DCMAKE_C_FLAGS=-nodefaultlibs" ] ++ lib.optionals (useLLVM) [ "-DCOMPILER_RT_BUILD_BUILTINS=ON" #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program @@ -100,6 +98,10 @@ stdenv.mkDerivation { --replace "#include " "" ''; + preConfigure = lib.optionalString (useLLVM && !haveLibc) '' + cmakeFlagsArray+=(-DCMAKE_C_FLAGS="-nodefaultlibs -ffreestanding") + ''; + # Hack around weird upsream RPATH bug postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) '' ln -s "$out/lib"/*/* "$out/lib" diff --git a/pkgs/development/compilers/llvm/13/default.nix b/pkgs/development/compilers/llvm/13/default.nix index 0bc17119125b..9c3861155a66 100644 --- a/pkgs/development/compilers/llvm/13/default.nix +++ b/pkgs/development/compilers/llvm/13/default.nix @@ -106,7 +106,8 @@ let # pick clang appropriate for package set we are targeting clang = - /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc + else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; diff --git a/pkgs/development/compilers/llvm/14/compiler-rt/default.nix b/pkgs/development/compilers/llvm/14/compiler-rt/default.nix index 021eba5a7b63..98ee8135b8fa 100644 --- a/pkgs/development/compilers/llvm/14/compiler-rt/default.nix +++ b/pkgs/development/compilers/llvm/14/compiler-rt/default.nix @@ -54,8 +54,6 @@ stdenv.mkDerivation { "-DCMAKE_CXX_COMPILER_WORKS=ON" "-DCOMPILER_RT_BAREMETAL_BUILD=ON" "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" - ] ++ lib.optionals (useLLVM && !haveLibc) [ - "-DCMAKE_C_FLAGS=-nodefaultlibs" ] ++ lib.optionals (useLLVM) [ "-DCOMPILER_RT_BUILD_BUILTINS=ON" #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program @@ -109,6 +107,10 @@ stdenv.mkDerivation { --replace "#include " "" ''; + preConfigure = lib.optionalString (useLLVM && !haveLibc) '' + cmakeFlagsArray+=(-DCMAKE_C_FLAGS="-nodefaultlibs -ffreestanding") + ''; + # Hack around weird upsream RPATH bug postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) '' ln -s "$out/lib"/*/* "$out/lib" diff --git a/pkgs/development/compilers/llvm/14/default.nix b/pkgs/development/compilers/llvm/14/default.nix index 21dc8088452c..baef21602de7 100644 --- a/pkgs/development/compilers/llvm/14/default.nix +++ b/pkgs/development/compilers/llvm/14/default.nix @@ -107,7 +107,8 @@ let # pick clang appropriate for package set we are targeting clang = - /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc + else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; diff --git a/pkgs/development/compilers/llvm/15/compiler-rt/default.nix b/pkgs/development/compilers/llvm/15/compiler-rt/default.nix index a3f2355c6a0b..d35bc7133fed 100644 --- a/pkgs/development/compilers/llvm/15/compiler-rt/default.nix +++ b/pkgs/development/compilers/llvm/15/compiler-rt/default.nix @@ -54,8 +54,6 @@ stdenv.mkDerivation { "-DCMAKE_CXX_COMPILER_WORKS=ON" "-DCOMPILER_RT_BAREMETAL_BUILD=ON" "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" - ] ++ lib.optionals (useLLVM && !haveLibc) [ - "-DCMAKE_C_FLAGS=-nodefaultlibs" ] ++ lib.optionals (useLLVM) [ "-DCOMPILER_RT_BUILD_BUILTINS=ON" #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program @@ -110,6 +108,10 @@ stdenv.mkDerivation { --replace "#include " "" ''; + preConfigure = lib.optionalString (useLLVM && !haveLibc) '' + cmakeFlagsArray+=(-DCMAKE_C_FLAGS="-nodefaultlibs -ffreestanding") + ''; + # Hack around weird upsream RPATH bug postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) '' ln -s "$out/lib"/*/* "$out/lib" diff --git a/pkgs/development/compilers/llvm/15/default.nix b/pkgs/development/compilers/llvm/15/default.nix index d4fd2d9bec6d..01b710f26d22 100644 --- a/pkgs/development/compilers/llvm/15/default.nix +++ b/pkgs/development/compilers/llvm/15/default.nix @@ -155,7 +155,8 @@ in let # pick clang appropriate for package set we are targeting clang = - /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc + else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; diff --git a/pkgs/development/compilers/llvm/5/default.nix b/pkgs/development/compilers/llvm/5/default.nix index 4a8c27471acc..f81aecb0eebc 100644 --- a/pkgs/development/compilers/llvm/5/default.nix +++ b/pkgs/development/compilers/llvm/5/default.nix @@ -77,7 +77,8 @@ let # pick clang appropriate for package set we are targeting clang = - /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc + else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; diff --git a/pkgs/development/compilers/llvm/6/default.nix b/pkgs/development/compilers/llvm/6/default.nix index fef543e39d82..601242439606 100644 --- a/pkgs/development/compilers/llvm/6/default.nix +++ b/pkgs/development/compilers/llvm/6/default.nix @@ -78,7 +78,8 @@ let # pick clang appropriate for package set we are targeting clang = - /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc + else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; diff --git a/pkgs/development/compilers/llvm/7/compiler-rt/default.nix b/pkgs/development/compilers/llvm/7/compiler-rt/default.nix index 4b4c30a43235..a644229ff07c 100644 --- a/pkgs/development/compilers/llvm/7/compiler-rt/default.nix +++ b/pkgs/development/compilers/llvm/7/compiler-rt/default.nix @@ -38,8 +38,6 @@ stdenv.mkDerivation { "-DCMAKE_CXX_COMPILER_WORKS=ON" "-DCOMPILER_RT_BAREMETAL_BUILD=ON" "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" - ] ++ lib.optionals (useLLVM && !haveLibc) [ - "-DCMAKE_C_FLAGS=-nodefaultlibs" ] ++ lib.optionals (useLLVM) [ "-DCOMPILER_RT_BUILD_BUILTINS=ON" #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program @@ -84,6 +82,10 @@ stdenv.mkDerivation { --replace "#include " "" ''; + preConfigure = lib.optionalString (useLLVM && !haveLibc) '' + cmakeFlagsArray+=(-DCMAKE_C_FLAGS="-nodefaultlibs -ffreestanding") + ''; + # Hack around weird upsream RPATH bug postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) '' ln -s "$out/lib"/*/* "$out/lib" diff --git a/pkgs/development/compilers/llvm/7/default.nix b/pkgs/development/compilers/llvm/7/default.nix index 9ae8358587b9..dab90c19fbc2 100644 --- a/pkgs/development/compilers/llvm/7/default.nix +++ b/pkgs/development/compilers/llvm/7/default.nix @@ -109,7 +109,8 @@ let # pick clang appropriate for package set we are targeting clang = - /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc + else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; diff --git a/pkgs/development/compilers/llvm/8/compiler-rt/default.nix b/pkgs/development/compilers/llvm/8/compiler-rt/default.nix index 2ac116f68988..80f70ac64a0f 100644 --- a/pkgs/development/compilers/llvm/8/compiler-rt/default.nix +++ b/pkgs/development/compilers/llvm/8/compiler-rt/default.nix @@ -38,8 +38,6 @@ stdenv.mkDerivation { "-DCMAKE_CXX_COMPILER_WORKS=ON" "-DCOMPILER_RT_BAREMETAL_BUILD=ON" "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" - ] ++ lib.optionals (useLLVM && !haveLibc) [ - "-DCMAKE_C_FLAGS=-nodefaultlibs" ] ++ lib.optionals (useLLVM) [ "-DCOMPILER_RT_BUILD_BUILTINS=ON" #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program @@ -84,6 +82,10 @@ stdenv.mkDerivation { --replace "#include " "" ''; + preConfigure = lib.optionalString (useLLVM && !haveLibc) '' + cmakeFlagsArray+=(-DCMAKE_C_FLAGS="-nodefaultlibs -ffreestanding") + ''; + # Hack around weird upsream RPATH bug postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) '' ln -s "$out/lib"/*/* "$out/lib" diff --git a/pkgs/development/compilers/llvm/8/default.nix b/pkgs/development/compilers/llvm/8/default.nix index 9401bb34650a..1290d4974251 100644 --- a/pkgs/development/compilers/llvm/8/default.nix +++ b/pkgs/development/compilers/llvm/8/default.nix @@ -110,7 +110,8 @@ let # pick clang appropriate for package set we are targeting clang = - /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc + else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; diff --git a/pkgs/development/compilers/llvm/9/compiler-rt/default.nix b/pkgs/development/compilers/llvm/9/compiler-rt/default.nix index 083fe6231e13..0398b126ab58 100644 --- a/pkgs/development/compilers/llvm/9/compiler-rt/default.nix +++ b/pkgs/development/compilers/llvm/9/compiler-rt/default.nix @@ -38,8 +38,6 @@ stdenv.mkDerivation { "-DCMAKE_CXX_COMPILER_WORKS=ON" "-DCOMPILER_RT_BAREMETAL_BUILD=ON" "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" - ] ++ lib.optionals (useLLVM && !haveLibc) [ - "-DCMAKE_C_FLAGS=-nodefaultlibs" ] ++ lib.optionals (useLLVM) [ "-DCOMPILER_RT_BUILD_BUILTINS=ON" #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program @@ -87,6 +85,10 @@ stdenv.mkDerivation { --replace "#include " "" ''; + preConfigure = lib.optionalString (useLLVM && !haveLibc) '' + cmakeFlagsArray+=(-DCMAKE_C_FLAGS="-nodefaultlibs -ffreestanding") + ''; + # Hack around weird upsream RPATH bug postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) '' ln -s "$out/lib"/*/* "$out/lib" diff --git a/pkgs/development/compilers/llvm/9/default.nix b/pkgs/development/compilers/llvm/9/default.nix index 0a803e3c3dc1..92a91f058640 100644 --- a/pkgs/development/compilers/llvm/9/default.nix +++ b/pkgs/development/compilers/llvm/9/default.nix @@ -110,7 +110,8 @@ let # pick clang appropriate for package set we are targeting clang = - /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc + else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; diff --git a/pkgs/development/compilers/llvm/git/compiler-rt/default.nix b/pkgs/development/compilers/llvm/git/compiler-rt/default.nix index 53c0924a07c5..b20796ab02ab 100644 --- a/pkgs/development/compilers/llvm/git/compiler-rt/default.nix +++ b/pkgs/development/compilers/llvm/git/compiler-rt/default.nix @@ -54,8 +54,6 @@ stdenv.mkDerivation { "-DCMAKE_CXX_COMPILER_WORKS=ON" "-DCOMPILER_RT_BAREMETAL_BUILD=ON" "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" - ] ++ lib.optionals (useLLVM && !haveLibc) [ - "-DCMAKE_C_FLAGS=-nodefaultlibs" ] ++ lib.optionals (useLLVM) [ "-DCOMPILER_RT_BUILD_BUILTINS=ON" #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program @@ -71,6 +69,10 @@ stdenv.mkDerivation { "-DCOMPILER_RT_ENABLE_IOS=OFF" ]; + preConfigure = lib.optionalString (useLLVM && !haveLibc) '' + cmakeFlagsArray+=(-DCMAKE_C_FLAGS="-nodefaultlibs -ffreestanding") + ''; + outputs = [ "out" "dev" ]; patches = [ diff --git a/pkgs/development/compilers/llvm/git/default.nix b/pkgs/development/compilers/llvm/git/default.nix index d6d8186aecbc..7eddea58ef1c 100644 --- a/pkgs/development/compilers/llvm/git/default.nix +++ b/pkgs/development/compilers/llvm/git/default.nix @@ -155,7 +155,8 @@ in let # pick clang appropriate for package set we are targeting clang = - /**/ if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM + /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc + else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 0870a9fde1f7..92772c419c1e 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -80,6 +80,7 @@ , withSsh ? withHeadlessDeps # SFTP protocol , withSvg ? withFullDeps # SVG protocol , withSvtav1 ? withFullDeps && !stdenv.isAarch64 # AV1 encoder/decoder (focused on speed and correctness) +, withTensorflow ? false # Tensorflow dnn backend support , withTheora ? withHeadlessDeps # Theora encoder , withV4l2 ? withFullDeps && !stdenv.isDarwin # Video 4 Linux support , withV4l2M2m ? withV4l2 @@ -213,6 +214,7 @@ , libplacebo , librsvg , libssh +, libtensorflow , libtheora , libv4l , libva @@ -475,6 +477,7 @@ stdenv.mkDerivation (finalAttrs: { (enableFeature withSvg "librsvg") (enableFeature withSrt "libsrt") (enableFeature withSsh "libssh") + (enableFeature withTensorflow "libtensorflow") (enableFeature withTheora "libtheora") (enableFeature withV4l2 "libv4l2") (enableFeature withV4l2M2m "v4l2-m2m") @@ -600,6 +603,7 @@ stdenv.mkDerivation (finalAttrs: { ++ optionals withSsh [ libssh ] ++ optionals withSvg [ librsvg ] ++ optionals withSvtav1 [ svt-av1 ] + ++ optionals withTensorflow [ libtensorflow ] ++ optionals withTheora [ libtheora ] ++ optionals withVaapi [ (if withSmallDeps then libva else libva-minimal) ] ++ optionals withVdpau [ libvdpau ] diff --git a/pkgs/development/libraries/fontconfig/make-fonts-conf.nix b/pkgs/development/libraries/fontconfig/make-fonts-conf.nix index 493f662d0ce3..aa84de4dcecd 100644 --- a/pkgs/development/libraries/fontconfig/make-fonts-conf.nix +++ b/pkgs/development/libraries/fontconfig/make-fonts-conf.nix @@ -1,11 +1,13 @@ -{ runCommand, libxslt, fontconfig, dejavu_fonts, fontDirectories }: +{ runCommand, stdenv, lib, libxslt, fontconfig, dejavu_fonts, fontDirectories }: runCommand "fonts.conf" { nativeBuildInputs = [ libxslt ]; buildInputs = [ fontconfig ]; # Add a default font for non-nixos systems, <1MB and in nixos defaults. - fontDirectories = fontDirectories ++ [ dejavu_fonts.minimal ]; + fontDirectories = fontDirectories ++ [ dejavu_fonts.minimal ] + # further non-nixos fonts on darwin + ++ lib.optionals stdenv.isDarwin [ "/System/Library/Fonts" "/Library/Fonts" "~/Library/Fonts" ]; } '' xsltproc --stringparam fontDirectories "$fontDirectories" \ diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix index 717a61d82310..bb1acbe6fdb3 100644 --- a/pkgs/development/libraries/gstreamer/bad/default.nix +++ b/pkgs/development/libraries/gstreamer/bad/default.nix @@ -100,6 +100,8 @@ , MediaToolbox , enableGplPlugins ? true , bluezSupport ? stdenv.isLinux +# Causes every application using GstDeviceMonitor to send mDNS queries every 2 seconds +, microdnsSupport ? false # Checks meson.is_cross_build(), so even canExecute isn't enough. , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, hotdoc }: @@ -151,7 +153,6 @@ stdenv.mkDerivation rec { #webrtc-audio-processing_1 # required by isac libbs2b libmodplug - libmicrodns openjpeg libopenmpt libopus @@ -203,6 +204,8 @@ stdenv.mkDerivation rec { x265 ] ++ lib.optionals bluezSupport [ bluez + ] ++ lib.optionals microdnsSupport [ + libmicrodns ] ++ lib.optionals stdenv.isLinux [ libva # vaapi requires libva -> libdrm -> libpciaccess, which is Linux-only in nixpkgs wayland @@ -286,6 +289,7 @@ stdenv.mkDerivation rec { "-Dgs=disabled" # depends on `google-cloud-cpp` "-Donnx=disabled" # depends on `libonnxruntime` not packaged in nixpkgs as of writing "-Dopenaptx=enabled" # since gstreamer-1.20.1 `libfreeaptx` is supported for circumventing the dubious license conflict with `libopenaptx` + "-Dmicrodns=${if microdnsSupport then "enabled" else "disabled"}" "-Dbluez=${if bluezSupport then "enabled" else "disabled"}" (lib.mesonEnable "doc" enableDocumentation) ] diff --git a/pkgs/development/libraries/libsoup/3.x.nix b/pkgs/development/libraries/libsoup/3.x.nix index 5219f59e929d..13c7ccc30285 100644 --- a/pkgs/development/libraries/libsoup/3.x.nix +++ b/pkgs/development/libraries/libsoup/3.x.nix @@ -22,13 +22,13 @@ stdenv.mkDerivation rec { pname = "libsoup"; - version = "3.4.1"; + version = "3.4.2"; outputs = [ "out" "dev" ] ++ lib.optional withIntrospection "devdoc"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-UwuGexsWbLm8onUPHRXlGHMYtdlI77gdWJmvPXVhRQQ="; + sha256 = "sha256-eMj6N8sVLUDsjEoUjWFV4vaUfz8WAqfNo6Ma1A9e4vM="; }; depsBuildBuild = [ diff --git a/pkgs/development/libraries/science/math/or-tools/default.nix b/pkgs/development/libraries/science/math/or-tools/default.nix index 6d23008b6922..92588307ca57 100644 --- a/pkgs/development/libraries/science/math/or-tools/default.nix +++ b/pkgs/development/libraries/science/math/or-tools/default.nix @@ -109,7 +109,7 @@ stdenv.mkDerivation rec { pip install --prefix="$python" python/ ''; - outputs = [ "out" "dev" "python" ]; + outputs = [ "out" "python" ]; meta = with lib; { homepage = "https://github.com/google/or-tools"; diff --git a/pkgs/development/libraries/tracker/default.nix b/pkgs/development/libraries/tracker/default.nix index 2da4a3a3ca78..4ba70506b718 100644 --- a/pkgs/development/libraries/tracker/default.nix +++ b/pkgs/development/libraries/tracker/default.nix @@ -31,13 +31,13 @@ stdenv.mkDerivation rec { pname = "tracker"; - version = "3.5.0"; + version = "3.5.1"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "EylCddu7rZY0s6g5DAjm8Svr/oT2zK+3Kyewwjuo2i8="; + sha256 = "+XLVCse6/czxE7HrmdyuNUBGhameVb/vFvOsg7Tel00="; }; strictDeps = true; @@ -102,8 +102,8 @@ stdenv.mkDerivation rec { ]; doCheck = - # https://gitlab.gnome.org/GNOME/tracker/-/issues/397 - !stdenv.isAarch64 + # https://gitlab.gnome.org/GNOME/tracker/-/issues/402 + !stdenv.isDarwin # https://gitlab.gnome.org/GNOME/tracker/-/issues/398 && !stdenv.is32bit; diff --git a/pkgs/development/python-modules/aioesphomeapi/default.nix b/pkgs/development/python-modules/aioesphomeapi/default.nix index d9f02f883e34..bee7cc393321 100644 --- a/pkgs/development/python-modules/aioesphomeapi/default.nix +++ b/pkgs/development/python-modules/aioesphomeapi/default.nix @@ -28,8 +28,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ async-timeout noiseprotocol - protobuf.out - protobuf.dev + protobuf zeroconf ]; diff --git a/pkgs/development/python-modules/aiohttp/default.nix b/pkgs/development/python-modules/aiohttp/default.nix index 91ab8c040fdb..114077681c91 100644 --- a/pkgs/development/python-modules/aiohttp/default.nix +++ b/pkgs/development/python-modules/aiohttp/default.nix @@ -4,6 +4,8 @@ , fetchPypi , fetchpatch , pythonOlder +# build_requires +, setuptools # install_requires , attrs , charset-normalizer @@ -56,6 +58,10 @@ buildPythonPackage rec { --replace "charset-normalizer >=2.0, < 3.0" "charset-normalizer >=2.0, < 4.0" ''; + nativeBuildInputs = [ + setuptools + ]; + propagatedBuildInputs = [ attrs charset-normalizer diff --git a/pkgs/development/python-modules/cryptography/default.nix b/pkgs/development/python-modules/cryptography/default.nix index e9162fa6428f..ef4220a42b7d 100644 --- a/pkgs/development/python-modules/cryptography/default.nix +++ b/pkgs/development/python-modules/cryptography/default.nix @@ -13,7 +13,6 @@ , cffi , pkg-config , pytestCheckHook -, pytest-benchmark , pytest-subtests , pythonOlder , pretend @@ -46,6 +45,11 @@ buildPythonPackage rec { hash = "sha256-gFfDTc2QWBWHBCycVH1dYlCsWQMVcRZfOBIau+njtDU="; }; + postPatch = '' + substituteInPlace pyproject.toml \ + --replace "--benchmark-disable" "" + ''; + cargoRoot = "src/rust"; nativeBuildInputs = lib.optionals (!isPyPy) [ @@ -72,7 +76,6 @@ buildPythonPackage rec { pretend py pytestCheckHook - pytest-benchmark pytest-subtests pytz ]; @@ -81,7 +84,10 @@ buildPythonPackage rec { "--disable-pytest-warnings" ]; - disabledTestPaths = lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ + disabledTestPaths = [ + # save compute time by not running benchmarks + "tests/bench" + ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ # aarch64-darwin forbids W+X memory, but this tests depends on it: # * https://cffi.readthedocs.io/en/latest/using.html#callbacks "tests/hazmat/backends/test_openssl_memleak.py" diff --git a/pkgs/development/python-modules/jinja2/default.nix b/pkgs/development/python-modules/jinja2/default.nix index cb30b871ca86..1fb7b26db5b3 100644 --- a/pkgs/development/python-modules/jinja2/default.nix +++ b/pkgs/development/python-modules/jinja2/default.nix @@ -6,11 +6,17 @@ , babel , markupsafe , pytestCheckHook +, sphinxHook +, pallets-sphinx-themes +, sphinxcontrib-log-cabinet +, sphinx-issues +, enableDocumentation ? false }: buildPythonPackage rec { pname = "Jinja2"; version = "3.1.2"; + outputs = [ "out" ] ++ lib.optional enableDocumentation "doc"; disabled = pythonOlder "3.7"; @@ -19,11 +25,20 @@ buildPythonPackage rec { hash = "sha256-MTUacCpAip51laj8YVD8P0O7a/fjGXcMvA2535Q36FI="; }; + patches = lib.optionals enableDocumentation [ ./patches/import-order.patch ]; + propagatedBuildInputs = [ babel markupsafe ]; + nativeBuildInputs = lib.optionals enableDocumentation [ + sphinxHook + sphinxcontrib-log-cabinet + pallets-sphinx-themes + sphinx-issues + ]; + # Multiple tests run out of stack space on 32bit systems with python2. # See https://github.com/pallets/jinja/issues/1158 doCheck = !stdenv.is32bit; diff --git a/pkgs/development/python-modules/jinja2/patches/import-order.patch b/pkgs/development/python-modules/jinja2/patches/import-order.patch new file mode 100644 index 000000000000..38514dff24e3 --- /dev/null +++ b/pkgs/development/python-modules/jinja2/patches/import-order.patch @@ -0,0 +1,27 @@ +Sphinx changed something between sphinx=4.5.0 and sphinx=5.3 that broke +"sphinxcontrib.log_cabinet" plugin. + +When Sphinx tries to importlib.import_module("sphinxcontrib.log_cabinet"), it +has couple other sphinxcontrib.* libraries in sys.path, and they seem to cause +conflict. So here I purge sys.path from sphixcontrib-related things, import +log_cabinet and put everything back, so when Sphinx will do "import_module", +"sphinxcontrib.log_cabinet" will be already imported and cached. + +All this is quite hacky, but we are talking about merely building documentation +here. If resulting html looks good, what happened in Nix sandbox stays in Nix +sandbox. + +--- a/docs/conf.py 1970-01-01 00:00:00.000000000 -0000 ++++ b/docs/conf.py 1970-01-01 00:00:00.000000000 -0000 +@@ -1,5 +1,12 @@ + from pallets_sphinx_themes import get_version + from pallets_sphinx_themes import ProjectLink ++import importlib ++import sys ++ ++saved_path = sys.path ++sys.path = [x for x in sys.path if "sphinxcontrib" not in x or "cabinet" in x] ++import sphinxcontrib.log_cabinet ++sys.path = saved_path + + # Project -------------------------------------------------------------- diff --git a/pkgs/development/python-modules/mkdocs-material/default.nix b/pkgs/development/python-modules/mkdocs-material/default.nix index a17f10e863f6..1af375762dc7 100644 --- a/pkgs/development/python-modules/mkdocs-material/default.nix +++ b/pkgs/development/python-modules/mkdocs-material/default.nix @@ -19,7 +19,7 @@ buildPythonPackage rec { pname = "mkdocs-material"; - version = "9.0.15"; + version = "9.1.8"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -28,7 +28,7 @@ buildPythonPackage rec { owner = "squidfunk"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-GIzHgCU4BzHuQMBleGn9DcJBm+pQ7/JP67e8eIcyhpc="; + hash = "sha256-a0AeRjS0fV4q3z6MPZBBv8Ffv61W3zHPrnPT4evBnaw="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/protobuf/default.nix b/pkgs/development/python-modules/protobuf/default.nix index 68177357ca6d..8df8bb7c4a7d 100644 --- a/pkgs/development/python-modules/protobuf/default.nix +++ b/pkgs/development/python-modules/protobuf/default.nix @@ -41,8 +41,6 @@ buildPythonPackage { fi ''; - outputs = [ "out" "dev" ]; - buildInputs = [ protobuf ]; propagatedNativeBuildInputs = [ diff --git a/pkgs/development/python-modules/psutil/default.nix b/pkgs/development/python-modules/psutil/default.nix index c77c31faa960..015e82de857e 100644 --- a/pkgs/development/python-modules/psutil/default.nix +++ b/pkgs/development/python-modules/psutil/default.nix @@ -11,14 +11,14 @@ buildPythonPackage rec { pname = "psutil"; - version = "5.9.4"; + version = "5.9.5"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-PX+XOetDXUsTOJRKviP0lYS95TlfJ0h9LuJa2ah3SmI="; + hash = "sha256-VBBjjk3znFTZV/xRzgMEis2ObWCrwPUQevUeX7Vm6zw="; }; buildInputs = @@ -66,6 +66,7 @@ buildPythonPackage rec { meta = with lib; { description = "Process and system utilization information interface"; homepage = "https://github.com/giampaolo/psutil"; + changelog = "https://github.com/giampaolo/psutil/blob/release-${version}/HISTORY.rst"; license = licenses.bsd3; maintainers = with maintainers; [ jonringer ]; }; diff --git a/pkgs/development/python-modules/pytest-benchmark/default.nix b/pkgs/development/python-modules/pytest-benchmark/default.nix index 6fd0cefb51c3..4117d2e658c5 100644 --- a/pkgs/development/python-modules/pytest-benchmark/default.nix +++ b/pkgs/development/python-modules/pytest-benchmark/default.nix @@ -1,16 +1,25 @@ { lib +, aspectlib , buildPythonPackage +, elasticsearch , fetchFromGitHub -, pathlib +, fetchpatch +, freezegun +, git +, mercurial , py-cpuinfo +, pygal , pytest +, pytestCheckHook , pythonOlder -, statistics }: buildPythonPackage rec { pname = "pytest-benchmark"; version = "4.0.0"; + + disabled = pythonOlder "3.7"; + format = "setuptools"; src = fetchFromGitHub { @@ -20,28 +29,52 @@ buildPythonPackage rec { hash = "sha256-f9Ty4+5PycraxoLUSa9JFusV5Cot6bBWKfOGHZIRR3o="; }; + patches = [ + (fetchpatch { + url = "https://github.com/ionelmc/pytest-benchmark/commit/728752d2976ef53fde7e40beb3e55f09cf4d4736.patch"; + hash = "sha256-WIQADCLey5Y79UJUj9J5E02HQ0O86xBh/3IeGLpVrWI="; + }) + ]; + buildInputs = [ pytest ]; propagatedBuildInputs = [ py-cpuinfo - ] ++ lib.optionals (pythonOlder "3.4") [ - pathlib - statistics ]; - # Circular dependency - doCheck = false; - pythonImportsCheck = [ "pytest_benchmark" ]; + nativeCheckInputs = [ + aspectlib + elasticsearch + freezegun + git + mercurial + pygal + pytestCheckHook + ]; + + preCheck = '' + export PATH="$out/bin:$PATH" + ''; + + disabledTests = [ + # AttributeError: 'PluginImportFixer' object has no attribute 'find_spec' + "test_compare_1" + "test_compare_2" + "test_regression_checks" + "test_rendering" + ]; + meta = with lib; { + changelog = "https://github.com/ionelmc/pytest-benchmark/blob/${src.rev}/CHANGELOG.rst"; description = "Pytest fixture for benchmarking code"; homepage = "https://github.com/ionelmc/pytest-benchmark"; license = licenses.bsd2; - maintainers = with maintainers; [ costrouc ]; + maintainers = with maintainers; [ dotlambda ]; }; } diff --git a/pkgs/development/python-modules/simplejson/default.nix b/pkgs/development/python-modules/simplejson/default.nix index f23e988a9fa6..f495e463864d 100644 --- a/pkgs/development/python-modules/simplejson/default.nix +++ b/pkgs/development/python-modules/simplejson/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "simplejson"; - version = "3.18.3"; + version = "3.19.1"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = pname; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-NKDcY/HRAbroT6onHdLP6oolEzWoCC+Jlf+Ec5bFDDc="; + hash = "sha256-LUD0Eoj7fDGiR0yhIZOto6kn7Ud0TXyDTO1UTbRMJiQ="; }; nativeCheckInputs = [ diff --git a/pkgs/development/python-modules/sphinx-issues/default.nix b/pkgs/development/python-modules/sphinx-issues/default.nix new file mode 100644 index 000000000000..4ea94b761890 --- /dev/null +++ b/pkgs/development/python-modules/sphinx-issues/default.nix @@ -0,0 +1,36 @@ +{ lib, buildPythonPackage, sphinx, fetchFromGitHub, pandoc }: + +buildPythonPackage rec { + pname = "sphinx-issues"; + version = "3.0.1"; + outputs = [ "out" "doc" ]; + + src = fetchFromGitHub { + owner = "sloria"; + repo = "sphinx-issues"; + rev = version; + sha256 = "1lns6isq9kwcw8z4jwgy927f7idx9srvri5adaa5zmypw5x47hha"; + }; + + pythonImportsCheck = [ "sphinx_issues" ]; + + propagatedBuildInputs = [ sphinx ]; + + nativeBuildInputs = [ pandoc ]; + + postBuild = '' + pandoc -f rst -t html --standalone < README.rst > README.html + ''; + + postInstall = '' + mkdir -p $doc/share/doc/$name/html + cp README.html $doc/share/doc/$name/html + ''; + + meta = with lib; { + homepage = "https://github.com/sloria/sphinx-issues"; + description = "Sphinx extension for linking to your project's issue tracker."; + license = licenses.mit; + maintainers = with maintainers; [ kaction ]; + }; +} diff --git a/pkgs/development/python-modules/sphinxcontrib-log-cabinet/default.nix b/pkgs/development/python-modules/sphinxcontrib-log-cabinet/default.nix new file mode 100644 index 000000000000..867d5acc9bae --- /dev/null +++ b/pkgs/development/python-modules/sphinxcontrib-log-cabinet/default.nix @@ -0,0 +1,27 @@ +{ lib, buildPythonPackage, fetchFromGitHub, sphinx }: + +buildPythonPackage rec { + pname = "sphinxcontrib-log-cabinet"; + version = "1.0.1"; + format = "setuptools"; + + src = fetchFromGitHub { + owner = "davidism"; + repo = "sphinxcontrib-log-cabinet"; + rev = "refs/tags/${version}"; + sha256 = "03cxspgqsap9q74sqkdx6r6b4gs4hq6dpvx4j58hm50yfhs06wn1"; + }; + + propagatedBuildInputs = [ sphinx ]; + + pythonImportsCheck = [ "sphinxcontrib.log_cabinet" ]; + + doCheck = false; # no tests + + meta = with lib; { + homepage = "https://github.com/davidism/sphinxcontrib-log-cabinet"; + description = "Sphinx extension to organize changelogs"; + license = licenses.mit; + maintainers = with maintainers; [ kaction ]; + }; +} diff --git a/pkgs/development/python-modules/sqlparse/default.nix b/pkgs/development/python-modules/sqlparse/default.nix index 4e668bed7163..193fa3439b56 100644 --- a/pkgs/development/python-modules/sqlparse/default.nix +++ b/pkgs/development/python-modules/sqlparse/default.nix @@ -1,6 +1,7 @@ { lib , buildPythonPackage , fetchPypi +, flit-core , installShellFiles , pytestCheckHook , isPy3k @@ -8,16 +9,18 @@ buildPythonPackage rec { pname = "sqlparse"; - version = "0.4.3"; + version = "0.4.4"; disabled = !isPy3k; src = fetchPypi { inherit pname version; - hash = "sha256-acqASEa7EU0uw4DkNgqKNA24PwzPOvzusUBN8Cj1cmg="; + hash = "sha256-1EYYPoS4NJ+jBh8P5/BsqUumW0JpRv/r5uPoKVMyQgw="; }; - nativeBuildInputs = [ installShellFiles ]; + format = "pyproject"; + + nativeBuildInputs = [ flit-core installShellFiles ]; nativeCheckInputs = [ pytestCheckHook ]; diff --git a/pkgs/development/tools/spirv-tools/default.nix b/pkgs/development/tools/spirv-tools/default.nix index 5ffda91a460e..c9061da1c180 100644 --- a/pkgs/development/tools/spirv-tools/default.nix +++ b/pkgs/development/tools/spirv-tools/default.nix @@ -2,12 +2,12 @@ stdenv.mkDerivation rec { pname = "spirv-tools"; - version = "1.3.243.0"; + version = "2023.2"; src = fetchFromGitHub { owner = "KhronosGroup"; repo = "SPIRV-Tools"; - rev = "sdk-${version}"; + rev = "v${version}"; hash = "sha256-l44Ru0WjROQEDNU/2YQJGti1uDZP9osRdfsXus5EGX0="; }; @@ -41,6 +41,5 @@ stdenv.mkDerivation rec { license = licenses.asl20; platforms = platforms.unix; maintainers = [ maintainers.ralith ]; - broken = (version != spirv-headers.version); }; } diff --git a/pkgs/os-specific/linux/numactl/default.nix b/pkgs/os-specific/linux/numactl/default.nix index 28157ffe1677..998b7d052b35 100644 --- a/pkgs/os-specific/linux/numactl/default.nix +++ b/pkgs/os-specific/linux/numactl/default.nix @@ -11,6 +11,8 @@ stdenv.mkDerivation rec { sha256 = "sha256-aDKzkmvrPDzQl4n0KgeiU5LOLhQA0tmwzGiXvJDp7ZI="; }; + outputs = [ "out" "dev" "man" ]; + nativeBuildInputs = [ autoreconfHook ]; postPatch = '' diff --git a/pkgs/stdenv/cross/default.nix b/pkgs/stdenv/cross/default.nix index bf410ec0a684..a2ebd5c35f9f 100644 --- a/pkgs/stdenv/cross/default.nix +++ b/pkgs/stdenv/cross/default.nix @@ -72,7 +72,7 @@ in lib.init bootStages ++ [ else if crossSystem.isDarwin then buildPackages.llvmPackages.libcxxClang else if crossSystem.useLLVM or false - then buildPackages.llvmPackages.clangUseLLVM + then buildPackages.llvmPackages.clang else buildPackages.gcc; extraNativeBuildInputs = old.extraNativeBuildInputs diff --git a/pkgs/tools/graphics/gnuplot/default.nix b/pkgs/tools/graphics/gnuplot/default.nix index 5f96eb9f8d22..c95ec79534eb 100644 --- a/pkgs/tools/graphics/gnuplot/default.nix +++ b/pkgs/tools/graphics/gnuplot/default.nix @@ -53,11 +53,18 @@ in CXXFLAGS = lib.optionalString (stdenv.isDarwin && withQt) "-std=c++11"; + # we'll wrap things ourselves + dontWrapGApps = true; + dontWrapQtApps = true; + + # binary wrappers don't support --run postInstall = lib.optionalString withX '' - wrapProgram $out/bin/gnuplot \ + wrapProgramShell $out/bin/gnuplot \ --prefix PATH : '${gnused}/bin' \ --prefix PATH : '${coreutils}/bin' \ --prefix PATH : '${fontconfig.bin}/bin' \ + "''${gappsWrapperArgs[@]}" \ + "''${qtWrapperArgs[@]}" \ --run '. ${./set-gdfontpath-from-fontconfig.sh}' ''; diff --git a/pkgs/tools/security/gnupg/24.nix b/pkgs/tools/security/gnupg/24.nix index ee4e5d277b73..f92a61f3ac4e 100644 --- a/pkgs/tools/security/gnupg/24.nix +++ b/pkgs/tools/security/gnupg/24.nix @@ -12,11 +12,11 @@ assert guiSupport -> enableMinimal == false; stdenv.mkDerivation rec { pname = "gnupg"; - version = "2.4.0"; + version = "2.4.1"; src = fetchurl { url = "mirror://gnupg/gnupg/${pname}-${version}.tar.bz2"; - hash = "sha256-HXkVjdAdmSQx3S4/rLif2slxJ/iXhOosthDGAPsMFIM="; + hash = "sha256-drceWutEO/2RDOnLyCgbYXyDQWh6+2e65FWHeXK1neg="; }; depsBuildBuild = [ buildPackages.stdenv.cc ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 19385f82f644..6b9e708c5462 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20426,7 +20426,8 @@ with pkgs; libcCrossChooser = name: # libc is hackily often used from the previous stage. This `or` # hack fixes the hack, *sigh*. - /**/ if name == "glibc" then targetPackages.glibcCross or glibcCross + /**/ if name == null then null + else if name == "glibc" then targetPackages.glibcCross or glibcCross else if name == "bionic" then targetPackages.bionic or bionic else if name == "uclibc" then targetPackages.uclibcCross or uclibcCross else if name == "avrlibc" then targetPackages.avrlibcCross or avrlibcCross @@ -20445,7 +20446,6 @@ with pkgs; else if name == "nblibc" then targetPackages.netbsdCross.libc or netbsdCross.libc else if name == "wasilibc" then targetPackages.wasilibc or wasilibc else if name == "relibc" then targetPackages.relibc or relibc - else if stdenv.targetPlatform.isGhcjs then null else throw "Unknown libc ${name}"; libcCross = assert stdenv.targetPlatform != stdenv.buildPlatform; libcCrossChooser stdenv.targetPlatform.libc; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index bc2bb0ced484..d5b94012215a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -11267,6 +11267,8 @@ self: super: with self; { inherit (pkgs) mscgen; }; + sphinxcontrib-log-cabinet = callPackage ../development/python-modules/sphinxcontrib-log-cabinet { }; + sphinxcontrib-nwdiag = callPackage ../development/python-modules/sphinxcontrib-nwdiag { }; sphinxcontrib_newsfeed = callPackage ../development/python-modules/sphinxcontrib_newsfeed { }; @@ -11311,6 +11313,8 @@ self: super: with self; { sphinx-inline-tabs = callPackage ../development/python-modules/sphinx-inline-tabs { }; + sphinx-issues = callPackage ../development/python-modules/sphinx-issues { }; + sphinx-jinja = callPackage ../development/python-modules/sphinx-jinja { }; sphinx-markdown-parser = callPackage ../development/python-modules/sphinx-markdown-parser { };