diff --git a/nixos/doc/manual/release-notes/rl-2511.section.md b/nixos/doc/manual/release-notes/rl-2511.section.md index 16ce699c53f2..848fa1eb9b52 100644 --- a/nixos/doc/manual/release-notes/rl-2511.section.md +++ b/nixos/doc/manual/release-notes/rl-2511.section.md @@ -344,7 +344,7 @@ - Due to [deprecation of gnome-session X11 support](https://blogs.gnome.org/alatiera/2025/06/08/the-x11-session-removal/), `services.desktopManager.pantheon` now defaults to pantheon-wayland session. The X11 session has been removed, see [this issue](https://github.com/elementary/session-settings/issues/91) for details. -- `bcachefs` file systems will now use the out-of-tree module for supported kernels. The in-tree module is unmaintained and users are strongly recommended to switch to kernels that support the out-of-tree module. +- `bcachefs` file systems will now use the out-of-tree module for supported kernels. The in-tree module has been removed, and users will need to switch to kernels that support the out-of-tree module. - `services.filesender` and the package `filesender` have been removed because they depend on `simplesamlphp`. diff --git a/nixos/modules/installer/cd-dvd/latest-kernel.nix b/nixos/modules/installer/cd-dvd/latest-kernel.nix index 53b9af38ba0b..20190ebd2531 100644 --- a/nixos/modules/installer/cd-dvd/latest-kernel.nix +++ b/nixos/modules/installer/cd-dvd/latest-kernel.nix @@ -2,6 +2,7 @@ { boot.kernelPackages = pkgs.linuxPackages_latest; boot.supportedFilesystems.zfs = false; + boot.supportedFilesystems.bcachefs = true; environment.etc."nixos-generate-config.conf".text = '' [Defaults] Kernel=latest diff --git a/nixos/modules/tasks/filesystems/bcachefs.nix b/nixos/modules/tasks/filesystems/bcachefs.nix index bbd9b40ad8e5..362f6ff32b10 100644 --- a/nixos/modules/tasks/filesystems/bcachefs.nix +++ b/nixos/modules/tasks/filesystems/bcachefs.nix @@ -242,14 +242,6 @@ in } ]; - warnings = lib.mkIf cfg.modulePackage.meta.broken [ - '' - Using unmaintained in-tree bcachefs kernel module. This - will be removed in 26.05. Please use a kernel supported - by the out-of-tree module package. - '' - ]; - # Bcachefs upstream recommends using the latest kernel boot.kernelPackages = lib.mkDefault pkgs.linuxPackages_latest; @@ -257,9 +249,7 @@ in system.fsPackages = [ cfg.package ]; services.udev.packages = [ cfg.package ]; - boot.extraModulePackages = lib.optionals (!cfg.modulePackage.meta.broken) [ - cfg.modulePackage - ]; + boot.extraModulePackages = [ cfg.modulePackage ]; systemd = { packages = [ cfg.package ]; diff --git a/pkgs/by-name/li/libressl/cmake-install-full-dirs.3.9.patch b/pkgs/by-name/li/libressl/cmake-install-full-dirs.3.9.patch new file mode 100644 index 000000000000..69a4b102be64 --- /dev/null +++ b/pkgs/by-name/li/libressl/cmake-install-full-dirs.3.9.patch @@ -0,0 +1,17 @@ +diff --git c/CMakeLists.txt w/CMakeLists.txt +index 01a42fb..1a9a505 100644 +--- c/CMakeLists.txt ++++ w/CMakeLists.txt +@@ -515,9 +515,9 @@ if(ENABLE_LIBRESSL_INSTALL) + if(NOT MSVC) + # Create pkgconfig files. + set(prefix ${CMAKE_INSTALL_PREFIX}) +- set(exec_prefix \${prefix}) +- set(libdir \${exec_prefix}/${CMAKE_INSTALL_LIBDIR}) +- set(includedir \${prefix}/include) ++ set(exec_prefix ${CMAKE_INSTALL_FULL_BINDIR}) ++ set(libdir ${CMAKE_INSTALL_FULL_LIBDIR}) ++ set(includedir ${CMAKE_INSTALL_FULL_INCLUDEDIR}) + if(PLATFORM_LIBS) + string(REGEX REPLACE ";" " -l" PLATFORM_LDADD ";${PLATFORM_LIBS}") + endif() diff --git a/pkgs/development/libraries/libressl/default.nix b/pkgs/by-name/li/libressl/default.nix similarity index 84% rename from pkgs/development/libraries/libressl/default.nix rename to pkgs/by-name/li/libressl/default.nix index fe8731c0a38f..f4cbfbc673df 100644 --- a/pkgs/development/libraries/libressl/default.nix +++ b/pkgs/by-name/li/libressl/default.nix @@ -37,9 +37,6 @@ let # .note.GNU-stack section, and if that section is missing from any object, # the linker will make the stack executable. "-DCMAKE_C_FLAGS=-DHAVE_GNU_STACK" - # libressl will append this to the regular prefix for libdir - "-DCMAKE_INSTALL_LIBDIR=lib" - "-DTLS_DEFAULT_CA_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt" ] ++ lib.optional buildShared "-DBUILD_SHARED_LIBS=ON"; @@ -50,9 +47,6 @@ let # removing ./configure pre-config. preConfigure = '' rm configure - substituteInPlace CMakeLists.txt \ - --replace-fail 'exec_prefix \''${prefix}' "exec_prefix ${placeholder "bin"}" \ - --replace-fail 'libdir \''${exec_prefix}' 'libdir \''${prefix}' ''; inherit patches; @@ -86,10 +80,10 @@ let moveToOutput "share/man/man1/nc.1.gz" "$nc" ''; - meta = with lib; { + meta = { description = "Free TLS/SSL implementation"; homepage = "https://www.libressl.org"; - license = with licenses; [ + license = with lib.licenses; [ publicDomain bsdOriginal bsd0 @@ -98,8 +92,8 @@ let isc openssl ]; - platforms = platforms.all; - maintainers = with maintainers; [ + platforms = lib.platforms.all; + maintainers = with lib.maintainers; [ thoughtpolice fpletz ]; @@ -116,6 +110,11 @@ let ]; }; }; + # https://github.com/libressl/portable/pull/1206 + common-cmake-install-full-dirs-patch = fetchpatch { + url = "https://github.com/libressl/portable/commit/a15ea0710398eaeed3be53cf643e80a1e80c981d.patch"; + hash = "sha256-Mlf4SrGCCqALQicbGtmVGdkdfcE8DEGYkOuVyG2CozM="; + }; in { libressl_3_9 = generic { @@ -129,6 +128,9 @@ in url = "https://github.com/libressl/portable/commit/e6c7de3f03c51fbdcf5ad88bf12fe9e128521f0d.patch"; hash = "sha256-LJy3fjbnc9h5DG3/+8bLECwJeBpPxy3hU8sPuhovmcw="; }) + # common-cmake-install-full-dirs-patch doesn't apply for this version, so + # this is a manual backport + ./cmake-install-full-dirs.3.9.patch ]; }; @@ -149,6 +151,7 @@ in ''; hash = "sha256-dEdtmHHiR7twAqgebXv1Owle/KYCak71NhDCp0PdseU="; }) + common-cmake-install-full-dirs-patch ]; }; @@ -166,5 +169,16 @@ in } } include/arch/loongarch64/opensslconf.h ''; + patches = [ + common-cmake-install-full-dirs-patch + ]; + }; + + libressl_4_2 = generic { + version = "4.2.0"; + hash = "sha256-D326RNfLjfjVPyz78ZVSVLwSjgCJWV8aui+s+u6ECLI="; + patches = [ + common-cmake-install-full-dirs-patch + ]; }; } diff --git a/pkgs/by-name/li/libressl/package.nix b/pkgs/by-name/li/libressl/package.nix new file mode 100644 index 000000000000..f9b05eb9555b --- /dev/null +++ b/pkgs/by-name/li/libressl/package.nix @@ -0,0 +1,5 @@ +{ + libressl_4_2, +}: + +libressl_4_2 diff --git a/pkgs/by-name/ru/ruff/package.nix b/pkgs/by-name/ru/ruff/package.nix index 91f01c964b9b..7411af78662d 100644 --- a/pkgs/by-name/ru/ruff/package.nix +++ b/pkgs/by-name/ru/ruff/package.nix @@ -16,18 +16,18 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "ruff"; - version = "0.14.0"; + version = "0.14.1"; src = fetchFromGitHub { owner = "astral-sh"; repo = "ruff"; tag = finalAttrs.version; - hash = "sha256-Vueccz5lkUTdgqqZl/+PB0kVYezvPKIVxee8EJYcz4g="; + hash = "sha256-jBhlaLWoWp+sNsLBrHoT3J5dtdU1sZzuuhugw9UVw+c="; }; cargoBuildFlags = [ "--package=ruff" ]; - cargoHash = "sha256-bnSTiQzlZrS2tqQiRHr6gNDq40Naqxrxcyc8zcVlt7A="; + cargoHash = "sha256-shDP5j3mGpnFV0cuFmsWfPoOzJB/wSTUEjNUO+CIadg="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/by-name/ti/time/package.nix b/pkgs/by-name/ti/time/package.nix index af26954c2c57..cd49f0f89850 100644 --- a/pkgs/by-name/ti/time/package.nix +++ b/pkgs/by-name/ti/time/package.nix @@ -17,11 +17,9 @@ stdenv.mkDerivation (finalAttrs: { patches = [ # fixes cross-compilation to riscv64-linux ./time-1.9-implicit-func-decl-clang.patch + # https://lists.gnu.org/archive/html/bug-time/2025-10/msg00000.html # fix compilation with gcc15 - (fetchpatch { - url = "https://src.fedoraproject.org/rpms/time/raw/191440912c2e9a63af87802e507ca3ccb923e805/f/time-1.9-Fix-compiling-with-GCC15.patch"; - hash = "sha256-4Qp3mV8XuCmz518GPtrW52gyaPOb+97RE6FDPKNCyJw="; - }) + ./time-1.9-fix-sighandler-prototype-for-c23.patch ]; meta = { diff --git a/pkgs/by-name/ti/time/time-1.9-fix-sighandler-prototype-for-c23.patch b/pkgs/by-name/ti/time/time-1.9-fix-sighandler-prototype-for-c23.patch new file mode 100644 index 000000000000..d092fa39ef2f --- /dev/null +++ b/pkgs/by-name/ti/time/time-1.9-fix-sighandler-prototype-for-c23.patch @@ -0,0 +1,30 @@ +In C23 functions with empty argument list in the prototype are treated +as taking no arguments. This means that the `int` argument of the +sighandler must be specified explicitly or the code will fail to +compile due to mismatched function type. + +Signed-off-by: Marcin Serwin +--- +This fixes the same issue as + and + but does not +rely on `sighandler_t` which is a GNU extension. + + src/time.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/time.c b/src/time.c +index 7b401bc..88287dd 100644 +--- a/src/time.c ++++ b/src/time.c +@@ -77,7 +77,7 @@ enum + + + /* A Pointer to a signal handler. */ +-typedef RETSIGTYPE (*sighandler) (); ++typedef RETSIGTYPE (*sighandler) (int); + + /* msec = milliseconds = 1/1,000 (1*10e-3) second. + usec = microseconds = 1/1,000,000 (1*10e-6) second. */ +-- +2.51.0 diff --git a/pkgs/by-name/to/toml11/package.nix b/pkgs/by-name/to/toml11/package.nix index 8bf21b712a05..dd5924edd489 100644 --- a/pkgs/by-name/to/toml11/package.nix +++ b/pkgs/by-name/to/toml11/package.nix @@ -3,7 +3,9 @@ stdenv, fetchFromGitHub, cmake, + doctest, fetchpatch, + nlohmann_json, }: stdenv.mkDerivation (finalAttrs: { @@ -14,8 +16,7 @@ stdenv.mkDerivation (finalAttrs: { owner = "ToruNiina"; repo = "toml11"; tag = "v${finalAttrs.version}"; - hash = "sha256-NnM+I43UVcd72Y9h+ysAAc7s5gZ78mjVwIMReTJ7G5M="; - fetchSubmodules = true; + hash = "sha256-sgWKYxNT22nw376ttGsTdg0AMzOwp8QH3E8mx0BZJTQ="; }; patches = [ @@ -26,11 +27,21 @@ stdenv.mkDerivation (finalAttrs: { }) ]; + # Required to use the system `doctest` over upstream's submodule + postPatch = lib.optionalString finalAttrs.finalPackage.doCheck '' + substituteInPlace tests/*.{c,h}pp \ + --replace-warn '"doctest.h"' '"doctest/doctest.h"' + ''; + nativeBuildInputs = [ cmake ]; cmakeFlags = [ - (lib.cmakeBool "TOML11_BUILD_TOML_TESTS" true) + (lib.cmakeBool "TOML11_BUILD_TOML_TESTS" finalAttrs.finalPackage.doCheck) + ]; + checkInputs = [ + doctest + nlohmann_json ]; doCheck = true; diff --git a/pkgs/by-name/wh/whois/package.nix b/pkgs/by-name/wh/whois/package.nix index 44d87d25a7b6..f5b434fc5b8a 100644 --- a/pkgs/by-name/wh/whois/package.nix +++ b/pkgs/by-name/wh/whois/package.nix @@ -11,14 +11,14 @@ }: stdenv.mkDerivation rec { - version = "5.6.4"; + version = "5.6.5"; pname = "whois"; src = fetchFromGitHub { owner = "rfc1036"; repo = "whois"; rev = "v${version}"; - hash = "sha256-9c67LrpJu3cW/j1hfNhatB4nkCxMTCfHpszawGtU7ko="; + hash = "sha256-zCaM3fMittoEzuMRELqc1ES8QPgZRXVjyHUfMsS5tJA="; }; patches = [ diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index fdb300836d80..15914d94400d 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -714,8 +714,8 @@ let BTRFS_FS_POSIX_ACL = yes; - BCACHEFS_QUOTA = whenBetween "6.7" "6.18" (option yes); - BCACHEFS_POSIX_ACL = whenBetween "6.7" "6.18" (option yes); + # Provided by external module + BCACHEFS_FS = whenBetween "6.7" "6.18" no; UBIFS_FS_ADVANCED_COMPR = option yes; @@ -988,6 +988,11 @@ let # Enable device detection on virtio-mmio hypervisors VIRTIO_MMIO_CMDLINE_DEVICES = yes; + + # Enable CDEV and NOIOMMU support for VFIO, which is useful for + # passthrough. + VFIO_DEVICE_CDEV = yes; + VFIO_NOIOMMU = yes; }; media = { diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json index e40d19fac90b..144d74916ee7 100644 --- a/pkgs/os-specific/linux/kernel/kernels-org.json +++ b/pkgs/os-specific/linux/kernel/kernels-org.json @@ -1,17 +1,17 @@ { "testing": { - "version": "6.18-rc1", - "hash": "sha256:1warfcvr86as1rcls3g5f9i4az6xqabjwmf6jxlx9dk2l523sl1l", + "version": "6.18-rc2", + "hash": "sha256:1qnn47hz4q8z1613p4d641qmj71g631zwv7x7nglp9ixg2r4lxzv", "lts": false }, "6.1": { - "version": "6.1.156", - "hash": "sha256:13i2l04pmba7dksz2p5kwxgr5bydc5lp7284d4wfsnjf425i9fyl", + "version": "6.1.157", + "hash": "sha256:0vpnjrk5kjc03sk5m66i9bv677xfy9mfrjvzx3jcrbr10bhq98d0", "lts": true }, "5.15": { - "version": "5.15.194", - "hash": "sha256:0zi6ihvjmaf940arnc7jjvdqrjf3cvkc9mqc8n24dz85vam6z39l", + "version": "5.15.195", + "hash": "sha256:0hd4p76qv29zlr0iik4j9y9qynyqisk6bgfiqcwkk7gr6bf81l13", "lts": true }, "5.10": { @@ -25,13 +25,13 @@ "lts": true }, "6.6": { - "version": "6.6.112", - "hash": "sha256:08la2f8w5w2x0l9nmvzsmbwa951xyshhvdhwwhfyjmka66zr4zbc", + "version": "6.6.113", + "hash": "sha256:07n494cblmlfmn8l3kjalwlnb1f9xxxf8c31kkfr5lb1wk9cz58z", "lts": true }, "6.12": { - "version": "6.12.53", - "hash": "sha256:1df0sahirxsby2imsbi04vcn2bimskl4l2r19v7sywz6ran0fdb6", + "version": "6.12.54", + "hash": "sha256:0qny8c4r9rf55bvchs5vjplfldngmydn0j47a97c9vpgj0rws38v", "lts": true }, "6.16": { @@ -40,8 +40,8 @@ "lts": false }, "6.17": { - "version": "6.17.3", - "hash": "sha256:16cld01iwn6hhayxh6f0z71rph0z3p3m4bsd49szddd5v0cqdk1y", + "version": "6.17.4", + "hash": "sha256:1nwi0hzikziwkxm9xzf819wb3lsz93i1ns1nzybpbfkgdqli42h1", "lts": false } } diff --git a/pkgs/tools/package-management/nix/dependencies.nix b/pkgs/tools/package-management/nix/dependencies.nix index 7f3b5780607a..ed5a63ce3ecf 100644 --- a/pkgs/tools/package-management/nix/dependencies.nix +++ b/pkgs/tools/package-management/nix/dependencies.nix @@ -34,12 +34,5 @@ regular@{ # only a stripped down version is built which takes a lot less resources to build requiredSystemFeatures = [ ]; }; - - libgit2 = pkgs.libgit2.overrideAttrs (old: { - # Drop the SSH buffer overflow patch to avoid rebuilding Nix - patches = lib.filter (p: !lib.hasSuffix "fix-ssh-custom-heap-buffer-overflow.patch" (toString p)) ( - old.patches or [ ] - ); - }); }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e6a26fe6f280..2a7374cde808 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8332,14 +8332,13 @@ with pkgs; watcherclient = with python313Packages; toPythonApplication python-watcherclient; zunclient = with python313Packages; toPythonApplication python-zunclient; - inherit (callPackages ../development/libraries/libressl { }) + inherit (callPackages ../by-name/li/libressl { }) libressl_3_9 libressl_4_0 libressl_4_1 + libressl_4_2 ; - libressl = libressl_4_1; - openssl = openssl_3_5; openssl_legacy = openssl.override {