diff --git a/doc/stdenv/stdenv.chapter.md b/doc/stdenv/stdenv.chapter.md
index 166587d3284..4fad249097c 100644
--- a/doc/stdenv/stdenv.chapter.md
+++ b/doc/stdenv/stdenv.chapter.md
@@ -1140,6 +1140,13 @@ Here are some more packages that provide a setup hook. Since the list of hooks i
Many other packages provide hooks, that are not part of `stdenv`. You can find
these in the [Hooks Reference](#chap-hooks).
+### Compiler and Linker wrapper hooks {#compiler-linker-wrapper-hooks}
+
+If the file `${cc}/nix-support/cc-wrapper-hook` exists, it will be run at the end of the [compiler wrapper](#cc-wrapper).
+If the file `${binutils}/nix-support/post-link-hook` exists, it will be run at the end of the linker wrapper.
+These hooks allow a user to inject code into the wrappers.
+As an example, these hooks can be used to extract `extraBefore`, `params` and `extraAfter` which store all the command line arguments passed to the compiler and linker respectively.
+
## Purity in Nixpkgs {#sec-purity-in-nixpkgs}
*Measures taken to prevent dependencies on packages outside the store, and what you can do to prevent them.*
diff --git a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml
index b731b8b72a3..f9478fbf83d 100644
--- a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml
+++ b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml
@@ -1171,6 +1171,19 @@
Add udev rules for the Teensy family of microcontrollers.
+
+
+ The Qt QML disk cache is now disabled by default. This fixes a
+ long-standing issue where updating Qt/KDE apps would sometimes
+ cause them to crash or behave strangely without explanation.
+ Those concerned about the small (~10%) performance hit to
+ application startup can re-enable the cache (and expose
+ themselves to gremlins) by setting the envrionment variable
+ QML_FORCE_DISK_CACHE to
+ 1 using e.g. the
+ environment.sessionVariables NixOS option.
+
+
systemd-oomd is enabled by default. Depending on which systemd
diff --git a/nixos/doc/manual/release-notes/rl-2211.section.md b/nixos/doc/manual/release-notes/rl-2211.section.md
index 0f0e3c7a2e5..298eaabc10d 100644
--- a/nixos/doc/manual/release-notes/rl-2211.section.md
+++ b/nixos/doc/manual/release-notes/rl-2211.section.md
@@ -354,6 +354,14 @@ Available as [services.patroni](options.html#opt-services.patroni.enable).
- Add udev rules for the Teensy family of microcontrollers.
+- The Qt QML disk cache is now disabled by default. This fixes a
+ long-standing issue where updating Qt/KDE apps would sometimes cause
+ them to crash or behave strangely without explanation. Those concerned
+ about the small (~10%) performance hit to application startup can
+ re-enable the cache (and expose themselves to gremlins) by setting the
+ envrionment variable `QML_FORCE_DISK_CACHE` to `1` using e.g. the
+ `environment.sessionVariables` NixOS option.
+
- systemd-oomd is enabled by default. Depending on which systemd units have
`ManagedOOMSwap=kill` or `ManagedOOMMemoryPressure=kill`, systemd-oomd will
SIGKILL all the processes under the appropriate descendant cgroups when the
diff --git a/nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares.nix b/nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares.nix
index 8a6d30d1801..288cbc94a32 100644
--- a/nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares.nix
+++ b/nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares.nix
@@ -16,5 +16,10 @@ in
calamares-nixos-extensions
# Needed for calamares QML module packagechooserq
libsForQt5.full
+ # Get list of locales
+ glibcLocales
];
+
+ # Support choosing from any locale
+ i18n.supportedLocales = [ "all" ];
}
diff --git a/nixos/modules/services/x11/display-managers/sddm.nix b/nixos/modules/services/x11/display-managers/sddm.nix
index 34239221315..e86a18ff618 100644
--- a/nixos/modules/services/x11/display-managers/sddm.nix
+++ b/nixos/modules/services/x11/display-managers/sddm.nix
@@ -269,20 +269,5 @@ in
# To enable user switching, allow sddm to allocate TTYs/displays dynamically.
services.xserver.tty = null;
services.xserver.display = null;
-
- systemd.tmpfiles.rules = [
- # Prior to Qt 5.9.2, there is a QML cache invalidation bug which sometimes
- # strikes new Plasma 5 releases. If the QML cache is not invalidated, SDDM
- # will segfault without explanation. We really tore our hair out for awhile
- # before finding the bug:
- # https://bugreports.qt.io/browse/QTBUG-62302
- # We work around the problem by deleting the QML cache before startup.
- # This was supposedly fixed in Qt 5.9.2 however it has been reported with
- # 5.10 and 5.11 as well. The initial workaround was to delete the directory
- # in the Xsetup script but that doesn't do anything.
- # Instead we use tmpfiles.d to ensure it gets wiped.
- # This causes a small but perceptible delay when SDDM starts.
- "e ${config.users.users.sddm.home}/.cache - - - 0"
- ];
};
}
diff --git a/pkgs/applications/audio/flac/default.nix b/pkgs/applications/audio/flac/default.nix
index bebb35f4500..be987fccd66 100644
--- a/pkgs/applications/audio/flac/default.nix
+++ b/pkgs/applications/audio/flac/default.nix
@@ -10,12 +10,12 @@
stdenv.mkDerivation rec {
pname = "flac";
- version = "1.4.1";
+ version = "1.4.2";
src = fetchurl {
url = "http://downloads.xiph.org/releases/flac/${pname}-${version}.tar.xz";
# Official checksum is published at https://github.com/xiph/flac/releases/tag/${version}
- sha256 = "91303c3e5dfde52c3e94e75976c0ab3ee14ced278ab8f60033a3a12db9209ae6";
+ sha256 = "sha256-4yLVih9I0j2d049DJnKGX2955zpvnMWl9X/KqD61qOQ=";
};
nativeBuildInputs = [
@@ -43,6 +43,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
homepage = "https://xiph.org/flac/";
description = "Library and tools for encoding and decoding the FLAC lossless audio file format";
+ changelog = "https://xiph.org/flac/changelog.html";
platforms = platforms.all;
license = licenses.bsd3;
maintainers = with maintainers; [ ruuda ];
diff --git a/pkgs/build-support/cc-wrapper/cc-wrapper.sh b/pkgs/build-support/cc-wrapper/cc-wrapper.sh
index 78759f2cfbb..cf9a351f395 100644
--- a/pkgs/build-support/cc-wrapper/cc-wrapper.sh
+++ b/pkgs/build-support/cc-wrapper/cc-wrapper.sh
@@ -219,6 +219,12 @@ fi
PATH="$path_backup"
# Old bash workaround, see above.
+# if a cc-wrapper-hook exists, run it.
+if [[ -e @out@/nix-support/cc-wrapper-hook ]]; then
+ compiler=@prog@
+ source @out@/nix-support/cc-wrapper-hook
+fi
+
if (( "${NIX_CC_USE_RESPONSE_FILE:-@use_response_file_by_default@}" >= 1 )); then
exec @prog@ @<(printf "%q\n" \
${extraBefore+"${extraBefore[@]}"} \
diff --git a/pkgs/build-support/rust/hooks/cargo-setup-hook.sh b/pkgs/build-support/rust/hooks/cargo-setup-hook.sh
index b85796e2a41..aeddeef29d9 100644
--- a/pkgs/build-support/rust/hooks/cargo-setup-hook.sh
+++ b/pkgs/build-support/rust/hooks/cargo-setup-hook.sh
@@ -27,7 +27,7 @@ cargoSetupPostUnpackHook() {
cat ${tmp_config} >> .cargo/config
cat >> .cargo/config <<'EOF'
- @rustTarget@
+ @cargoConfig@
EOF
echo "Finished cargoSetupPostUnpackHook"
diff --git a/pkgs/build-support/rust/hooks/default.nix b/pkgs/build-support/rust/hooks/default.nix
index 652b074c302..9d3fc9b126e 100644
--- a/pkgs/build-support/rust/hooks/default.nix
+++ b/pkgs/build-support/rust/hooks/default.nix
@@ -68,15 +68,37 @@ in {
# The `.nativeDrv` stanza works like nativeBuildInputs and ensures cross-compiling has the right version available.
diff = "${diffutils.nativeDrv or diffutils}/bin/diff";
- # Target platform
- rustTarget = ''
- [target."${rust.toRustTarget stdenv.buildPlatform}"]
+ # We want to specify the correct crt-static flag for both
+ # the build and host platforms. This is important when the wanted
+ # value for crt-static does not match the defaults in the rustc target,
+ # like for pkgsMusl or pkgsCross.musl64; Upstream rustc still assumes
+ # that musl = static[1].
+ #
+ # By default, Cargo doesn't apply RUSTFLAGS when building build.rs
+ # if --target is passed, so the only good way to set crt-static for
+ # build.rs files is to use the unstable -Zhost-config Cargo feature.
+ # This allows us to specify flags that should be passed to rustc
+ # when building for the build platform. We also need to use
+ # -Ztarget-applies-to-host, because using -Zhost-config requires it.
+ #
+ # When doing this, we also have to specify the linker, or cargo
+ # won't pass a -C linker= argument to rustc. This will make rustc
+ # try to use its default value of "cc", which won't be available
+ # when cross-compiling.
+ #
+ # [1]: https://github.com/rust-lang/compiler-team/issues/422
+ cargoConfig = ''
+ [host]
"linker" = "${ccForBuild}"
- ${lib.optionalString (stdenv.buildPlatform.config != stdenv.hostPlatform.config) ''
- [target."${shortTarget}"]
- "linker" = "${ccForHost}"
- ''}
+ "rustflags" = [ "-C", "target-feature=${if stdenv.buildPlatform.isStatic then "+" else "-"}crt-static" ]
+
+ [target."${shortTarget}"]
+ "linker" = "${ccForHost}"
"rustflags" = [ "-C", "target-feature=${if stdenv.hostPlatform.isStatic then "+" else "-"}crt-static" ]
+
+ [unstable]
+ host-config = true
+ target-applies-to-host = true
'';
};
} ./cargo-setup-hook.sh) {};
diff --git a/pkgs/data/misc/tzdata/default.nix b/pkgs/data/misc/tzdata/default.nix
index 2d5100906ed..1453b3899ef 100644
--- a/pkgs/data/misc/tzdata/default.nix
+++ b/pkgs/data/misc/tzdata/default.nix
@@ -1,17 +1,17 @@
-{ lib, stdenv, fetchurl, buildPackages }:
+{ lib, stdenv, fetchurl, fetchpatch, buildPackages }:
stdenv.mkDerivation rec {
pname = "tzdata";
- version = "2022e";
+ version = "2022f";
srcs = [
(fetchurl {
url = "https://data.iana.org/time-zones/releases/tzdata${version}.tar.gz";
- hash = "sha256-jeTCaG3OPRqukDBxnmgUkxwhai1eiR7D0zLm9lFq7M0=";
+ hash = "sha256-mZDXH2ddISVnuTH+iq4cq3An+J/vuKedgIppM6Z68AA=";
})
(fetchurl {
url = "https://data.iana.org/time-zones/releases/tzcode${version}.tar.gz";
- hash = "sha256-1AKAJTmA6JFo5r5CdahSv5UhUk1HaE3jE1uaXKOHcQs=";
+ hash = "sha256-5FQ+kPhPkfqCgJ6piTAFL9vBOIDIpiPuOk6qQvimTBU=";
})
];
@@ -19,6 +19,17 @@ stdenv.mkDerivation rec {
patches = lib.optionals stdenv.hostPlatform.isWindows [
./0001-Add-exe-extension-for-MS-Windows-binaries.patch
+ ] ++ [
+ (fetchpatch {
+ name = "fix-get-random-on-osx-1.patch";
+ url = "https://github.com/eggert/tz/commit/5db8b3ba4816ccb8f4ffeb84f05b99e87d3b1be6.patch";
+ hash = "sha256-FevGjiSahYwEjRUTvRY0Y6/jUO4YHiTlAAPixzEy5hw=";
+ })
+ (fetchpatch {
+ name = "fix-get-random-on-osx-2.patch";
+ url = "https://github.com/eggert/tz/commit/841183210311b1d4ffb4084bfde8fa8bdf3e6757.patch";
+ hash = "sha256-1tUTZBMT7V463P7eygpFS6/k5gTeeXumk5+V4gdKpEI=";
+ })
];
outputs = [ "out" "bin" "man" "dev" ];
diff --git a/pkgs/development/compilers/llvm/10/compiler-rt/default.nix b/pkgs/development/compilers/llvm/10/compiler-rt/default.nix
index 0302f2ad309..e356a27b78b 100644
--- a/pkgs/development/compilers/llvm/10/compiler-rt/default.nix
+++ b/pkgs/development/compilers/llvm/10/compiler-rt/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
"-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON"
"-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}"
"-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}"
- ] ++ lib.optionals (haveLibc && !isMusl) [
+ ] ++ lib.optionals (haveLibc && stdenv.hostPlatform.isGnu) [
"-DSANITIZER_COMMON_CFLAGS=-I${libxcrypt}/include"
] ++ lib.optionals (useLLVM || bareMetal || isMusl) [
"-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
diff --git a/pkgs/development/compilers/llvm/11/compiler-rt/default.nix b/pkgs/development/compilers/llvm/11/compiler-rt/default.nix
index e4ba52030ba..a8205213c89 100644
--- a/pkgs/development/compilers/llvm/11/compiler-rt/default.nix
+++ b/pkgs/development/compilers/llvm/11/compiler-rt/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
"-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON"
"-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}"
"-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}"
- ] ++ lib.optionals (haveLibc && !isMusl) [
+ ] ++ lib.optionals (haveLibc && stdenv.hostPlatform.isGnu) [
"-DSANITIZER_COMMON_CFLAGS=-I${libxcrypt}/include"
] ++ lib.optionals (useLLVM || bareMetal || isMusl || isNewDarwinBootstrap) [
"-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
diff --git a/pkgs/development/compilers/llvm/12/compiler-rt/default.nix b/pkgs/development/compilers/llvm/12/compiler-rt/default.nix
index ed34d06ed98..a372030b3f8 100644
--- a/pkgs/development/compilers/llvm/12/compiler-rt/default.nix
+++ b/pkgs/development/compilers/llvm/12/compiler-rt/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
"-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON"
"-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}"
"-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}"
- ] ++ lib.optionals (haveLibc && !isMusl) [
+ ] ++ lib.optionals (haveLibc && stdenv.hostPlatform.isGnu) [
"-DSANITIZER_COMMON_CFLAGS=-I${libxcrypt}/include"
] ++ lib.optionals (useLLVM || bareMetal || isMusl) [
"-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
diff --git a/pkgs/development/compilers/llvm/13/compiler-rt/default.nix b/pkgs/development/compilers/llvm/13/compiler-rt/default.nix
index 9124686705a..798280f0c1c 100644
--- a/pkgs/development/compilers/llvm/13/compiler-rt/default.nix
+++ b/pkgs/development/compilers/llvm/13/compiler-rt/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
"-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON"
"-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}"
"-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}"
- ] ++ lib.optionals (haveLibc && !isMusl) [
+ ] ++ lib.optionals (haveLibc && stdenv.hostPlatform.isGnu) [
"-DSANITIZER_COMMON_CFLAGS=-I${libxcrypt}/include"
] ++ lib.optionals (useLLVM || bareMetal || isMusl || isAarch64) [
"-DCOMPILER_RT_BUILD_LIBFUZZER=OFF"
diff --git a/pkgs/development/compilers/llvm/14/compiler-rt/default.nix b/pkgs/development/compilers/llvm/14/compiler-rt/default.nix
index ef2495714e4..669c6bbb958 100644
--- a/pkgs/development/compilers/llvm/14/compiler-rt/default.nix
+++ b/pkgs/development/compilers/llvm/14/compiler-rt/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation {
"-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON"
"-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}"
"-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}"
- ] ++ lib.optionals (haveLibc && !isMusl) [
+ ] ++ lib.optionals (haveLibc && stdenv.hostPlatform.isGnu) [
"-DSANITIZER_COMMON_CFLAGS=-I${libxcrypt}/include"
] ++ lib.optionals (useLLVM || bareMetal || isMusl) [
"-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
diff --git a/pkgs/development/compilers/rust/cargo.nix b/pkgs/development/compilers/rust/cargo.nix
index 6a4d01de5ef..2c9a3b1af47 100644
--- a/pkgs/development/compilers/rust/cargo.nix
+++ b/pkgs/development/compilers/rust/cargo.nix
@@ -75,7 +75,5 @@ rustPlatform.buildRustPackage {
maintainers = with maintainers; [ retrry ];
license = [ licenses.mit licenses.asl20 ];
platforms = platforms.unix;
- # weird segfault in a build script
- broken = stdenv.targetPlatform.isMusl && !stdenv.targetPlatform.isStatic;
};
}
diff --git a/pkgs/development/interpreters/python/cpython/2.7/default.nix b/pkgs/development/interpreters/python/cpython/2.7/default.nix
index 7da2a0047f3..30b7732ed51 100644
--- a/pkgs/development/interpreters/python/cpython/2.7/default.nix
+++ b/pkgs/development/interpreters/python/cpython/2.7/default.nix
@@ -8,7 +8,7 @@
, openssl
, readline
, sqlite
-, tcl ? null, tk ? null, tix ? null, xlibsWrapper ? null, libX11 ? null, x11Support ? false
+, tcl ? null, tk ? null, tix ? null, libX11 ? null, x11Support ? false
, zlib
, self
, configd, coreutils
@@ -36,7 +36,6 @@
assert x11Support -> tcl != null
&& tk != null
- && xlibsWrapper != null
&& libX11 != null;
assert lib.assertMsg (enableOptimizations -> (!stdenv.cc.isClang))
@@ -234,7 +233,7 @@ let
++ optional (stdenv.hostPlatform.isCygwin || stdenv.hostPlatform.isAarch64) libffi
++ optional stdenv.hostPlatform.isCygwin expat
++ [ db gdbm ncurses sqlite readline ]
- ++ optionals x11Support [ tcl tk xlibsWrapper libX11 ]
+ ++ optionals x11Support [ tcl tk libX11 ]
++ optional (stdenv.isDarwin && configd != null) configd;
nativeBuildInputs =
[ autoreconfHook ]
diff --git a/pkgs/development/interpreters/python/hooks/python-relax-deps-hook.sh b/pkgs/development/interpreters/python/hooks/python-relax-deps-hook.sh
index d404c6021f4..31bdec914f6 100644
--- a/pkgs/development/interpreters/python/hooks/python-relax-deps-hook.sh
+++ b/pkgs/development/interpreters/python/hooks/python-relax-deps-hook.sh
@@ -22,6 +22,24 @@
# # pythonRemoveDeps = true;
# …
# }
+#
+# IMPLEMENTATION NOTES:
+#
+# The "Requires-Dist" dependency specification format is described in PEP 508.
+# Examples that the regular expressions in this hook needs to support:
+#
+# Requires-Dist: foo
+# -> foo
+# Requires-Dist: foo[optional]
+# -> foo[optional]
+# Requires-Dist: foo[optional]~=1.2.3
+# -> foo[optional]
+# Requires-Dist: foo[optional, xyz] (~=1.2.3)
+# -> foo[optional, xyz]
+# Requires-Dist: foo[optional]~=1.2.3 ; os_name = "posix"
+# -> foo[optional] ; os_name = "posix"
+#
+# Currently unsupported: URL specs (foo @ https://example.com/a.zip).
_pythonRelaxDeps() {
local -r metadata_file="$1"
@@ -30,11 +48,11 @@ _pythonRelaxDeps() {
return
elif [[ "$pythonRelaxDeps" == 1 ]]; then
sed -i "$metadata_file" -r \
- -e 's/(Requires-Dist: \S*) \(.*\)/\1/'
+ -e 's/(Requires-Dist: [a-zA-Z0-9_.-]+\s*(\[[^]]+\])?)[^;]*(;.*)?/\1\3/'
else
for dep in $pythonRelaxDeps; do
sed -i "$metadata_file" -r \
- -e "s/(Requires-Dist: $dep) \(.*\)/\1/"
+ -e "s/(Requires-Dist: $dep\s*(\[[^]]+\])?)[^;]*(;.*)?/\1\3/"
done
fi
}
diff --git a/pkgs/development/libraries/aws-sdk-cpp/default.nix b/pkgs/development/libraries/aws-sdk-cpp/default.nix
index 5d5c5e95602..efe8129d3b4 100644
--- a/pkgs/development/libraries/aws-sdk-cpp/default.nix
+++ b/pkgs/development/libraries/aws-sdk-cpp/default.nix
@@ -45,6 +45,11 @@ stdenv.mkDerivation rec {
];
postPatch = ''
+ # Avoid blanket -Werror to evade build failures on less
+ # tested compilers.
+ substituteInPlace cmake/compiler_settings.cmake \
+ --replace '"-Werror"' ' '
+
# Missing includes for GCC11
sed '5i#include ' -i \
aws-cpp-sdk-cloudfront-integration-tests/CloudfrontOperationTest.cpp \
diff --git a/pkgs/development/libraries/cppunit/default.nix b/pkgs/development/libraries/cppunit/default.nix
index 3cafa1c75d7..fba624a861d 100644
--- a/pkgs/development/libraries/cppunit/default.nix
+++ b/pkgs/development/libraries/cppunit/default.nix
@@ -9,6 +9,10 @@ stdenv.mkDerivation rec {
sha256 = "19qpqzy66bq76wcyadmi3zahk5v1ll2kig1nvg96zx9padkcdic9";
};
+ # Avoid blanket -Werror to evade build failures on less
+ # tested compilers.
+ configureFlags = [ "--disable-werror" ];
+
meta = with lib; {
homepage = "https://freedesktop.org/wiki/Software/cppunit/";
description = "C++ unit testing framework";
diff --git a/pkgs/development/libraries/expat/default.nix b/pkgs/development/libraries/expat/default.nix
index 71841e0cfbc..ac6e9bfdc38 100644
--- a/pkgs/development/libraries/expat/default.nix
+++ b/pkgs/development/libraries/expat/default.nix
@@ -16,11 +16,11 @@
stdenv.mkDerivation rec {
pname = "expat";
- version = "2.4.9";
+ version = "2.5.0";
src = fetchurl {
url = "https://github.com/libexpat/libexpat/releases/download/R_${lib.replaceStrings ["."] ["_"] version}/${pname}-${version}.tar.xz";
- sha256 = "sha256-bowHKP5cfNP5OmrM5DBGxeRzbHtLaOAy6TUNqg78A1Q=";
+ sha256 = "1gnwihpfz4x18rwd6cbrdggmfqjzwsdfh1gpmc0ph21c4gq2097g";
};
strictDeps = true;
diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix
index 45d8ee69a02..8e3d1a45dbe 100644
--- a/pkgs/development/libraries/glib/default.nix
+++ b/pkgs/development/libraries/glib/default.nix
@@ -7,11 +7,9 @@
# this is just for tests (not in the closure of any regular package)
, coreutils, dbus, libxml2, tzdata
, desktop-file-utils, shared-mime-info
-, darwin, fetchpatch
+, darwin
}:
-with lib;
-
assert stdenv.isLinux -> util-linuxMinimal != null;
# TODO:
@@ -40,20 +38,22 @@ let
done
ln -sr -t "''${!outputInclude}/include/" "''${!outputInclude}"/lib/*/include/* 2>/dev/null || true
'';
+
+ buildDocs = stdenv.hostPlatform == stdenv.buildPlatform && !stdenv.hostPlatform.isStatic;
in
stdenv.mkDerivation (finalAttrs: {
pname = "glib";
- version = "2.74.0";
+ version = "2.74.1";
src = fetchurl {
url = "mirror://gnome/sources/glib/${lib.versions.majorMinor finalAttrs.version}/glib-${finalAttrs.version}.tar.xz";
- sha256 = "NlLH8HLXsDGmte3WI/d+vF3NKuaYWYq8yJ/znKda3TA=";
+ sha256 = "CrmBYY0dtHhF5WQXsNfBI/gaNCeyuck/Wkb/W7uWSWQ=";
};
- patches = optionals stdenv.isDarwin [
+ patches = lib.optionals stdenv.isDarwin [
./darwin-compilation.patch
- ] ++ optionals stdenv.hostPlatform.isMusl [
+ ] ++ lib.optionals stdenv.hostPlatform.isMusl [
./quark_init_on_demand.patch
./gobject_init_on_demand.patch
] ++ [
@@ -90,29 +90,8 @@ stdenv.mkDerivation (finalAttrs: {
# * gio-launch-desktop
./split-dev-programs.patch
- # Fix build on Darwin
- # https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2914
- (fetchpatch {
- name = "gio-properly-guard-use-of-utimensat.patch";
- url = "https://gitlab.gnome.org/GNOME/glib/-/commit/7f7171e68a420991b537d3e9e63263a0b2871618.patch";
- sha256 = "kKEqmBqx/RlvFT3eixu+NnM7JXhHb34b9NLRfAt+9h0=";
- })
-
- # https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2866
- (fetchpatch {
- name = "tests-skip-g-file-info-test-if-atime-unsupported.patch";
- url = "https://gitlab.gnome.org/qyliss/glib/-/commit/339a06d66685107280ca6bdca5da5d96b8222fb5.patch";
- sha256 = "sha256-/NdFkuiJvyass3jTDEJPeciA2Lwe53IUd3kAnKAvTaw=";
- })
- # https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2867
- ./tests-skip-shared-libs-if-default_library-static.patch
-
- # https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2921
- (fetchpatch {
- url = "https://gitlab.gnome.org/GNOME/glib/-/commit/f0dd96c28751f15d0703b384bfc7c314af01caa8.patch";
- sha256 = "sha256-8ucHS6ZnJuP6ajGb4/L8QfhC49FTQG1kAGHVdww/YYE=";
- })
-
+ # Disable flaky test.
+ # https://gitlab.gnome.org/GNOME/glib/-/issues/820
./skip-timer-test.patch
];
@@ -124,14 +103,14 @@ stdenv.mkDerivation (finalAttrs: {
libelf
finalAttrs.setupHook
pcre2
- ] ++ optionals (!stdenv.hostPlatform.isWindows) [
+ ] ++ lib.optionals (!stdenv.hostPlatform.isWindows) [
bash gnum4 # install glib-gettextize and m4 macros for other apps to use
- ] ++ optionals stdenv.isLinux [
+ ] ++ lib.optionals stdenv.isLinux [
libselinux
util-linuxMinimal # for libmount
- ] ++ optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+ ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
AppKit Carbon Cocoa CoreFoundation CoreServices Foundation
- ]) ++ optionals (stdenv.hostPlatform == stdenv.buildPlatform) [
+ ]) ++ lib.optionals buildDocs [
# Note: this needs to be both in buildInputs and nativeBuildInputs. The
# Meson gtkdoc module uses find_program to look it up (-> build dep), but
# glib's own Meson configuration uses the host pkg-config to find its
@@ -147,10 +126,18 @@ stdenv.mkDerivation (finalAttrs: {
strictDeps = true;
nativeBuildInputs = [
- (buildPackages.meson.override {
- withDarwinFrameworksGtkDocPatch = stdenv.isDarwin;
- })
- ninja pkg-config perl python3 gettext gtk-doc docbook_xsl docbook_xml_dtd_45 libxml2 libxslt
+ meson
+ ninja
+ pkg-config
+ perl
+ python3
+ gettext
+ ] ++ lib.optionals buildDocs [
+ gtk-doc
+ docbook_xsl
+ docbook_xml_dtd_45
+ libxml2
+ libxslt
];
propagatedBuildInputs = [ zlib libffi gettext libiconv ];
@@ -158,10 +145,10 @@ stdenv.mkDerivation (finalAttrs: {
mesonFlags = [
# Avoid the need for gobject introspection binaries in PATH in cross-compiling case.
# Instead we just copy them over from the native output.
- "-Dgtk_doc=${boolToString (stdenv.hostPlatform == stdenv.buildPlatform)}"
+ "-Dgtk_doc=${lib.boolToString buildDocs}"
"-Dnls=enabled"
"-Ddevbindir=${placeholder "dev"}/bin"
- ] ++ optionals (!stdenv.isDarwin) [
+ ] ++ lib.optionals (!stdenv.isDarwin) [
"-Dman=true" # broken on Darwin
];
@@ -215,7 +202,7 @@ stdenv.mkDerivation (finalAttrs: {
for i in $dev/bin/*; do
moveToOutput "share/bash-completion/completions/''${i##*/}" "$dev"
done
- '' + optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
+ '' + lib.optionalString (!buildDocs) ''
cp -r ${buildPackages.glib.devdoc} $devdoc
'';
@@ -230,7 +217,7 @@ stdenv.mkDerivation (finalAttrs: {
checkInputs = [ tzdata desktop-file-utils shared-mime-info ];
- preCheck = optionalString finalAttrs.doCheck or config.doCheckByDefault or false ''
+ preCheck = lib.optionalString finalAttrs.doCheck or config.doCheckByDefault or false ''
export LD_LIBRARY_PATH="$NIX_BUILD_TOP/glib-${finalAttrs.version}/glib/.libs''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH"
export TZDIR="${tzdata}/share/zoneinfo"
export XDG_CACHE_HOME="$TMP"
diff --git a/pkgs/development/libraries/glib/tests-skip-shared-libs-if-default_library-static.patch b/pkgs/development/libraries/glib/tests-skip-shared-libs-if-default_library-static.patch
deleted file mode 100644
index 106ba4f99a9..00000000000
--- a/pkgs/development/libraries/glib/tests-skip-shared-libs-if-default_library-static.patch
+++ /dev/null
@@ -1,141 +0,0 @@
-From b804e4b82cd8e85631112d935543c62ef56783e5 Mon Sep 17 00:00:00 2001
-From: Alyssa Ross
-Date: Tue, 23 Aug 2022 13:13:44 +0000
-Subject: [PATCH] tests: skip shared libs if default_library=static
-
-Otherwise, the build will fail when the toolchain is static-only, even
-with -Ddefault_library=static. I talked to a Meson developer in their
-IRC channel, who told me that the correct fix was to ensure that
-shared_library is only used if default_library != static.
-
-Part-of: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2867
-[Backported to 2.72.3]
----
- gio/tests/meson.build | 43 +++++++++++++++++++++++-------------------
- glib/tests/meson.build | 2 +-
- gmodule/tests/meson.build | 30 +++++++++++++++--------------
- 3 files changed, 41 insertions(+), 34 deletions(-)
-
-diff --git a/gio/tests/meson.build b/gio/tests/meson.build
-index 3ed23a5f2..7b1aba80d 100644
---- a/gio/tests/meson.build
-+++ b/gio/tests/meson.build
-@@ -203,7 +203,7 @@ if host_machine.system() != 'windows'
- }
-
- # LD_PRELOAD modules don't work so well with AddressSanitizer
-- if have_rtld_next and get_option('b_sanitize') == 'none'
-+ if have_rtld_next and get_option('default_library') != 'static' and get_option('b_sanitize') == 'none'
- gio_tests += {
- 'gsocketclient-slow' : {
- 'depends' : [
-@@ -607,24 +607,26 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
-
- compiler_type = '--compiler=@0@'.format(cc.get_id())
-
-- plugin_resources_c = custom_target('plugin-resources.c',
-- input : 'test4.gresource.xml',
-- output : 'plugin-resources.c',
-- command : [glib_compile_resources,
-- compiler_type,
-- '--target=@OUTPUT@',
-- '--sourcedir=' + meson.current_source_dir(),
-- '--internal',
-- '--generate-source',
-- '--c-name', '_g_plugin',
-- '@INPUT@'])
-+ if get_option('default_library') != 'static'
-+ plugin_resources_c = custom_target('plugin-resources.c',
-+ input : 'test4.gresource.xml',
-+ output : 'plugin-resources.c',
-+ command : [glib_compile_resources,
-+ compiler_type,
-+ '--target=@OUTPUT@',
-+ '--sourcedir=' + meson.current_source_dir(),
-+ '--internal',
-+ '--generate-source',
-+ '--c-name', '_g_plugin',
-+ '@INPUT@'])
-
-- shared_module('resourceplugin', 'resourceplugin.c', plugin_resources_c,
-- link_args : export_dynamic_ldflags,
-- dependencies : common_gio_tests_deps,
-- install_dir : installed_tests_execdir,
-- install : installed_tests_enabled
-- )
-+ shared_module('resourceplugin', 'resourceplugin.c', plugin_resources_c,
-+ link_args : export_dynamic_ldflags,
-+ dependencies : common_gio_tests_deps,
-+ install_dir : installed_tests_execdir,
-+ install : installed_tests_enabled
-+ )
-+ endif
-
- # referenced by test2.gresource.xml
- big_test_resource = custom_target(
-@@ -917,4 +919,7 @@ if installed_tests_enabled
- endif
-
- subdir('services')
--subdir('modules')
-+
-+if get_option('default_library') != 'static'
-+ subdir('modules')
-+endif
-diff --git a/glib/tests/meson.build b/glib/tests/meson.build
-index 301158e0f..6203ff45e 100644
---- a/glib/tests/meson.build
-+++ b/glib/tests/meson.build
-@@ -172,7 +172,7 @@ else
- 'include' : {},
- 'unix' : {},
- }
-- if have_rtld_next
-+ if have_rtld_next and get_option('default_library') != 'static'
- glib_tests += {
- 'gutils-user-database' : {
- 'depends' : [
-diff --git a/gmodule/tests/meson.build b/gmodule/tests/meson.build
-index c95fa1d00..25144c941 100644
---- a/gmodule/tests/meson.build
-+++ b/gmodule/tests/meson.build
-@@ -72,20 +72,22 @@ if ['darwin', 'ios'].contains(host_machine.system())
- module_suffix = 'so'
- endif
-
--foreach module : ['moduletestplugin_a', 'moduletestplugin_b']
-- shared_module(module + '_plugin', 'lib@0@.c'.format(module),
-- dependencies : [libglib_dep, libgmodule_dep],
-- install_dir : installed_tests_execdir,
-- install : installed_tests_enabled,
-- name_suffix : module_suffix
-- )
-- shared_library(module + '_library', 'lib@0@.c'.format(module),
-- dependencies : [libglib_dep, libgmodule_dep],
-- install_dir : installed_tests_execdir,
-- install : installed_tests_enabled,
-- name_suffix : module_suffix
-- )
--endforeach
-+if get_option('default_library') != 'static'
-+ foreach module : ['moduletestplugin_a', 'moduletestplugin_b']
-+ shared_module(module + '_plugin', 'lib@0@.c'.format(module),
-+ dependencies : [libglib_dep, libgmodule_dep],
-+ install_dir : installed_tests_execdir,
-+ install : installed_tests_enabled,
-+ name_suffix : module_suffix
-+ )
-+ shared_library(module + '_library', 'lib@0@.c'.format(module),
-+ dependencies : [libglib_dep, libgmodule_dep],
-+ install_dir : installed_tests_execdir,
-+ install : installed_tests_enabled,
-+ name_suffix : module_suffix
-+ )
-+ endforeach
-+endif
-
- common_c_args = test_cargs + ['-DGLIB_DISABLE_DEPRECATION_WARNINGS']
- common_deps = [libm, thread_dep, libglib_dep]
---
-2.37.1
-
diff --git a/pkgs/development/libraries/glibc/locales.nix b/pkgs/development/libraries/glibc/locales.nix
index d2cf0f89cb0..ed6f0a5b32c 100644
--- a/pkgs/development/libraries/glibc/locales.nix
+++ b/pkgs/development/libraries/glibc/locales.nix
@@ -64,8 +64,9 @@ callPackage ./common.nix { inherit stdenv; } {
installPhase =
''
- mkdir -p "$out/lib/locale"
+ mkdir -p "$out/lib/locale" "$out/share/i18n"
cp -v "$TMPDIR/$NIX_STORE/"*"/lib/locale/locale-archive" "$out/lib/locale"
+ cp -v ../glibc-2*/localedata/SUPPORTED "$out/share/i18n/SUPPORTED"
'';
setupHook = writeText "locales-setup-hook.sh"
diff --git a/pkgs/development/libraries/icu/72.nix b/pkgs/development/libraries/icu/72.nix
new file mode 100644
index 00000000000..8eeb10138d1
--- /dev/null
+++ b/pkgs/development/libraries/icu/72.nix
@@ -0,0 +1,4 @@
+import ./base.nix {
+ version = "72.1";
+ sha256 = "sha256-otLTghcJKn7VZjXjRGf5L5drNw4gGCrTJe3qZoGnHWg=";
+}
diff --git a/pkgs/development/libraries/libcamera/default.nix b/pkgs/development/libraries/libcamera/default.nix
index ab2095be8fc..ff7cd7a193e 100644
--- a/pkgs/development/libraries/libcamera/default.nix
+++ b/pkgs/development/libraries/libcamera/default.nix
@@ -19,14 +19,14 @@
, systemd # for libudev
}:
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
pname = "libcamera";
- version = "unstable-2022-09-15";
+ version = "0.0.1";
src = fetchgit {
url = "https://git.libcamera.org/libcamera/libcamera.git";
- rev = "74ab3f778c848b20cbf8fe299170756ff6ebab1a";
- hash = "sha256-w0I4L6xXTBUdqj30LpVW/KZW6bdoUeoW9lnMOW0OLJY=";
+ rev = "v${version}";
+ hash = "sha256-u5FnfXBCjwSp8QBrH8KIkVGV32/9pff41ZWjWXOwuMI=";
};
postPatch = ''
@@ -77,6 +77,9 @@ stdenv.mkDerivation {
"-Dv4l2=true"
"-Dqcam=disabled"
"-Dlc-compliance=disabled" # tries unconditionally to download gtest when enabled
+ # Avoid blanket -Werror to evade build failures on less
+ # tested compilers.
+ "-Dwerror=false"
];
# Fixes error on a deprecated declaration
@@ -85,6 +88,17 @@ stdenv.mkDerivation {
# Silence fontconfig warnings about missing config
FONTCONFIG_FILE = makeFontsConf { fontDirectories = []; };
+ # libcamera signs the IPA module libraries at install time, but they are then
+ # modified by stripping and RPATH fixup. Therefore, we need to generate the
+ # signatures again ourselves.
+ #
+ # If this is not done, libcamera will still try to load them, but it will
+ # isolate them in separate processes, which can cause crashes for IPA modules
+ # that are not designed for this (notably ipa_rpi.so).
+ postFixup = ''
+ ../src/ipa/ipa-sign-install.sh src/ipa-priv-key.pem $out/lib/libcamera/ipa_*.so
+ '';
+
meta = with lib; {
description = "An open source camera stack and framework for Linux, Android, and ChromeOS";
homepage = "https://libcamera.org";
diff --git a/pkgs/development/libraries/libxcrypt/default.nix b/pkgs/development/libraries/libxcrypt/default.nix
index db5f5026f2c..d4ce1f8bc73 100644
--- a/pkgs/development/libraries/libxcrypt/default.nix
+++ b/pkgs/development/libraries/libxcrypt/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "libxcrypt";
- version = "4.4.28";
+ version = "4.4.30";
src = fetchurl {
url = "https://github.com/besser82/libxcrypt/releases/download/v${version}/libxcrypt-${version}.tar.xz";
- sha256 = "sha256-npNoEfn60R28ozyhm9l8VcUus8oVkB8nreBGzHnmnoc=";
+ sha256 = "sha256-s2Z/C6hdqtavJGukCQ++UxY62TyLaioSV9IqeLt87ro=";
};
outputs = [
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
- doCheck = !stdenv.hostPlatform.isMusl;
+ doCheck = true;
passthru.tests = {
inherit (nixosTests) login shadow;
diff --git a/pkgs/development/libraries/openssl/1.1/macos-yosemite-compat.patch b/pkgs/development/libraries/openssl/1.1/macos-yosemite-compat.patch
deleted file mode 100644
index b0e37e32561..00000000000
--- a/pkgs/development/libraries/openssl/1.1/macos-yosemite-compat.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From cef404f1e7a598166cbc2fd2e0048f7e2d752ad5 Mon Sep 17 00:00:00 2001
-From: David Carlier
-Date: Tue, 24 Aug 2021 22:40:14 +0100
-Subject: [PATCH] Darwin platform allows to build on releases before
- Yosemite/ios 8.
-
-issue #16407 #16408
----
- crypto/rand/rand_unix.c | 5 +----
- include/crypto/rand.h | 10 ++++++++++
- 2 files changed, 11 insertions(+), 4 deletions(-)
-
-diff --git a/crypto/rand/rand_unix.c b/crypto/rand/rand_unix.c
-index 43f1069d151d..0f4525106af7 100644
---- a/crypto/rand/rand_unix.c
-+++ b/crypto/rand/rand_unix.c
-@@ -34,9 +34,6 @@
- #if defined(__OpenBSD__)
- # include
- #endif
--#if defined(__APPLE__)
--# include
--#endif
-
- #if defined(OPENSSL_SYS_UNIX) || defined(__DJGPP__)
- # include
-@@ -381,7 +378,7 @@ static ssize_t syscall_random(void *buf, size_t buflen)
- if (errno != ENOSYS)
- return -1;
- }
--# elif defined(__APPLE__)
-+# elif defined(OPENSSL_APPLE_CRYPTO_RANDOM)
- if (CCRandomGenerateBytes(buf, buflen) == kCCSuccess)
- return (ssize_t)buflen;
-
-diff --git a/include/crypto/rand.h b/include/crypto/rand.h
-index 5350d3a93119..674f840fd13c 100644
---- a/include/crypto/rand.h
-+++ b/include/crypto/rand.h
-@@ -20,6 +20,16 @@
-
- # include
-
-+# if defined(__APPLE__) && !defined(OPENSSL_NO_APPLE_CRYPTO_RANDOM)
-+# include
-+# if (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101000) || \
-+ (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 80000)
-+# define OPENSSL_APPLE_CRYPTO_RANDOM 1
-+# include
-+# include
-+# endif
-+# endif
-+
- /* forward declaration */
- typedef struct rand_pool_st RAND_POOL;
-
diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix
index 62cc8e24f41..9acbca259c6 100644
--- a/pkgs/development/libraries/openssl/default.nix
+++ b/pkgs/development/libraries/openssl/default.nix
@@ -214,17 +214,15 @@ let
in {
- openssl_1_1 = common rec {
- version = "1.1.1q";
- sha256 = "sha256-15Oc5hQCnN/wtsIPDi5XAxWKSJpyslB7i9Ub+Mj9EMo=";
+ openssl_1_1 = common {
+ version = "1.1.1s";
+ sha256 = "sha256-xawB52Dub/Dath1rK70wFGck0GPrMiGAxvGKb3Tktqo=";
patches = [
./1.1/nix-ssl-cert-file.patch
(if stdenv.hostPlatform.isDarwin
then ./use-etc-ssl-certs-darwin.patch
else ./use-etc-ssl-certs.patch)
- ] ++ lib.optionals (stdenv.isDarwin && (builtins.substring 5 5 version) < "m") [
- ./1.1/macos-yosemite-compat.patch
];
withDocs = true;
};
diff --git a/pkgs/development/libraries/pixman/default.nix b/pkgs/development/libraries/pixman/default.nix
index ffdaeaef035..49f5fbe8815 100644
--- a/pkgs/development/libraries/pixman/default.nix
+++ b/pkgs/development/libraries/pixman/default.nix
@@ -2,11 +2,14 @@
stdenv.mkDerivation rec {
pname = "pixman";
- version = "0.38.4";
+ version = "0.42.2";
src = fetchurl {
- url = "mirror://xorg/individual/lib/${pname}-${version}.tar.bz2";
- sha256 = "0l0m48lnmdlmnaxn2021qi5cj366d9fzfjxkqgcj9bs14pxbgaw4";
+ urls = [
+ "mirror://xorg/individual/lib/${pname}-${version}.tar.gz"
+ "https://cairographics.org/releases/${pname}-${version}.tar.gz"
+ ];
+ hash = "sha256-6hSA762i/ZSLx1Nm98NJ4cltMpfQmj/mJibjjiNKYl4=";
};
separateDebugInfo = !stdenv.hostPlatform.isStatic;
diff --git a/pkgs/development/libraries/qt-5/5.12/default.nix b/pkgs/development/libraries/qt-5/5.12/default.nix
index 5d7b7202945..a93c2b67d43 100644
--- a/pkgs/development/libraries/qt-5/5.12/default.nix
+++ b/pkgs/development/libraries/qt-5/5.12/default.nix
@@ -81,7 +81,11 @@ let
sha256 = "0crkw3j1iwdc1pbf5dhar0b4q3h5gs2q1sika8m12y02yk3ns697";
})
];
- qtdeclarative = [ ./qtdeclarative.patch ];
+ qtdeclarative = [
+ ./qtdeclarative.patch
+ # prevent headaches from stale qmlcache data
+ ./qtdeclarative-default-disable-qmlcache.patch
+ ];
qtlocation = [ ./qtlocation-gcc-9.patch ];
qtscript = [ ./qtscript.patch ];
qtserialport = [ ./qtserialport.patch ];
diff --git a/pkgs/development/libraries/qt-5/5.12/qtdeclarative-default-disable-qmlcache.patch b/pkgs/development/libraries/qt-5/5.12/qtdeclarative-default-disable-qmlcache.patch
new file mode 100644
index 00000000000..e9c3b7e2284
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.12/qtdeclarative-default-disable-qmlcache.patch
@@ -0,0 +1,40 @@
+diff --git a/src/qml/qml/qqmltypeloader.cpp b/src/qml/qml/qqmltypeloader.cpp
+index 9e5bc0b0..9219def6 100644
+--- a/src/qml/qml/qqmltypeloader.cpp
++++ b/src/qml/qml/qqmltypeloader.cpp
+@@ -2151,7 +2151,7 @@ void QQmlTypeData::unregisterCallback(TypeDataCallback *callback)
+
+ bool QQmlTypeData::tryLoadFromDiskCache()
+ {
+- if (disableDiskCache() && !forceDiskCache())
++ if (!forceDiskCache())
+ return false;
+
+ if (isDebugging())
+@@ -2658,7 +2658,7 @@ void QQmlTypeData::compile(const QQmlRefPointer &typeNameCach
+ return;
+ }
+
+- const bool trySaveToDisk = (!disableDiskCache() || forceDiskCache()) && !m_document->jsModule.debugMode && !typeRecompilation;
++ const bool trySaveToDisk = (forceDiskCache()) && !m_document->jsModule.debugMode && !typeRecompilation;
+ if (trySaveToDisk) {
+ QString errorString;
+ if (m_compiledData->saveToDisk(url(), &errorString)) {
+@@ -3014,7 +3014,7 @@ QQmlRefPointer QQmlScriptBlob::scriptData() const
+
+ void QQmlScriptBlob::dataReceived(const SourceCodeData &data)
+ {
+- if (!disableDiskCache() || forceDiskCache()) {
++ if (forceDiskCache()) {
+ QQmlRefPointer unit = QV4::Compiler::Codegen::createUnitForLoading();
+ QString error;
+ if (unit->loadFromDisk(url(), data.sourceTimeStamp(), &error)) {
+@@ -3077,7 +3077,7 @@ void QQmlScriptBlob::dataReceived(const SourceCodeData &data)
+ qmlGenerator.generate(irUnit);
+ }
+
+- if ((!disableDiskCache() || forceDiskCache()) && !isDebugging()) {
++ if ((forceDiskCache()) && !isDebugging()) {
+ QString errorString;
+ if (unit->saveToDisk(url(), &errorString)) {
+ QString error;
diff --git a/pkgs/development/libraries/qt-5/5.14/default.nix b/pkgs/development/libraries/qt-5/5.14/default.nix
index 32630810b49..808562772f9 100644
--- a/pkgs/development/libraries/qt-5/5.14/default.nix
+++ b/pkgs/development/libraries/qt-5/5.14/default.nix
@@ -68,7 +68,11 @@ let
./qtbase.patch.d/0010-qtbase-assert.patch
./qtbase.patch.d/0011-fix-header_module.patch
];
- qtdeclarative = [ ./qtdeclarative.patch ];
+ qtdeclarative = [
+ ./qtdeclarative.patch
+ # prevent headaches from stale qmlcache data
+ ./qtdeclarative-default-disable-qmlcache.patch
+ ];
qtlocation = [ ./qtlocation-gcc-9.patch ];
qtscript = [ ./qtscript.patch ];
qtserialport = [ ./qtserialport.patch ];
diff --git a/pkgs/development/libraries/qt-5/5.14/qtdeclarative-default-disable-qmlcache.patch b/pkgs/development/libraries/qt-5/5.14/qtdeclarative-default-disable-qmlcache.patch
new file mode 100644
index 00000000000..8ef5ef53dea
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.14/qtdeclarative-default-disable-qmlcache.patch
@@ -0,0 +1,13 @@
+diff --git a/src/qml/qml/qqmltypeloader.cpp b/src/qml/qml/qqmltypeloader.cpp
+index 6c12de92..fc67dc07 100644
+--- a/src/qml/qml/qqmltypeloader.cpp
++++ b/src/qml/qml/qqmltypeloader.cpp
+@@ -705,7 +705,7 @@ bool QQmlTypeLoader::Blob::isDebugging() const
+
+ bool QQmlTypeLoader::Blob::diskCacheEnabled() const
+ {
+- return (!disableDiskCache() || forceDiskCache()) && !isDebugging();
++ return (forceDiskCache()) && !isDebugging();
+ }
+
+ bool QQmlTypeLoader::Blob::qmldirDataAvailable(const QQmlRefPointer &data, QList *errors)
diff --git a/pkgs/development/libraries/qt-5/5.15/default.nix b/pkgs/development/libraries/qt-5/5.15/default.nix
index e3f94ba8ffe..616bf22ff13 100644
--- a/pkgs/development/libraries/qt-5/5.15/default.nix
+++ b/pkgs/development/libraries/qt-5/5.15/default.nix
@@ -56,7 +56,11 @@ let
./qtbase.patch.d/0010-qtbase-assert.patch
./qtbase.patch.d/0011-fix-header_module.patch
];
- qtdeclarative = [ ./qtdeclarative.patch ];
+ qtdeclarative = [
+ ./qtdeclarative.patch
+ # prevent headaches from stale qmlcache data
+ ./qtdeclarative-default-disable-qmlcache.patch
+ ];
qtscript = [ ./qtscript.patch ];
qtserialport = [ ./qtserialport.patch ];
qtwebengine = lib.optionals stdenv.isDarwin [
diff --git a/pkgs/development/libraries/qt-5/5.15/qtdeclarative-default-disable-qmlcache.patch b/pkgs/development/libraries/qt-5/5.15/qtdeclarative-default-disable-qmlcache.patch
new file mode 100644
index 00000000000..03668d960c7
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.15/qtdeclarative-default-disable-qmlcache.patch
@@ -0,0 +1,13 @@
+diff --git a/src/qml/qml/qqmltypeloader.cpp b/src/qml/qml/qqmltypeloader.cpp
+index 1d66e75..827567a 100644
+--- a/src/qml/qml/qqmltypeloader.cpp
++++ b/src/qml/qml/qqmltypeloader.cpp
+@@ -727,7 +727,7 @@ bool QQmlTypeLoader::Blob::isDebugging() const
+
+ bool QQmlTypeLoader::Blob::diskCacheEnabled() const
+ {
+- return (!disableDiskCache() && !isDebugging()) || forceDiskCache();
++ return forceDiskCache();
+ }
+
+ bool QQmlTypeLoader::Blob::qmldirDataAvailable(const QQmlRefPointer &data, QList *errors)
diff --git a/pkgs/development/libraries/qt-6/modules/qtdeclarative.nix b/pkgs/development/libraries/qt-6/modules/qtdeclarative.nix
index c8abc71a223..76231f866ef 100644
--- a/pkgs/development/libraries/qt-6/modules/qtdeclarative.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtdeclarative.nix
@@ -16,6 +16,10 @@ qtModule {
"-DQT6_INSTALL_PREFIX=${placeholder "out"}"
"-DQT_INSTALL_PREFIX=${placeholder "out"}"
];
+ patches = [
+ # prevent headaches from stale qmlcache data
+ ../patches/qtdeclarative-default-disable-qmlcache.patch
+ ];
postInstall = ''
substituteInPlace "$out/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake" \
--replace ''\'''${QT6_INSTALL_PREFIX}' "$dev"
diff --git a/pkgs/development/libraries/qt-6/patches/qtdeclarative-default-disable-qmlcache.patch b/pkgs/development/libraries/qt-6/patches/qtdeclarative-default-disable-qmlcache.patch
new file mode 100644
index 00000000000..02e578f2d52
--- /dev/null
+++ b/pkgs/development/libraries/qt-6/patches/qtdeclarative-default-disable-qmlcache.patch
@@ -0,0 +1,13 @@
+diff --git a/src/qml/jsruntime/qv4engine.cpp b/src/qml/jsruntime/qv4engine.cpp
+index 852cde9e..165f1b57 100644
+--- a/src/qml/jsruntime/qv4engine.cpp
++++ b/src/qml/jsruntime/qv4engine.cpp
+@@ -2093,7 +2093,7 @@ void ExecutionEngine::registerModule(const QString &_name, const QJSValue &modul
+
+ bool ExecutionEngine::diskCacheEnabled() const
+ {
+- return (!disableDiskCache() && !debugger()) || forceDiskCache();
++ return forceDiskCache();
+ }
+
+ void ExecutionEngine::callInContext(QV4::Function *function, QObject *self,
diff --git a/pkgs/development/libraries/taglib/default.nix b/pkgs/development/libraries/taglib/default.nix
index 666d013adeb..0fb207e4e0f 100644
--- a/pkgs/development/libraries/taglib/default.nix
+++ b/pkgs/development/libraries/taglib/default.nix
@@ -7,13 +7,13 @@
stdenv.mkDerivation rec {
pname = "taglib";
- version = "1.12";
+ version = "1.13";
src = fetchFromGitHub {
owner = "taglib";
repo = "taglib";
rev = "v${version}";
- sha256 = "sha256-omErajnYgxbflsbe6pS2KsexZcXisso0WGYnmIud7WA=";
+ sha256 = "sha256-DRALRH+/7c2lBvCpLp8hop3Xxsf76F1q8L7F9qehqQA=";
};
nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/tracker/default.nix b/pkgs/development/libraries/tracker/default.nix
index 2c4422d7a1f..40744f987c8 100644
--- a/pkgs/development/libraries/tracker/default.nix
+++ b/pkgs/development/libraries/tracker/default.nix
@@ -29,13 +29,13 @@
stdenv.mkDerivation rec {
pname = "tracker";
- version = "3.4.0";
+ version = "3.4.1";
outputs = [ "out" "dev" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "s7OAyVcdfHQjtfQB5KLy143kcUOwNessEoHiQjxZIYs=";
+ sha256 = "6p1BqfucK0KtgPwsgjJ7XHE9WUyWmwnhpJvmP7dPT64=";
};
postPatch = ''
diff --git a/pkgs/development/python-modules/Cython/default.nix b/pkgs/development/python-modules/Cython/default.nix
index 4a6c14b5709..3065e822f6b 100644
--- a/pkgs/development/python-modules/Cython/default.nix
+++ b/pkgs/development/python-modules/Cython/default.nix
@@ -48,8 +48,20 @@ in buildPythonPackage rec {
# trashcan support is needed to avoid stack overflows during object deallocation in sage (https://trac.sagemath.org/ticket/27267)
(fetchpatch {
name = "trashcan.patch";
- url = "https://git.sagemath.org/sage.git/plain/build/pkgs/cython/patches/trashcan.patch?id=4569a839f070a1a38d5dbce2a4d19233d25aeed2";
- sha256 = "sha256-+pOF1XNTEtNseLpqPzrc1Jfwt5hGx7doUoccIhNneYY=";
+ url = "https://github.com/cython/cython/commit/f781880b6780117660b2026caadf4a6d7905722f.patch";
+ sha256 = "sha256-SnjaJdBZxm3O5gJ5Dxut6+eeVtZv+ygUUNwAwgoiFxg=";
+ })
+ # The above commit introduces custom trashcan macros, as well as
+ # compiler changes to use them in Cython-emitted code. The latter
+ # change is still useful, but the former has been upstreamed as of
+ # Python 3.8, and the patch below makes Cython use the upstream
+ # trashcan macros whenever available. This is needed for Python
+ # 3.11 support, because the API used in Cython's implementation
+ # changed: https://github.com/cython/cython/pull/4475
+ (fetchpatch {
+ name = "disable-trashcan.patch";
+ url = "https://github.com/cython/cython/commit/e337825cdcf5e94d38ba06a0cb0188e99ce0cc92.patch";
+ sha256 = "sha256-q0f63eetKrDpmP5Z4v8EuGxg26heSyp/62OYqhRoSso=";
})
];
diff --git a/pkgs/development/python-modules/build/default.nix b/pkgs/development/python-modules/build/default.nix
index 1ef401b8c0a..efc1f2f45ad 100644
--- a/pkgs/development/python-modules/build/default.nix
+++ b/pkgs/development/python-modules/build/default.nix
@@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "build";
- version = "0.8.0";
+ version = "0.9.0";
format = "pyproject";
disabled = pythonOlder "3.6";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "pypa";
repo = pname;
rev = version;
- hash = "sha256-P0DFBYsL2Ce/JwfYss64+CY/IvzYZEiz9wuEslij+oU=";
+ hash = "sha256-iQvfZC/h9SbagExoG8dJ2A8G8gVRdMaRvEy9QcQIN5I=";
};
nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/cattrs/default.nix b/pkgs/development/python-modules/cattrs/default.nix
index 6584f5f15df..8514190202e 100644
--- a/pkgs/development/python-modules/cattrs/default.nix
+++ b/pkgs/development/python-modules/cattrs/default.nix
@@ -2,7 +2,6 @@
, attrs
, buildPythonPackage
, fetchFromGitHub
-, fetchpatch
, exceptiongroup
, hypothesis
, immutables
@@ -21,7 +20,7 @@
buildPythonPackage rec {
pname = "cattrs";
- version = "22.1.0";
+ version = "22.2.0";
format = "pyproject";
disabled = pythonOlder "3.7";
@@ -30,17 +29,9 @@ buildPythonPackage rec {
owner = "python-attrs";
repo = pname;
rev = "v${version}";
- hash = "sha256-C8uIsewpgJfB1yYckWTwF5K32+2AAOrxFKB9I18RENg=";
+ hash = "sha256-Qnrq/mIA/t0mur6IAen4vTmMIhILWS6v5nuf+Via2hA=";
};
- patches = [
- (fetchpatch {
- url = "https://github.com/python-attrs/cattrs/commit/290d162a589acf10ea63b825b7b283e23ca7698a.diff";
- excludes = [ "poetry.lock" ];
- hash = "sha256-n6c3qVg9umGKAxeTALq3QTJgO9DIj3SY0ZHhtsDeW94=";
- })
- ];
-
nativeBuildInputs = [
poetry-core
];
diff --git a/pkgs/development/python-modules/exceptiongroup/default.nix b/pkgs/development/python-modules/exceptiongroup/default.nix
index 1475b44e001..76c6f0e2d34 100644
--- a/pkgs/development/python-modules/exceptiongroup/default.nix
+++ b/pkgs/development/python-modules/exceptiongroup/default.nix
@@ -8,14 +8,14 @@
buildPythonPackage rec {
pname = "exceptiongroup";
- version = "1.0.0rc9";
+ version = "1.0.0";
format = "flit";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
- hash = "sha256-kIakoh75sxxyGBx3wECgdLoIie5Wp7KJ/wr7DZdlX5Y=";
+ hash = "sha256-r/ur8T+26YmIw42cVlDnAVaf48HeMjPPthxfM3dGkK0=";
};
nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/psutil/default.nix b/pkgs/development/python-modules/psutil/default.nix
index 088541552ec..b461bc6fdcf 100644
--- a/pkgs/development/python-modules/psutil/default.nix
+++ b/pkgs/development/python-modules/psutil/default.nix
@@ -1,29 +1,42 @@
-{ lib, stdenv, buildPythonPackage, fetchPypi, isPy27, python
-, CoreFoundation, IOKit
+{ lib
+, stdenv
+, buildPythonPackage
+, CoreFoundation
+, fetchPypi
+, IOKit
, pytestCheckHook
-, mock
-, unittest2
+, python
+, pythonOlder
}:
buildPythonPackage rec {
pname = "psutil";
- version = "5.9.2";
+ version = "5.9.3";
+ format = "setuptools";
+
+ disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
- sha256 = "sha256-/rhhoQtsO7AHAQY7N+Svx1T4IX8PCcQigFhr1qxxK1w=";
+ hash = "sha256-fM/N/qT8SwoCyiwx3n/NGGvrnP+CB4AOFKtm95x3OvY=";
};
- # We have many test failures on various parts of the package:
- # - segfaults on darwin:
- # https://github.com/giampaolo/psutil/issues/1715
- # - swap (on linux) might cause test failures if it is fully used:
- # https://github.com/giampaolo/psutil/issues/1911
- # - some mount paths are required in the build sanbox to make the tests succeed:
- # https://github.com/giampaolo/psutil/issues/1912
- doCheck = false;
- checkInputs = [ pytestCheckHook ]
- ++ lib.optionals isPy27 [ mock unittest2 ];
+ buildInputs =
+ # workaround for https://github.com/NixOS/nixpkgs/issues/146760
+ lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
+ CoreFoundation
+ ] ++ lib.optionals stdenv.isDarwin [
+ IOKit
+ ];
+
+ checkInputs = [
+ pytestCheckHook
+ ];
+
+ # Segfaults on darwin:
+ # https://github.com/giampaolo/psutil/issues/1715
+ doCheck = !stdenv.isDarwin;
+
# In addition to the issues listed above there are some that occure due to
# our sandboxing which we can work around by disabling some tests:
# - cpu_times was flaky on darwin
@@ -34,22 +47,19 @@ buildPythonPackage rec {
# Note: $out must be referenced as test import paths are relative
disabledTests = [
- "user"
+ "cpu_freq"
+ "cpu_times"
"disk_io_counters"
"sensors_battery"
- "cpu_times"
- "cpu_freq"
+ "user"
];
- buildInputs =
- # workaround for https://github.com/NixOS/nixpkgs/issues/146760
- lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [ CoreFoundation ] ++
- lib.optionals stdenv.isDarwin [ IOKit ];
-
- pythonImportsCheck = [ "psutil" ];
+ pythonImportsCheck = [
+ "psutil"
+ ];
meta = with lib; {
- description = "Process and system utilization information interface for python";
+ description = "Process and system utilization information interface";
homepage = "https://github.com/giampaolo/psutil";
license = licenses.bsd3;
maintainers = with maintainers; [ jonringer ];
diff --git a/pkgs/development/python-modules/py-cpuinfo/default.nix b/pkgs/development/python-modules/py-cpuinfo/default.nix
index 12b9668f1ed..09f8ba4ad75 100644
--- a/pkgs/development/python-modules/py-cpuinfo/default.nix
+++ b/pkgs/development/python-modules/py-cpuinfo/default.nix
@@ -1,20 +1,24 @@
{ lib
, stdenv
-, fetchFromGitHub
, buildPythonPackage
+, fetchFromGitHub
, pytestCheckHook
+, pythonOlder
, sysctl
}:
buildPythonPackage rec {
pname = "py-cpuinfo";
- version = "8.0.0";
+ version = "9.0.0";
+ format = "setuptools";
+
+ disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "workhorsy";
repo = pname;
rev = "v${version}";
- sha256 = "sha256-Mgzj1HTasUNHeHMVwV6d+TeyVqnBNUwCJ1EC3kfovf8=";
+ hash = "sha256-Q5u0guAqDVhf6bvJTzNvCpWbIzjxxAjE7s0OuXj9T4Q=";
};
checkInputs = [
@@ -28,7 +32,9 @@ buildPythonPackage rec {
--replace "_run_and_get_stdout(['sysctl'" "_run_and_get_stdout(['${sysctl}/bin/sysctl'"
'';
- pythonImportsCheck = [ "cpuinfo" ];
+ pythonImportsCheck = [
+ "cpuinfo"
+ ];
meta = with lib; {
description = "Get CPU info with pure Python";
diff --git a/pkgs/development/python-modules/pymemcache/default.nix b/pkgs/development/python-modules/pymemcache/default.nix
index c9d3ef94d77..594964e6649 100644
--- a/pkgs/development/python-modules/pymemcache/default.nix
+++ b/pkgs/development/python-modules/pymemcache/default.nix
@@ -1,15 +1,17 @@
{ lib
, buildPythonPackage
+, faker
, fetchFromGitHub
, mock
, six
, pytestCheckHook
, pythonOlder
+, zstd
}:
buildPythonPackage rec {
pname = "pymemcache";
- version = "3.5.2";
+ version = "4.0.0";
format = "setuptools";
disabled = pythonOlder "3.7";
@@ -18,7 +20,7 @@ buildPythonPackage rec {
owner = "pinterest";
repo = pname;
rev = "v${version}";
- hash = "sha256-bsiFWZHGJO/07w6mFXzf0JwftJWClE2mTv86h8zT1K0=";
+ hash = "sha256-WgtHhp7lE6StoOBfSy9+v3ODe/+zUC7lGrc2S4M68+M=";
};
propagatedBuildInputs = [
@@ -26,8 +28,10 @@ buildPythonPackage rec {
];
checkInputs = [
+ faker
mock
pytestCheckHook
+ zstd
];
postPatch = ''
diff --git a/pkgs/development/python-modules/pytest-datadir/default.nix b/pkgs/development/python-modules/pytest-datadir/default.nix
index d53734618b3..58ad575d638 100644
--- a/pkgs/development/python-modules/pytest-datadir/default.nix
+++ b/pkgs/development/python-modules/pytest-datadir/default.nix
@@ -1,31 +1,30 @@
-{ lib, buildPythonPackage, fetchFromGitHub
-, setuptools-scm, pytest
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools-scm
+, pytestCheckHook
}:
buildPythonPackage rec {
pname = "pytest-datadir";
- version = "1.3.1";
+ version = "1.4.1";
format = "pyproject";
src = fetchFromGitHub {
owner = "gabrielcnr";
- repo = pname;
- rev = version;
- sha256 = "0kwgp6sqnqnmww5r0dkmyfpi0lmw0iwxz3fnwn2fs8w6bvixzznf";
+ repo = "pytest-datadir";
+ rev = "refs/tags/${version}";
+ sha256 = "sha256-HyJ0rU1nHqRv8SHFS8m3GZ5409+JZIkoDgIVjy4ol54=";
};
+ SETUPTOOLS_SCM_PRETEND_VERSION = version;
nativeBuildInputs = [ setuptools-scm ];
-
- preBuild = ''
- export SETUPTOOLS_SCM_PRETEND_VERSION="${version}"
- '';
-
- checkInputs = [ pytest ];
- checkPhase = "pytest";
+ checkInputs = [ pytestCheckHook ];
+ pythonImportsCheck = [ "pytest_datadir" ];
meta = with lib; {
+ description = "Pytest plugin for manipulating test data directories and files";
homepage = "https://github.com/gabrielcnr/pytest-datadir";
- description = "pytest plugin for manipulating test data directories and files";
license = licenses.mit;
maintainers = with maintainers; [ kira-bruneau ];
};
diff --git a/pkgs/development/python-modules/pytest-subtests/default.nix b/pkgs/development/python-modules/pytest-subtests/default.nix
index 4b88991bb74..8ada20dce8f 100644
--- a/pkgs/development/python-modules/pytest-subtests/default.nix
+++ b/pkgs/development/python-modules/pytest-subtests/default.nix
@@ -8,14 +8,14 @@
buildPythonPackage rec {
pname = "pytest-subtests";
- version = "0.8.0";
+ version = "0.9.0";
format = "setuptools";
- disabled = pythonOlder "3.6";
+ disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
- sha256 = "sha256-Rus3YCLpJpUIFszCNQLeMnetzBOWZS3bMyjOAokFLE0=";
+ sha256 = "sha256-wDF81fal6z6Vfonb5PwzIqmv3botuEFDVe0qLLkahE4=";
};
nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/requests-cache/default.nix b/pkgs/development/python-modules/requests-cache/default.nix
index 45b03feb461..21648484b2f 100644
--- a/pkgs/development/python-modules/requests-cache/default.nix
+++ b/pkgs/development/python-modules/requests-cache/default.nix
@@ -26,7 +26,7 @@
buildPythonPackage rec {
pname = "requests-cache";
- version = "0.9.6";
+ version = "0.9.7";
format = "pyproject";
disabled = pythonOlder "3.7";
@@ -35,7 +35,7 @@ buildPythonPackage rec {
owner = "requests-cache";
repo = "requests-cache";
rev = "v${version}";
- hash = "sha256-oFI5Rv/MAiPHiZts0PrNS+YMDFD/RxnMJ6deTxZNkSM=";
+ hash = "sha256-HSYu4jOEMXI/zGuWI7invYVvVeeM5+dDlc+9h8TOGms=";
};
nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/ruamel-yaml-clib/default.nix b/pkgs/development/python-modules/ruamel-yaml-clib/default.nix
index 143452274ab..a8f93d53f6f 100644
--- a/pkgs/development/python-modules/ruamel-yaml-clib/default.nix
+++ b/pkgs/development/python-modules/ruamel-yaml-clib/default.nix
@@ -5,19 +5,19 @@
buildPythonPackage rec {
pname = "ruamel-yaml-clib";
- version = "0.2.6";
+ version = "0.2.7";
format = "setuptools";
src = fetchhg {
url = "http://hg.code.sf.net/p/ruamel-yaml-clib/code";
rev = version;
- sha256 = "sha256-mpkh9JhYKRX47jfKprjt1Vpm9DMz8LcWzkotJ+/xoxY=";
+ sha256 = "sha256-QNJyJWfCT8zEvrqI65zPlWIMSRZSoDwIAbFU48TfO4U=";
};
# no tests
doCheck = false;
- # circular depedency with ruamel-yaml
+ # circular dependency with ruamel-yaml
# pythonImportsCheck = [ "_ruamel_yaml" ];
meta = with lib; {
diff --git a/pkgs/development/ruby-modules/with-packages/Gemfile b/pkgs/development/ruby-modules/with-packages/Gemfile
index d0c27c63858..f11828cb835 100644
--- a/pkgs/development/ruby-modules/with-packages/Gemfile
+++ b/pkgs/development/ruby-modules/with-packages/Gemfile
@@ -77,6 +77,7 @@ gem 'iconv'
gem 'idn-ruby'
gem 'jbuilder'
gem 'jekyll'
+gem 'jekyll-favicon'
gem 'jmespath'
gem 'jwt'
gem 'kramdown-rfc2629'
diff --git a/pkgs/development/tools/build-managers/cmake/001-search-path.diff b/pkgs/development/tools/build-managers/cmake/001-search-path.diff
index 607668b1315..04ab0847a70 100644
--- a/pkgs/development/tools/build-managers/cmake/001-search-path.diff
+++ b/pkgs/development/tools/build-managers/cmake/001-search-path.diff
@@ -12,7 +12,7 @@ index b9381c3d7d..5e944640b5 100644
# CMake install location
"${_CMAKE_INSTALL_DIR}"
)
-@@ -47,48 +44,48 @@ endif()
+@@ -47,48 +44,49 @@ endif()
# Non "standard" but common install prefixes
list(APPEND CMAKE_SYSTEM_PREFIX_PATH
@@ -22,9 +22,10 @@ index b9381c3d7d..5e944640b5 100644
)
# List common include file locations not under the common prefixes.
-+if(IS_DIRECTORY $ENV{NIX_CC}
-+ AND EXISTS $ENV{NIX_CC}/nix-support/orig-libc
-+ AND EXISTS $ENV{NIX_CC}/nix-support/orig-libc-dev)
++if(DEFINED ENV{NIX_CC}
++ AND IS_DIRECTORY "$ENV{NIX_CC}"
++ AND EXISTS "$ENV{NIX_CC}/nix-support/orig-libc"
++ AND EXISTS "$ENV{NIX_CC}/nix-support/orig-libc-dev")
+ file(STRINGS "$ENV{NIX_CC}/nix-support/orig-libc" _nix_cmake_libc)
+ file(STRINGS "$ENV{NIX_CC}/nix-support/orig-libc-dev" _nix_cmake_libc_dev)
+else()
diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix
index 866fa303148..9fef483ff0e 100644
--- a/pkgs/development/tools/build-managers/meson/default.nix
+++ b/pkgs/development/tools/build-managers/meson/default.nix
@@ -5,7 +5,6 @@
, pkg-config
, python3
, substituteAll
-, withDarwinFrameworksGtkDocPatch ? false
}:
python3.pkgs.buildPythonApplication rec {
diff --git a/pkgs/development/tools/misc/cvise/default.nix b/pkgs/development/tools/misc/cvise/default.nix
index cd3a38d300e..ae0846f479c 100644
--- a/pkgs/development/tools/misc/cvise/default.nix
+++ b/pkgs/development/tools/misc/cvise/default.nix
@@ -32,6 +32,11 @@ buildPythonApplication rec {
];
postPatch = ''
+ # Avoid blanket -Werror to evade build failures on less
+ # tested compilers.
+ substituteInPlace CMakeLists.txt \
+ --replace " -Werror " " "
+
# 'cvise --command=...' generates a script with hardcoded shebang.
substituteInPlace cvise.py \
--replace "#!/bin/bash" "#!${bash}/bin/bash"
diff --git a/pkgs/development/tools/misc/elfutils/default.nix b/pkgs/development/tools/misc/elfutils/default.nix
index 60afcbf258a..87271cf50ff 100644
--- a/pkgs/development/tools/misc/elfutils/default.nix
+++ b/pkgs/development/tools/misc/elfutils/default.nix
@@ -8,11 +8,11 @@
# TODO: Look at the hardcoded paths to kernel, modules etc.
stdenv.mkDerivation rec {
pname = "elfutils";
- version = "0.187";
+ version = "0.188";
src = fetchurl {
url = "https://sourceware.org/elfutils/ftp/${version}/${pname}-${version}.tar.bz2";
- sha256 = "sha256-5wsN++YQ+QxNH+DXGvFCpOJcPE7566uNLXK2UVnUVMg=";
+ sha256 = "sha256-+4sOjQgCAFuaMJxgwdjeMt0pUbVvDDo8tW0hzgFZXf8=";
};
patches = [
diff --git a/pkgs/development/tools/spirv-tools/default.nix b/pkgs/development/tools/spirv-tools/default.nix
index 2ac91924feb..3a64646ded6 100644
--- a/pkgs/development/tools/spirv-tools/default.nix
+++ b/pkgs/development/tools/spirv-tools/default.nix
@@ -15,7 +15,12 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake python3 ];
- cmakeFlags = [ "-DSPIRV-Headers_SOURCE_DIR=${spirv-headers.src}" ];
+ cmakeFlags = [
+ "-DSPIRV-Headers_SOURCE_DIR=${spirv-headers.src}"
+ # Avoid blanket -Werror to evade build failures on less
+ # tested compilers.
+ "-DSPIRV_WERROR=OFF"
+ ];
# https://github.com/KhronosGroup/SPIRV-Tools/issues/3905
postPatch = ''
diff --git a/pkgs/development/tools/xcbuild/wrapper.nix b/pkgs/development/tools/xcbuild/wrapper.nix
index cefda47cb5b..2dbea4e3833 100644
--- a/pkgs/development/tools/xcbuild/wrapper.nix
+++ b/pkgs/development/tools/xcbuild/wrapper.nix
@@ -1,6 +1,5 @@
-{ lib, stdenv, makeWrapper, writeText, writeShellScriptBin, runCommand
+{ lib, stdenv, makeWrapper, writeText, writeTextFile, runCommand, callPackage
, CoreServices, ImageIO, CoreGraphics
-, runtimeShell, callPackage
, xcodePlatform ? stdenv.targetPlatform.xcodePlatform or "MacOSX"
, xcodeVer ? stdenv.targetPlatform.xcodeVer or "9.4.1"
, sdkVer ? stdenv.targetPlatform.darwinSdkVersion or "10.12" }:
@@ -37,7 +36,7 @@ let
'';
xcode-select = writeText "xcode-select" ''
-#!${runtimeShell}
+#!${stdenv.shell}
while [ $# -gt 0 ]; do
case "$1" in
-h | --help) ;; # noop
@@ -51,7 +50,12 @@ while [ $# -gt 0 ]; do
done
'';
- xcrun = writeShellScriptBin "xcrun" ''
+ xcrun = writeTextFile {
+ name = "xcrun";
+ executable = true;
+ destination = "/bin/xcrun";
+ text = ''
+#!${stdenv.shell}
args=( "$@" )
# If an SDK was requested, check that it matches.
@@ -94,7 +98,11 @@ done
if ! [[ -z "$@" ]]; then
exec "$@"
fi
- '';
+ '';
+ checkPhase = ''
+ ${stdenv.shellDryRun} "$target"
+ '';
+ };
in
diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix
index f9aa1880104..d046c8c7d19 100644
--- a/pkgs/os-specific/linux/kernel/manual-config.nix
+++ b/pkgs/os-specific/linux/kernel/manual-config.nix
@@ -379,6 +379,7 @@ stdenv.mkDerivation ((drvAttrs config stdenv.hostPlatform.linux-kernel kernelPat
"O=$(buildRoot)"
"CC=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
"HOSTCC=${buildPackages.stdenv.cc}/bin/${buildPackages.stdenv.cc.targetPrefix}cc"
+ "HOSTLD=${buildPackages.stdenv.cc.bintools}/bin/${buildPackages.stdenv.cc.targetPrefix}ld"
"ARCH=${stdenv.hostPlatform.linuxArch}"
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
"CROSS_COMPILE=${stdenv.cc.targetPrefix}"
diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix
index 5e5a758f302..47dbbb21db3 100644
--- a/pkgs/os-specific/linux/systemd/default.nix
+++ b/pkgs/os-specific/linux/systemd/default.nix
@@ -122,7 +122,7 @@ assert withHomed -> withCryptsetup;
let
wantCurl = withRemote || withImportd;
wantGcrypt = withResolved || withImportd;
- version = "251.5";
+ version = "251.7";
# Bump this variable on every (major) version change. See below (in the meson options list) for why.
# command:
@@ -139,7 +139,7 @@ stdenv.mkDerivation {
owner = "systemd";
repo = "systemd-stable";
rev = "v${version}";
- sha256 = "sha256-2MEmvFT1D+9v8OazBwjnKc7i/x7i196Eoi8bODk1cM4=";
+ sha256 = "sha256-Sa5diyNFyYtREo1xSCcufAW83ZZGZvueoDVuQ2r8wno=";
};
# On major changes, or when otherwise required, you *must* reformat the patches,
@@ -243,12 +243,14 @@ stdenv.mkDerivation {
opt = condition: pkg: if condition then pkg else null;
in
[
- # bpf compilation support
- { name = "libbpf.so.0"; pkg = opt withLibBPF libbpf; }
+ # bpf compilation support. We use libbpf 1 now.
+ { name = "libbpf.so.1"; pkg = opt withLibBPF libbpf; }
+ { name = "libbpf.so.0"; pkg = null; }
# We did never provide support for libxkbcommon & qrencode
{ name = "libxkbcommon.so.0"; pkg = null; }
{ name = "libqrencode.so.4"; pkg = null; }
+ { name = "libqrencode.so.3"; pkg = null; }
# We did not provide libpwquality before so it is safe to disable it for
# now.
diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix
index e261409d7d2..5ac7967c60f 100644
--- a/pkgs/servers/x11/xorg/overrides.nix
+++ b/pkgs/servers/x11/xorg/overrides.nix
@@ -225,7 +225,7 @@ self: super:
libXi = super.libXi.overrideAttrs (attrs: {
outputs = [ "out" "dev" "man" "doc" ];
- propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ self.libXfixes ];
+ propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ self.libXfixes self.libXext ];
configureFlags = lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
"xorg_cv_malloc0_returns_null=no"
] ++ lib.optional stdenv.hostPlatform.isStatic "--disable-shared";
diff --git a/pkgs/tools/misc/calamares-nixos-extensions/default.nix b/pkgs/tools/misc/calamares-nixos-extensions/default.nix
index a587cd585e1..ad21c398fe9 100644
--- a/pkgs/tools/misc/calamares-nixos-extensions/default.nix
+++ b/pkgs/tools/misc/calamares-nixos-extensions/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "calamares-nixos-extensions";
- version = "0.3.10";
+ version = "0.3.11";
src = fetchFromGitHub {
owner = "NixOS";
repo = "calamares-nixos-extensions";
rev = version;
- sha256 = "YJyK0rsrftrCwYD+aCAkPe/kAqUXsP/4WBAGtNKIGj8=";
+ sha256 = "NAHUU0tQLu8c2dke1V0aM3mHrNgM8ekHSB2Fo9dQUk8=";
};
installPhase = ''
diff --git a/pkgs/tools/misc/calamares/default.nix b/pkgs/tools/misc/calamares/default.nix
index 22b5cde7f45..34d05852a7e 100644
--- a/pkgs/tools/misc/calamares/default.nix
+++ b/pkgs/tools/misc/calamares/default.nix
@@ -36,6 +36,8 @@ mkDerivation rec {
# Fix setting the kayboard layout on GNOME wayland
# By default the module uses the setxkbmap, which will not change the keyboard
./waylandkbd.patch
+ # Change default location where calamares searches for locales
+ ./supportedlocale.patch
];
nativeBuildInputs = [ cmake extra-cmake-modules ];
diff --git a/pkgs/tools/misc/calamares/supportedlocale.patch b/pkgs/tools/misc/calamares/supportedlocale.patch
new file mode 100644
index 00000000000..ab161ffdee7
--- /dev/null
+++ b/pkgs/tools/misc/calamares/supportedlocale.patch
@@ -0,0 +1,13 @@
+diff --git a/src/modules/locale/Config.cpp b/src/modules/locale/Config.cpp
+index 2357019a7..75b547430 100644
+--- a/src/modules/locale/Config.cpp
++++ b/src/modules/locale/Config.cpp
+@@ -48,7 +48,7 @@ loadLocales( const QString& localeGenPath )
+ // supported locales. We first try that one, and if it doesn't exist, we fall back
+ // to parsing the lines from locale.gen
+ localeGenLines.clear();
+- QFile supported( "/usr/share/i18n/SUPPORTED" );
++ QFile supported( "/run/current-system/sw/share/i18n/SUPPORTED" );
+ QByteArray ba;
+
+ if ( supported.exists() && supported.open( QIODevice::ReadOnly | QIODevice::Text ) )
diff --git a/pkgs/tools/misc/libcpuid/default.nix b/pkgs/tools/misc/libcpuid/default.nix
index e7fb2b4da79..83f42dabebe 100644
--- a/pkgs/tools/misc/libcpuid/default.nix
+++ b/pkgs/tools/misc/libcpuid/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "libcpuid";
- version = "0.6.0";
+ version = "0.6.1";
src = fetchFromGitHub {
owner = "anrieff";
repo = "libcpuid";
rev = "v${version}";
- sha256 = "sha256-XX+XFd1ehahIUGONAx2iOxetU0s6vONc7m91zEOWz5o=";
+ sha256 = "sha256-KxG06a56XPa34IJGAJbBeHUKkCEba+R7HOSosTCwQKU=";
};
nativeBuildInputs = [ autoreconfHook ];
@@ -16,6 +16,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
homepage = "http://libcpuid.sourceforge.net/";
description = "A small C library for x86 CPU detection and feature extraction";
+ changelog = "https://raw.githubusercontent.com/anrieff/libcpuid/master/ChangeLog";
license = licenses.bsd2;
maintainers = with maintainers; [ orivej artuuge ];
platforms = platforms.x86;
diff --git a/pkgs/tools/networking/inetutils/default.nix b/pkgs/tools/networking/inetutils/default.nix
index c6362f54469..57ed93d8130 100644
--- a/pkgs/tools/networking/inetutils/default.nix
+++ b/pkgs/tools/networking/inetutils/default.nix
@@ -1,14 +1,14 @@
{ stdenv, lib, fetchurl, ncurses, perl, help2man
-, apparmorRulesFromClosure, fetchpatch
+, apparmorRulesFromClosure
}:
stdenv.mkDerivation rec {
pname = "inetutils";
- version = "2.3";
+ version = "2.4";
src = fetchurl {
url = "mirror://gnu/${pname}/${pname}-${version}.tar.xz";
- sha256 = "sha256-CwG7COKWI8TjuUDyM8lhRR2a+MUGYwGt12pSqV1Rdyw=";
+ sha256 = "sha256-F4nWsbGlff4qere1M+6fXf2cv1tZuxuzwmEu0I0PaLI=";
};
outputs = ["out" "apparmor"];
@@ -16,11 +16,6 @@ stdenv.mkDerivation rec {
patches = [
# https://git.congatec.com/yocto/meta-openembedded/commit/3402bfac6b595c622e4590a8ff5eaaa854e2a2a3
./inetutils-1_9-PATH_PROCNET_DEV.patch
- (fetchpatch {
- name = "CVE-2022-39028.patch";
- url = "https://sources.debian.org/data/main/i/inetutils/2%3A2.3-5/debian/patches/inetutils-telnetd-EC_EL_null_deref.patch";
- sha256 = "sha256-NYNDbEk3q3EhQdJaR12JBbnjJIRRpOcKLBF/EJJPiGU=";
- })
];
nativeBuildInputs = [ help2man perl /* for `whois' */ ];
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 9456fdfe648..3e880dc4df6 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -19489,8 +19489,11 @@ with pkgs;
icu71 = callPackage ../development/libraries/icu/71.nix ({
nativeBuildRoot = buildPackages.icu71.override { buildRootOnly = true; };
});
+ icu72 = callPackage ../development/libraries/icu/72.nix ({
+ nativeBuildRoot = buildPackages.icu72.override { buildRootOnly = true; };
+ });
- icu = icu71;
+ icu = icu72;
id3lib = callPackage ../development/libraries/id3lib { };
@@ -25706,6 +25709,7 @@ with pkgs;
enableMinimal = true;
guiSupport = false;
};
+ libbpf = libbpf_1;
};
systemdMinimal = systemd.override {
pname = "systemd-minimal";
diff --git a/pkgs/top-level/ruby-packages.nix b/pkgs/top-level/ruby-packages.nix
index d8d4320f0c0..bb25b2df7a0 100644
--- a/pkgs/top-level/ruby-packages.nix
+++ b/pkgs/top-level/ruby-packages.nix
@@ -1100,10 +1100,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "19ynyc7wzl71hn7jw467xr188v0az679l54167slm3jh5mx6rijf";
+ sha256 = "03qiz6kbk260v3613z4wrk8iy1mi06j631fglcskfxyhf18lpy05";
type = "gem";
};
- version = "6.0.7";
+ version = "6.0.8";
};
hashie = {
groups = ["default"];
@@ -1325,6 +1325,17 @@
};
version = "0.1.4";
};
+ jekyll-favicon = {
+ dependencies = ["jekyll" "mini_magick" "rexml"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0dyksm4i11n0qshd7wh6dvk8d0fc70dd32ir2dxs6igxq0gd6hi1";
+ type = "gem";
+ };
+ version = "1.1.0";
+ };
jekyll-feed = {
dependencies = ["jekyll"];
groups = ["default"];
@@ -1752,10 +1763,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0rsgvdyh828k6bz95b4391ydv6710d4dsdrrfr684glks7599ldf";
+ sha256 = "1jbqw7hkx08i5dj74fwfdc16980hsj3mhrxp4mmjxsdzw1kndrvp";
type = "gem";
};
- version = "3.2.3";
+ version = "3.2.4";
};
liquid = {
groups = ["default"];