From 37b94e7967c359f5c33bd381ee01299197e1adc1 Mon Sep 17 00:00:00 2001 From: Collin Diekvoss Date: Wed, 11 Jun 2025 20:35:22 -0500 Subject: [PATCH 01/30] flaresolverr: 3.3.21-unstable-2025-03-04 -> 3.3.24 --- pkgs/by-name/fl/flaresolverr/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/fl/flaresolverr/package.nix b/pkgs/by-name/fl/flaresolverr/package.nix index a3f6a17a21b8..bbfa8232cd91 100644 --- a/pkgs/by-name/fl/flaresolverr/package.nix +++ b/pkgs/by-name/fl/flaresolverr/package.nix @@ -32,13 +32,13 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "flaresolverr"; - version = "3.3.21-unstable-2025-03-04"; + version = "3.3.24"; src = fetchFromGitHub { owner = "FlareSolverr"; repo = "FlareSolverr"; - rev = "ce5369dd413cd71a81ce38a5ccd379f6c9352e23"; - hash = "sha256-cZ/YT4H2OU5l3AosROnkoyT5qrva5lxKshQMS626f2E="; + rev = "v${finalAttrs.version}"; + hash = "sha256-BIV5+yLTgVQJtxi/F9FwtZ4pYcE2vGHmEgwigMtqwD8="; }; nativeBuildInputs = [ makeWrapper ]; From 1619ac07d4d91bbe5b797a704b596bc6846a737b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 5 Aug 2025 03:47:52 +0000 Subject: [PATCH 02/30] albert: 0.30.1 -> 0.31.1 --- pkgs/by-name/al/albert/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/al/albert/package.nix b/pkgs/by-name/al/albert/package.nix index 92cf1b771fd4..584e49468f16 100644 --- a/pkgs/by-name/al/albert/package.nix +++ b/pkgs/by-name/al/albert/package.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "albert"; - version = "0.30.1"; + version = "0.31.1"; src = fetchFromGitHub { owner = "albertlauncher"; repo = "albert"; tag = "v${finalAttrs.version}"; - hash = "sha256-EscR31DZzLszs2jPQDDcB7SFtSuWPjSBpjJw8i+PsD0="; + hash = "sha256-7YtDC0Xkv2y7vF58j78GsOPAMSvuwTmEobHULDBt9BI="; fetchSubmodules = true; }; From 6d9be8e91b7f443c64466ff2d44c5564b388015f Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Wed, 6 Aug 2025 15:00:42 +0200 Subject: [PATCH 03/30] nixos-render-docs: Improve redirects hint --- .../nixos-render-docs/src/nixos_render_docs/redirects.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/ni/nixos-render-docs/src/nixos_render_docs/redirects.py b/pkgs/by-name/ni/nixos-render-docs/src/nixos_render_docs/redirects.py index a9e082c4c370..5669b0aa27b4 100644 --- a/pkgs/by-name/ni/nixos-render-docs/src/nixos_render_docs/redirects.py +++ b/pkgs/by-name/ni/nixos-render-docs/src/nixos_render_docs/redirects.py @@ -59,6 +59,8 @@ This can happen when an identifier was added, renamed, or removed. Added new content? $ redirects add-content ❬identifier❭ ❬path❭ + often: + $ redirects add-content ❬identifier❭ index.html Moved existing content to a different output path? $ redirects move-content ❬identifier❭ ❬path❭ @@ -69,7 +71,11 @@ This can happen when an identifier was added, renamed, or removed. Removed content? Redirect to alternatives or relevant release notes. $ redirects remove-and-redirect ❬identifier❭ ❬target-identifier❭ - NOTE: Run `nix-shell doc` or `nix-shell nixos/doc/manual` to make this command available. + NOTE: Run the right nix-shell to make this command available. + Nixpkgs: + $ nix-shell doc + NixOS: + $ nix-shell nixos/doc/manual """) error_messages.append("NOTE: If your build passes locally and you see this message in CI, you probably need a rebase.") return "\n".join(error_messages) From 6857dc8712c345f804cf87ffc0324e6f361364ec Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Thu, 7 Aug 2025 11:22:13 +0300 Subject: [PATCH 04/30] pkgs/README: Document commit prefixes & automatic CI builds Somewhat based upon ofborg's README contents: https://github.com/NixOS/ofborg?tab=readme-ov-file#automatic-building Co-authored-by: Wolfgang Walther Co-authored-by: Peder Bergebakken Sundt --- pkgs/README.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/pkgs/README.md b/pkgs/README.md index 14a4fc355fb5..7dd549cc3438 100644 --- a/pkgs/README.md +++ b/pkgs/README.md @@ -187,6 +187,27 @@ To add a package to Nixpkgs: (using "→" instead of "->" is also accepted) +Using the `(pkg-name):` prefix is important beyond just being a convention: it queues automatic builds by CI. +More sophisticated prefixes are also possible: + +| Message | Automatic Builds | +|--------------------------------------------------------------------------|------------------------------------------------------------| +| `vim: 1.0.0 -> 2.0.0` | `vim` | +| `vagrant: fix dependencies for version 2.0.2` | `vagrant` | +| `python3{9,10}Packages.requests: 1.0.0 -> 2.0.0` | `python39Packages.requests`, `python310Packages.requests` | +| `python312.pkgs.numpy,python313.pkgs.scipy: fix build` | `python312.pkgs.numpy` , `python313.pkgs.scipy` | + +When opening a PR with multiple commits, CI creates a single build job for all detected packages. +If `passthru.tests` attributes are available, these will be built as well. + +If the title of the _PR_ begins with `WIP:` or contains `[WIP]` anywhere, its packages are not built automatically. +Other than that, PR titles have meaning only for humans. +It is recommended to keep the PR title in sync with the commit title, to make it easier to find. +For PRs with multiple commits, the PR title should be a general summary of these commits. + +[!NOTE] +Marking a PR as a draft does not prevent automatic builds. + ## Category Hierarchy [categories]: #category-hierarchy From ce53065b40dc1b7c8b31875c008808343a3ff897 Mon Sep 17 00:00:00 2001 From: Jon Hermansen Date: Thu, 7 Aug 2025 20:13:16 -0400 Subject: [PATCH 05/30] microsoft-edge: 138.0.3351.121 -> 139.0.3405.86 --- pkgs/by-name/mi/microsoft-edge/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/mi/microsoft-edge/package.nix b/pkgs/by-name/mi/microsoft-edge/package.nix index 74926a3f7e8c..a0de5f803673 100644 --- a/pkgs/by-name/mi/microsoft-edge/package.nix +++ b/pkgs/by-name/mi/microsoft-edge/package.nix @@ -178,11 +178,11 @@ in stdenvNoCC.mkDerivation (finalAttrs: { pname = "microsoft-edge"; - version = "138.0.3351.121"; + version = "139.0.3405.86"; src = fetchurl { url = "https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_${finalAttrs.version}-1_amd64.deb"; - hash = "sha256-1Oi6Q2/2Pk0BG937Ij0zI7tgBSnwhPwGx34b+HlpXTU="; + hash = "sha256-S1/RUSwRQsBQno/I31xjw1CGs0tJpl5HRatat+wOqmE="; }; # With strictDeps on, some shebangs were not being patched correctly From 306edac8db52f05601e7f64b9c71fb34b09825a5 Mon Sep 17 00:00:00 2001 From: Adam Dinwoodie Date: Fri, 8 Aug 2025 21:15:27 +0100 Subject: [PATCH 06/30] fetchtorrent: record rqbit tests as broken See #432001 --- pkgs/build-support/fetchtorrent/tests.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pkgs/build-support/fetchtorrent/tests.nix b/pkgs/build-support/fetchtorrent/tests.nix index 05c91111ab68..a05c7993ac36 100644 --- a/pkgs/build-support/fetchtorrent/tests.nix +++ b/pkgs/build-support/fetchtorrent/tests.nix @@ -36,12 +36,16 @@ in url = "https://webtorrent.io/torrents/wired-cd.torrent"; hash = "sha256-OCsC22WuanqoN6lPv5wDT5ZxPcEHDpZ1EgXGvz1SDYo="; backend = "rqbit"; - inherit (wired-cd) meta; + meta = wired-cd.meta // { + broken = true; + }; }; magnet-link-rqbit = testers.invalidateFetcherByDrvHash fetchtorrent { url = "magnet:?xt=urn:btih:a88fda5954e89178c372716a6a78b8180ed4dad3&dn=The+WIRED+CD+-+Rip.+Sample.+Mash.+Share&tr=udp%3A%2F%2Fexplodie.org%3A6969&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Ftracker.empire-js.us%3A1337&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=wss%3A%2F%2Ftracker.btorrent.xyz&tr=wss%3A%2F%2Ftracker.fastcast.nz&tr=wss%3A%2F%2Ftracker.openwebtorrent.com&ws=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2F&xs=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2Fwired-cd.torrent"; hash = "sha256-OCsC22WuanqoN6lPv5wDT5ZxPcEHDpZ1EgXGvz1SDYo="; backend = "rqbit"; - inherit (wired-cd) meta; + meta = wired-cd.meta // { + broken = true; + }; }; } From bd13421b2b70f3f125061018c800439ef2d43e8d Mon Sep 17 00:00:00 2001 From: Adam Dinwoodie Date: Fri, 8 Aug 2025 21:19:29 +0100 Subject: [PATCH 07/30] fetchtorrent: test using Sintel torrent The current torrent used for testing fetchtorrent isn't free, which prevents the tests running in a lot of environments. Swap for a torrent of the Sintel film, which has a free license. This unfortunately increases the closure size of the tests: Sintel is 124MB, compared to 54MB for the Wired CD. This was the smallest torrent I could find that both had a free license and was sufficiently well seeded to be useful for testing. --- pkgs/build-support/fetchtorrent/tests.nix | 65 +++++++++++++---------- 1 file changed, 36 insertions(+), 29 deletions(-) diff --git a/pkgs/build-support/fetchtorrent/tests.nix b/pkgs/build-support/fetchtorrent/tests.nix index a05c7993ac36..392d53b8956d 100644 --- a/pkgs/build-support/fetchtorrent/tests.nix +++ b/pkgs/build-support/fetchtorrent/tests.nix @@ -1,50 +1,57 @@ -{ testers, fetchtorrent, ... }: +{ + lib, + testers, + fetchtorrent, + ... +}: let - wired-cd.meta.license = [ - # track 1, 4 and 11 - { - spdxID = "CC NC-SAMPLING+ 1.0 Deed"; - fullName = "NonCommercial Sampling Plus 1.0 Generic"; - url = "https://creativecommons.org/licenses/nc-sampling+/1.0/"; - free = false; # for noncommercial purposes only - } - # the rest - { - spdxID = "CC SAMPLING+ 1.0 Deed"; - fullName = "Sampling Plus 1.0 Generic"; - url = "https://creativecommons.org/licenses/sampling+/1.0/"; - free = true; # no use in advertisement - } - ]; + sintel.meta = { + description = "An open source short film to show off open source technologies."; + longDescription = '' + An independently produced short film, initiated by the Blender Foundation + as a means to further improve andvalidate the free/open source 3D + creation suite Blender. + ''; + license = lib.licenses.cc-by-30; + homepage = "https://durian.blender.org/"; + }; + + # Via https://webtorrent.io/free-torrents + httpUrl = "https://webtorrent.io/torrents/sintel.torrent"; + magnetUrl = "magnet:?xt=urn:btih:08ada5a7a6183aae1e09d831df6748d566095a10&dn=Sintel&tr=udp%3A%2F%2Fexplodie.org%3A6969&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Ftracker.empire-js.us%3A1337&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=wss%3A%2F%2Ftracker.btorrent.xyz&tr=wss%3A%2F%2Ftracker.fastcast.nz&tr=wss%3A%2F%2Ftracker.openwebtorrent.com&ws=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2F&xs=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2Fsintel.torrent"; + + # All routes to download the torrent should produce the same output and + # therefore have the same FOD hash. + hash = "sha256-EzbmBiTEWOlFUNaV5R4eDeD9EBbp6d93rfby88ACg0s="; in { http-link = testers.invalidateFetcherByDrvHash fetchtorrent { - url = "https://webtorrent.io/torrents/wired-cd.torrent"; - hash = "sha256-OCsC22WuanqoN6lPv5wDT5ZxPcEHDpZ1EgXGvz1SDYo="; + inherit hash; + url = httpUrl; backend = "transmission"; - inherit (wired-cd) meta; + inherit (sintel) meta; }; magnet-link = testers.invalidateFetcherByDrvHash fetchtorrent { - url = "magnet:?xt=urn:btih:a88fda5954e89178c372716a6a78b8180ed4dad3&dn=The+WIRED+CD+-+Rip.+Sample.+Mash.+Share&tr=udp%3A%2F%2Fexplodie.org%3A6969&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Ftracker.empire-js.us%3A1337&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=wss%3A%2F%2Ftracker.btorrent.xyz&tr=wss%3A%2F%2Ftracker.fastcast.nz&tr=wss%3A%2F%2Ftracker.openwebtorrent.com&ws=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2F&xs=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2Fwired-cd.torrent"; - hash = "sha256-OCsC22WuanqoN6lPv5wDT5ZxPcEHDpZ1EgXGvz1SDYo="; + inherit hash; + url = magnetUrl; backend = "transmission"; - inherit (wired-cd) meta; + inherit (sintel) meta; }; http-link-rqbit = testers.invalidateFetcherByDrvHash fetchtorrent { - url = "https://webtorrent.io/torrents/wired-cd.torrent"; - hash = "sha256-OCsC22WuanqoN6lPv5wDT5ZxPcEHDpZ1EgXGvz1SDYo="; + inherit hash; + url = httpUrl; backend = "rqbit"; - meta = wired-cd.meta // { + meta = sintel.meta // { broken = true; }; }; magnet-link-rqbit = testers.invalidateFetcherByDrvHash fetchtorrent { - url = "magnet:?xt=urn:btih:a88fda5954e89178c372716a6a78b8180ed4dad3&dn=The+WIRED+CD+-+Rip.+Sample.+Mash.+Share&tr=udp%3A%2F%2Fexplodie.org%3A6969&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Ftracker.empire-js.us%3A1337&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=wss%3A%2F%2Ftracker.btorrent.xyz&tr=wss%3A%2F%2Ftracker.fastcast.nz&tr=wss%3A%2F%2Ftracker.openwebtorrent.com&ws=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2F&xs=https%3A%2F%2Fwebtorrent.io%2Ftorrents%2Fwired-cd.torrent"; - hash = "sha256-OCsC22WuanqoN6lPv5wDT5ZxPcEHDpZ1EgXGvz1SDYo="; + inherit hash; + url = magnetUrl; backend = "rqbit"; - meta = wired-cd.meta // { + meta = sintel.meta // { broken = true; }; }; From 03f72c88bed0ef41fabaa532ba8c333ce75e0584 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 8 Aug 2025 20:31:44 +0000 Subject: [PATCH 08/30] sev-snp-measure: 0.0.11 -> 0.0.12 --- pkgs/development/python-modules/sev-snp-measure/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/sev-snp-measure/default.nix b/pkgs/development/python-modules/sev-snp-measure/default.nix index 21c0f5f84d79..360ae863accc 100644 --- a/pkgs/development/python-modules/sev-snp-measure/default.nix +++ b/pkgs/development/python-modules/sev-snp-measure/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "sev-snp-measure"; - version = "0.0.11"; + version = "0.0.12"; pyproject = true; @@ -16,7 +16,7 @@ buildPythonPackage rec { owner = "virtee"; repo = "sev-snp-measure"; tag = "v${version}"; - hash = "sha256-M+d9uIAQvEmEsdhhjlwHbhB2RhlaGjphN4ov2ipzCFY="; + hash = "sha256-UcXU6rNjcRN1T+iWUNrqeJCkSa02WU1/pBwLqHVPRyw="; }; nativeBuildInputs = [ @@ -32,7 +32,7 @@ buildPythonPackage rec { meta = { description = "Calculate AMD SEV/SEV-ES/SEV-SNP measurement for confidential computing"; homepage = "https://github.com/virtee/sev-snp-measure"; - changelog = "https://github.com/virtee/sev-snp-measure/releases/tag/v${version}"; + changelog = "https://github.com/virtee/sev-snp-measure/releases/tag/${src.tag}"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ msanft ]; mainProgram = "sev-snp-measure"; From bb954cddf529ba4d37c5c675cde34e116699031f Mon Sep 17 00:00:00 2001 From: nikstur Date: Mon, 28 Jul 2025 17:46:54 +0200 Subject: [PATCH 09/30] nixos/network-interfaces: let networkd handle privacy extensions This removes bash from the mandatory system closure. --- nixos/modules/system/boot/networkd.nix | 10 +- nixos/modules/tasks/network-interfaces.nix | 273 +++++++++++---------- 2 files changed, 146 insertions(+), 137 deletions(-) diff --git a/nixos/modules/system/boot/networkd.nix b/nixos/modules/system/boot/networkd.nix index dba90620719c..bc6c9166b956 100644 --- a/nixos/modules/system/boot/networkd.nix +++ b/nixos/modules/system/boot/networkd.nix @@ -1884,6 +1884,11 @@ let networkdOptions = { networkConfig = mkOption { default = { }; + defaultText = lib.literalExpression '' + { + IPv6PrivacyExtensions = true; + } + ''; example = { SpeedMeter = true; ManageForeignRoutingPolicyRules = false; @@ -3127,7 +3132,10 @@ let }; config = { - networkConfig = optionalAttrs (config.routeTables != { }) { + networkConfig = { + IPv6PrivacyExtensions = lib.mkOptionDefault true; + } + // optionalAttrs (config.routeTables != { }) { RouteTable = mapAttrsToList (name: number: "${name}:${toString number}") config.routeTables; }; }; diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix index d056cd45655b..6f4ef6492026 100644 --- a/nixos/modules/tasks/network-interfaces.nix +++ b/nixos/modules/tasks/network-interfaces.nix @@ -1813,146 +1813,147 @@ in virtualisation.vswitch = mkIf (cfg.vswitches != { }) { enable = true; }; - services.udev.packages = [ - (pkgs.writeTextFile rec { - name = "ipv6-privacy-extensions.rules"; - destination = "/etc/udev/rules.d/98-${name}"; - text = - let - sysctl-value = tempaddrValues.${cfg.tempAddresses}.sysctl; - in - '' - # enable and prefer IPv6 privacy addresses by default - ACTION=="add", SUBSYSTEM=="net", RUN+="${pkgs.bash}/bin/sh -c 'echo ${sysctl-value} > /proc/sys/net/ipv6/conf/$name/use_tempaddr'" - ''; - }) - (pkgs.writeTextFile rec { - name = "ipv6-privacy-extensions.rules"; - destination = "/etc/udev/rules.d/99-${name}"; - text = concatMapStrings ( - i: - let - opt = i.tempAddress; - val = tempaddrValues.${opt}.sysctl; - msg = tempaddrValues.${opt}.description; - in - '' - # override to ${msg} for ${i.name} - ACTION=="add", SUBSYSTEM=="net", NAME=="${i.name}", RUN+="${pkgs.procps}/bin/sysctl net.ipv6.conf.${ - replaceStrings [ "." ] [ "/" ] i.name - }.use_tempaddr=${val}" - '' - ) (filter (i: i.tempAddress != cfg.tempAddresses) interfaces); - }) - ] - ++ lib.optional (cfg.wlanInterfaces != { }) ( - pkgs.writeTextFile { - name = "99-zzz-40-wlanInterfaces.rules"; - destination = "/etc/udev/rules.d/99-zzz-40-wlanInterfaces.rules"; - text = - let - # Collect all interfaces that are defined for a device - # as device:interface key:value pairs. - wlanDeviceInterfaces = - let - allDevices = unique (mapAttrsToList (_: v: v.device) cfg.wlanInterfaces); - interfacesOfDevice = d: filterAttrs (_: v: v.device == d) cfg.wlanInterfaces; - in - genAttrs allDevices (d: interfacesOfDevice d); - - # Convert device:interface key:value pairs into a list, and if it exists, - # place the interface which is named after the device at the beginning. - wlanListDeviceFirst = - device: interfaces: - if hasAttr device interfaces then - mapAttrsToList (n: v: v // { _iName = n; }) (filterAttrs (n: _: n == device) interfaces) - ++ mapAttrsToList (n: v: v // { _iName = n; }) (filterAttrs (n: _: n != device) interfaces) - else - mapAttrsToList (n: v: v // { _iName = n; }) interfaces; - - # Udev script to execute for the default WLAN interface with the persistend udev name. - # The script creates the required, new WLAN interfaces interfaces and configures the - # existing, default interface. - curInterfaceScript = - device: current: new: - pkgs.writeScript "udev-run-script-wlan-interfaces-${device}.sh" '' - #!${pkgs.runtimeShell} - # Change the wireless phy device to a predictable name. - ${pkgs.iw}/bin/iw phy `${pkgs.coreutils}/bin/cat /sys/class/net/$INTERFACE/phy80211/name` set name ${device} - - # Add new WLAN interfaces - ${flip concatMapStrings new (i: '' - ${pkgs.iw}/bin/iw phy ${device} interface add ${i._iName} type managed - '')} - - # Configure the current interface - ${pkgs.iw}/bin/iw dev ${device} set type ${current.type} - ${optionalString ( - current.type == "mesh" && current.meshID != null - ) "${pkgs.iw}/bin/iw dev ${device} set meshid ${current.meshID}"} - ${optionalString ( - current.type == "monitor" && current.flags != null - ) "${pkgs.iw}/bin/iw dev ${device} set monitor ${current.flags}"} - ${optionalString ( - current.type == "managed" && current.fourAddr != null - ) "${pkgs.iw}/bin/iw dev ${device} set 4addr ${if current.fourAddr then "on" else "off"}"} - ${optionalString ( - current.mac != null - ) "${pkgs.iproute2}/bin/ip link set dev ${device} address ${current.mac}"} - ''; - - # Udev script to execute for a new WLAN interface. The script configures the new WLAN interface. - newInterfaceScript = - new: - pkgs.writeScript "udev-run-script-wlan-interfaces-${new._iName}.sh" '' - #!${pkgs.runtimeShell} - # Configure the new interface - ${pkgs.iw}/bin/iw dev ${new._iName} set type ${new.type} - ${optionalString ( - new.type == "mesh" && new.meshID != null - ) "${pkgs.iw}/bin/iw dev ${new._iName} set meshid ${new.meshID}"} - ${optionalString ( - new.type == "monitor" && new.flags != null - ) "${pkgs.iw}/bin/iw dev ${new._iName} set monitor ${new.flags}"} - ${optionalString ( - new.type == "managed" && new.fourAddr != null - ) "${pkgs.iw}/bin/iw dev ${new._iName} set 4addr ${if new.fourAddr then "on" else "off"}"} - ${optionalString ( - new.mac != null - ) "${pkgs.iproute2}/bin/ip link set dev ${new._iName} address ${new.mac}"} - ''; - - # Udev attributes for systemd to name the device and to create a .device target. - systemdAttrs = - n: - ''NAME:="${n}", ENV{INTERFACE}="${n}", ENV{SYSTEMD_ALIAS}="/sys/subsystem/net/devices/${n}", TAG+="systemd"''; - in - flip (concatMapStringsSep "\n") (attrNames wlanDeviceInterfaces) ( - device: + services.udev.packages = + lib.optionals (!config.systemd.network.enable) [ + (pkgs.writeTextFile rec { + name = "ipv6-privacy-extensions.rules"; + destination = "/etc/udev/rules.d/98-${name}"; + text = let - interfaces = wlanListDeviceFirst device wlanDeviceInterfaces.${device}; - curInterface = elemAt interfaces 0; - newInterfaces = drop 1 interfaces; + sysctl-value = tempaddrValues.${cfg.tempAddresses}.sysctl; in '' - # It is important to have that rule first as overwriting the NAME attribute also prevents the - # next rules from matching. - ${flip (concatMapStringsSep "\n") (wlanListDeviceFirst device wlanDeviceInterfaces.${device}) ( - interface: - ''ACTION=="add", SUBSYSTEM=="net", ENV{DEVTYPE}=="wlan", ENV{INTERFACE}=="${interface._iName}", ${systemdAttrs interface._iName}, RUN+="${newInterfaceScript interface}"'' - )} - - # Add the required, new WLAN interfaces to the default WLAN interface with the - # persistent, default name as assigned by udev. - ACTION=="add", SUBSYSTEM=="net", ENV{DEVTYPE}=="wlan", NAME=="${device}", ${systemdAttrs curInterface._iName}, RUN+="${ - curInterfaceScript device curInterface newInterfaces - }" - # Generate the same systemd events for both 'add' and 'move' udev events. - ACTION=="move", SUBSYSTEM=="net", ENV{DEVTYPE}=="wlan", NAME=="${device}", ${systemdAttrs curInterface._iName} + # enable and prefer IPv6 privacy addresses by default + ACTION=="add", SUBSYSTEM=="net", RUN+="${pkgs.bash}/bin/sh -c 'echo ${sysctl-value} > /proc/sys/net/ipv6/conf/$name/use_tempaddr'" + ''; + }) + (pkgs.writeTextFile rec { + name = "ipv6-privacy-extensions.rules"; + destination = "/etc/udev/rules.d/99-${name}"; + text = concatMapStrings ( + i: + let + opt = i.tempAddress; + val = tempaddrValues.${opt}.sysctl; + msg = tempaddrValues.${opt}.description; + in '' - ); - } - ); + # override to ${msg} for ${i.name} + ACTION=="add", SUBSYSTEM=="net", NAME=="${i.name}", RUN+="${pkgs.procps}/bin/sysctl net.ipv6.conf.${ + replaceStrings [ "." ] [ "/" ] i.name + }.use_tempaddr=${val}" + '' + ) (filter (i: i.tempAddress != cfg.tempAddresses) interfaces); + }) + ] + ++ lib.optional (cfg.wlanInterfaces != { }) ( + pkgs.writeTextFile { + name = "99-zzz-40-wlanInterfaces.rules"; + destination = "/etc/udev/rules.d/99-zzz-40-wlanInterfaces.rules"; + text = + let + # Collect all interfaces that are defined for a device + # as device:interface key:value pairs. + wlanDeviceInterfaces = + let + allDevices = unique (mapAttrsToList (_: v: v.device) cfg.wlanInterfaces); + interfacesOfDevice = d: filterAttrs (_: v: v.device == d) cfg.wlanInterfaces; + in + genAttrs allDevices (d: interfacesOfDevice d); + + # Convert device:interface key:value pairs into a list, and if it exists, + # place the interface which is named after the device at the beginning. + wlanListDeviceFirst = + device: interfaces: + if hasAttr device interfaces then + mapAttrsToList (n: v: v // { _iName = n; }) (filterAttrs (n: _: n == device) interfaces) + ++ mapAttrsToList (n: v: v // { _iName = n; }) (filterAttrs (n: _: n != device) interfaces) + else + mapAttrsToList (n: v: v // { _iName = n; }) interfaces; + + # Udev script to execute for the default WLAN interface with the persistend udev name. + # The script creates the required, new WLAN interfaces interfaces and configures the + # existing, default interface. + curInterfaceScript = + device: current: new: + pkgs.writeScript "udev-run-script-wlan-interfaces-${device}.sh" '' + #!${pkgs.runtimeShell} + # Change the wireless phy device to a predictable name. + ${pkgs.iw}/bin/iw phy `${pkgs.coreutils}/bin/cat /sys/class/net/$INTERFACE/phy80211/name` set name ${device} + + # Add new WLAN interfaces + ${flip concatMapStrings new (i: '' + ${pkgs.iw}/bin/iw phy ${device} interface add ${i._iName} type managed + '')} + + # Configure the current interface + ${pkgs.iw}/bin/iw dev ${device} set type ${current.type} + ${optionalString ( + current.type == "mesh" && current.meshID != null + ) "${pkgs.iw}/bin/iw dev ${device} set meshid ${current.meshID}"} + ${optionalString ( + current.type == "monitor" && current.flags != null + ) "${pkgs.iw}/bin/iw dev ${device} set monitor ${current.flags}"} + ${optionalString ( + current.type == "managed" && current.fourAddr != null + ) "${pkgs.iw}/bin/iw dev ${device} set 4addr ${if current.fourAddr then "on" else "off"}"} + ${optionalString ( + current.mac != null + ) "${pkgs.iproute2}/bin/ip link set dev ${device} address ${current.mac}"} + ''; + + # Udev script to execute for a new WLAN interface. The script configures the new WLAN interface. + newInterfaceScript = + new: + pkgs.writeScript "udev-run-script-wlan-interfaces-${new._iName}.sh" '' + #!${pkgs.runtimeShell} + # Configure the new interface + ${pkgs.iw}/bin/iw dev ${new._iName} set type ${new.type} + ${optionalString ( + new.type == "mesh" && new.meshID != null + ) "${pkgs.iw}/bin/iw dev ${new._iName} set meshid ${new.meshID}"} + ${optionalString ( + new.type == "monitor" && new.flags != null + ) "${pkgs.iw}/bin/iw dev ${new._iName} set monitor ${new.flags}"} + ${optionalString ( + new.type == "managed" && new.fourAddr != null + ) "${pkgs.iw}/bin/iw dev ${new._iName} set 4addr ${if new.fourAddr then "on" else "off"}"} + ${optionalString ( + new.mac != null + ) "${pkgs.iproute2}/bin/ip link set dev ${new._iName} address ${new.mac}"} + ''; + + # Udev attributes for systemd to name the device and to create a .device target. + systemdAttrs = + n: + ''NAME:="${n}", ENV{INTERFACE}="${n}", ENV{SYSTEMD_ALIAS}="/sys/subsystem/net/devices/${n}", TAG+="systemd"''; + in + flip (concatMapStringsSep "\n") (attrNames wlanDeviceInterfaces) ( + device: + let + interfaces = wlanListDeviceFirst device wlanDeviceInterfaces.${device}; + curInterface = elemAt interfaces 0; + newInterfaces = drop 1 interfaces; + in + '' + # It is important to have that rule first as overwriting the NAME attribute also prevents the + # next rules from matching. + ${flip (concatMapStringsSep "\n") (wlanListDeviceFirst device wlanDeviceInterfaces.${device}) ( + interface: + ''ACTION=="add", SUBSYSTEM=="net", ENV{DEVTYPE}=="wlan", ENV{INTERFACE}=="${interface._iName}", ${systemdAttrs interface._iName}, RUN+="${newInterfaceScript interface}"'' + )} + + # Add the required, new WLAN interfaces to the default WLAN interface with the + # persistent, default name as assigned by udev. + ACTION=="add", SUBSYSTEM=="net", ENV{DEVTYPE}=="wlan", NAME=="${device}", ${systemdAttrs curInterface._iName}, RUN+="${ + curInterfaceScript device curInterface newInterfaces + }" + # Generate the same systemd events for both 'add' and 'move' udev events. + ACTION=="move", SUBSYSTEM=="net", ENV{DEVTYPE}=="wlan", NAME=="${device}", ${systemdAttrs curInterface._iName} + '' + ); + } + ); }; } From e57f11e8c1493d9dab386a01174d463bf0d41aab Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 8 Aug 2025 22:28:14 +0000 Subject: [PATCH 10/30] structorizer: 3.32-27 -> 3.32-30 --- pkgs/by-name/st/structorizer/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/st/structorizer/package.nix b/pkgs/by-name/st/structorizer/package.nix index 830dd992f156..2457c80d7167 100644 --- a/pkgs/by-name/st/structorizer/package.nix +++ b/pkgs/by-name/st/structorizer/package.nix @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { pname = "structorizer"; - version = "3.32-27"; + version = "3.32-30"; desktopItems = [ (makeDesktopItem { @@ -42,7 +42,7 @@ stdenv.mkDerivation rec { owner = "fesch"; repo = "Structorizer.Desktop"; rev = version; - hash = "sha256-Z60HB0s2LkO/Vs/OaHWc969Y6H+wBiN5slRGFf4JCro="; + hash = "sha256-sv/Uoh1UPVsioKpeJeuqs+EPPsuQwO54WIUPyc8Fjco="; }; patches = [ From 7a7e6e3bdf31856d84dcba749fc5232e9fb4b554 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 9 Aug 2025 04:27:53 +0000 Subject: [PATCH 11/30] ollama: 0.11.3 -> 0.11.4 --- pkgs/by-name/ol/ollama/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ol/ollama/package.nix b/pkgs/by-name/ol/ollama/package.nix index d0f7d8fa7640..f4d4c1be7154 100644 --- a/pkgs/by-name/ol/ollama/package.nix +++ b/pkgs/by-name/ol/ollama/package.nix @@ -116,13 +116,13 @@ in goBuild (finalAttrs: { pname = "ollama"; # don't forget to invalidate all hashes each update - version = "0.11.3"; + version = "0.11.4"; src = fetchFromGitHub { owner = "ollama"; repo = "ollama"; tag = "v${finalAttrs.version}"; - hash = "sha256-FghgCtVQIxc9qB5vZZlblugk6HLnxoT8xanZK+N8qEc="; + hash = "sha256-joIA/rH8j+SJH5EVMr6iqKLve6bkntPQM43KCN9JTZ8="; }; vendorHash = "sha256-SlaDsu001TUW+t9WRp7LqxUSQSGDF1Lqu9M1bgILoX4="; From d0bdf04df22d2fcaf64cfbb2683040feab60cdef Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 9 Aug 2025 05:31:16 +0000 Subject: [PATCH 12/30] flexget: 3.17.1 -> 3.17.6 --- pkgs/by-name/fl/flexget/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/fl/flexget/package.nix b/pkgs/by-name/fl/flexget/package.nix index 5b3bd764d73f..3204141dc930 100644 --- a/pkgs/by-name/fl/flexget/package.nix +++ b/pkgs/by-name/fl/flexget/package.nix @@ -7,14 +7,14 @@ python3Packages.buildPythonApplication rec { pname = "flexget"; - version = "3.17.1"; + version = "3.17.6"; pyproject = true; src = fetchFromGitHub { owner = "Flexget"; repo = "Flexget"; tag = "v${version}"; - hash = "sha256-9Ba7VgVmy5FOnqzAB/ebTFeI892Y1G0R/UcNpkbNdGA="; + hash = "sha256-E0ytB30tiJgmdfpJ+KCy67enqmfZT7HjoZHlqtRQWsQ="; }; pythonRelaxDeps = true; From 309af598bc0584bfd0ebc35ef774bfa3279fedc3 Mon Sep 17 00:00:00 2001 From: K900 Date: Sat, 9 Aug 2025 09:53:16 +0300 Subject: [PATCH 13/30] kdePackages: Frameworks 6.16 -> 6.17 A bunch of patches got upstreamed. Yay. --- pkgs/kde/frameworks/kpackage/default.nix | 3 - .../frameworks/kpackage/follow-symlinks.patch | 13 - pkgs/kde/frameworks/kservice/default.nix | 4 +- .../qdiriterator-follow-symlinks.patch | 13 - pkgs/kde/frameworks/solid/default.nix | 5 - .../frameworks/solid/fix-search-path.patch | 17 - pkgs/kde/generated/sources/frameworks.json | 432 +++++++++--------- 7 files changed, 217 insertions(+), 270 deletions(-) delete mode 100644 pkgs/kde/frameworks/kpackage/follow-symlinks.patch delete mode 100644 pkgs/kde/frameworks/kservice/qdiriterator-follow-symlinks.patch delete mode 100644 pkgs/kde/frameworks/solid/fix-search-path.patch diff --git a/pkgs/kde/frameworks/kpackage/default.nix b/pkgs/kde/frameworks/kpackage/default.nix index f18b43d42d53..e157497a63f5 100644 --- a/pkgs/kde/frameworks/kpackage/default.nix +++ b/pkgs/kde/frameworks/kpackage/default.nix @@ -2,8 +2,5 @@ mkKdeDerivation { pname = "kpackage"; - # Follow symlinks when resolving packages - # FIXME(later): upstream - patches = [ ./follow-symlinks.patch ]; meta.mainProgram = "kpackagetool6"; } diff --git a/pkgs/kde/frameworks/kpackage/follow-symlinks.patch b/pkgs/kde/frameworks/kpackage/follow-symlinks.patch deleted file mode 100644 index 8f0af89e1666..000000000000 --- a/pkgs/kde/frameworks/kpackage/follow-symlinks.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/kpackage/packageloader.cpp b/src/kpackage/packageloader.cpp -index 9dbd1f6..c50a6e5 100644 ---- a/src/kpackage/packageloader.cpp -+++ b/src/kpackage/packageloader.cpp -@@ -128,7 +128,7 @@ QList PackageLoader::listPackages(const QString &packageFormat, - } - - for (auto const &plugindir : std::as_const(paths)) { -- QDirIterator it(plugindir, QStringList{QStringLiteral("metadata.json")}, QDir::Files, QDirIterator::Subdirectories); -+ QDirIterator it(plugindir, QStringList{QStringLiteral("metadata.json")}, QDir::Files, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks); - std::unordered_set dirs; - while (it.hasNext()) { - it.next(); diff --git a/pkgs/kde/frameworks/kservice/default.nix b/pkgs/kde/frameworks/kservice/default.nix index 5a7bb7a5884a..ed773cee5147 100644 --- a/pkgs/kde/frameworks/kservice/default.nix +++ b/pkgs/kde/frameworks/kservice/default.nix @@ -2,10 +2,8 @@ mkKdeDerivation { pname = "kservice"; - # FIXME(later): upstream + # FIXME(later): the whole sycoca situation is very bad patches = [ - # follow symlinks when generating sycoca - ./qdiriterator-follow-symlinks.patch # explode less when sycoca is deleted ./handle-sycoca-deletion.patch ]; diff --git a/pkgs/kde/frameworks/kservice/qdiriterator-follow-symlinks.patch b/pkgs/kde/frameworks/kservice/qdiriterator-follow-symlinks.patch deleted file mode 100644 index fdd8b4d81a18..000000000000 --- a/pkgs/kde/frameworks/kservice/qdiriterator-follow-symlinks.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/sycoca/kbuildsycoca.cpp b/src/sycoca/kbuildsycoca.cpp -index b125299..0682b90 100644 ---- a/src/sycoca/kbuildsycoca.cpp -+++ b/src/sycoca/kbuildsycoca.cpp -@@ -207,7 +207,7 @@ bool KBuildSycoca::build() - const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, m_resourceSubdir, QStandardPaths::LocateDirectory); - qCDebug(SYCOCA) << "Looking for subdir" << m_resourceSubdir << "=>" << dirs; - for (const QString &dir : dirs) { -- QDirIterator it(dir, QDirIterator::Subdirectories); -+ QDirIterator it(dir, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks); - while (it.hasNext()) { - const QString filePath = it.next(); - Q_ASSERT(filePath.startsWith(dir)); // due to the line below... diff --git a/pkgs/kde/frameworks/solid/default.nix b/pkgs/kde/frameworks/solid/default.nix index 6b767e9d43f7..3092f9e03405 100644 --- a/pkgs/kde/frameworks/solid/default.nix +++ b/pkgs/kde/frameworks/solid/default.nix @@ -8,11 +8,6 @@ mkKdeDerivation { pname = "solid"; - patches = [ - # Also search /run/wrappers for mount/umount - ./fix-search-path.patch - ]; - extraNativeBuildInputs = [ qttools bison diff --git a/pkgs/kde/frameworks/solid/fix-search-path.patch b/pkgs/kde/frameworks/solid/fix-search-path.patch deleted file mode 100644 index 010aa1f3efcc..000000000000 --- a/pkgs/kde/frameworks/solid/fix-search-path.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/src/solid/devices/backends/fstab/fstabhandling.cpp b/src/solid/devices/backends/fstab/fstabhandling.cpp -index ac2a628..7ee46cc 100644 ---- a/src/solid/devices/backends/fstab/fstabhandling.cpp -+++ b/src/solid/devices/backends/fstab/fstabhandling.cpp -@@ -275,7 +275,11 @@ bool Solid::Backends::Fstab::FstabHandling::callSystemCommand(const QString &com - const QObject *receiver, - std::function callback) - { -- static const QStringList searchPaths{QStringLiteral("/sbin"), QStringLiteral("/bin"), QStringLiteral("/usr/sbin"), QStringLiteral("/usr/bin")}; -+ static const QStringList searchPaths{QStringLiteral("/run/wrappers/bin"), -+ QStringLiteral("/sbin"), -+ QStringLiteral("/bin"), -+ QStringLiteral("/usr/sbin"), -+ QStringLiteral("/usr/bin")}; - static const QString joinedPaths = searchPaths.join(QLatin1Char(':')); - const QString exec = QStandardPaths::findExecutable(commandName, searchPaths); - if (exec.isEmpty()) { diff --git a/pkgs/kde/generated/sources/frameworks.json b/pkgs/kde/generated/sources/frameworks.json index ed65482e3acb..4ebf185b40a5 100644 --- a/pkgs/kde/generated/sources/frameworks.json +++ b/pkgs/kde/generated/sources/frameworks.json @@ -1,362 +1,362 @@ { "attica": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/attica-6.16.0.tar.xz", - "hash": "sha256-XRyI9k0G942CWEtSdfIGI1aGb4K3/fuXKKxNxNUJvmo=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/attica-6.17.0.tar.xz", + "hash": "sha256-L6tKLTLpj2JGW4G9puQW/3+pnWqklMSyYfh3J1j2txo=" }, "baloo": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/baloo-6.16.0.tar.xz", - "hash": "sha256-jCf+7KJasHOGLkM8c1eC8ocTVo0TkKhHcbG6Q/YXH2U=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/baloo-6.17.0.tar.xz", + "hash": "sha256-IarD6V6gld8Cm74L1WY6o5ioiU6cMep/q7XNC5hIVEo=" }, "bluez-qt": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/bluez-qt-6.16.0.tar.xz", - "hash": "sha256-d/bDDzeou+z3PV849DCDh55CCJY50BeUU0V9O1h9pZQ=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/bluez-qt-6.17.0.tar.xz", + "hash": "sha256-c25rDDFYl8XqhEVE/u71L9HplI7E/yTyxSxf1xig5l0=" }, "breeze-icons": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/breeze-icons-6.16.0.tar.xz", - "hash": "sha256-lG55O2dBJtuYTi94O+SzSOnGjCUn003dcl+csIYpNrQ=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/breeze-icons-6.17.0.tar.xz", + "hash": "sha256-T/x1iG6aFKKgLaSHFgC4wLWkB1a46Zy+z7UVaW2Tw7g=" }, "extra-cmake-modules": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/extra-cmake-modules-6.16.0.tar.xz", - "hash": "sha256-6IHBnjNb64IybgLQAHZufugyTXzoWD3w9b/UwmmY+/4=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/extra-cmake-modules-6.17.0.tar.xz", + "hash": "sha256-3+yxfQI49N4d00hbkqZgYTfUqcZ7nkzkBAf+DyrsCkA=" }, "frameworkintegration": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/frameworkintegration-6.16.0.tar.xz", - "hash": "sha256-oOPixXdrGeLeYnOJPwySfvfq3qhqYwHyHhg3fLdZB/w=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/frameworkintegration-6.17.0.tar.xz", + "hash": "sha256-nZ4BH6ydmWfZTEPtKiE9hRJjgF4dtdrQjYEv4/DmrRI=" }, "kapidox": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kapidox-6.16.0.tar.xz", - "hash": "sha256-PNJqLDN0teZgMPhcxjTDeNihMYkkn64QNNZKdw3Fzhs=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kapidox-6.17.0.tar.xz", + "hash": "sha256-p6PCwgnPX4EK9IJko2HlJtuskfF5wsAgj6AtxBb58NI=" }, "karchive": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/karchive-6.16.0.tar.xz", - "hash": "sha256-26GP8r4dC1ehgSoz3mYNTPdiPc+qj5wNZO/eIVJAnP8=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/karchive-6.17.0.tar.xz", + "hash": "sha256-YGR8JGRqQ/Z96vN+ICRt+dN5+j91E/6FNqHfozCGW0A=" }, "kauth": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kauth-6.16.0.tar.xz", - "hash": "sha256-BPPoT9pejOt/EAJm41aaNOgomxBGr07HUFme+tYDSWM=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kauth-6.17.0.tar.xz", + "hash": "sha256-pWPMqqYVwfHb30tFrR2ic55A/ZSQvFkGr9WrXa41+TI=" }, "kbookmarks": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kbookmarks-6.16.0.tar.xz", - "hash": "sha256-ykZWrUmt1SS0tovChgcaWuR/g+xGof2ODDcT1wrWrbU=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kbookmarks-6.17.0.tar.xz", + "hash": "sha256-BBuWZ9PUhRsOb6Yqn8ESqZOKSHtMpSDu3eG1NWNiF/I=" }, "kcalendarcore": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kcalendarcore-6.16.0.tar.xz", - "hash": "sha256-Uh0dKzVuPXzS4L9oeRnJhlXGJs3p7VIOQvxzDnqVvZs=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kcalendarcore-6.17.0.tar.xz", + "hash": "sha256-SgZ1xiEcrxg6BnGUskCT3GMBWhpZvge4ZM9F96zRjhM=" }, "kcmutils": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kcmutils-6.16.0.tar.xz", - "hash": "sha256-QD9esyiP+7xky2dBBIAH3egr45DaLFC6FHy0dJIeM0Q=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kcmutils-6.17.0.tar.xz", + "hash": "sha256-j2XvD09PMlrW4qMMsUJCIg+BGrHgMUFv0/qlRKxoPoo=" }, "kcodecs": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kcodecs-6.16.0.tar.xz", - "hash": "sha256-2NI83IU6qDK/OYhsa2c/7ocnniWM8Bq+sKz+pfcY5ZU=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kcodecs-6.17.0.tar.xz", + "hash": "sha256-B7HG9sMJFWKamTRvn9WoVK/jZykZEfthAAkyd39+mPI=" }, "kcolorscheme": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kcolorscheme-6.16.0.tar.xz", - "hash": "sha256-RgJtCj1SKUM4n6PvZqEp2fx25eYpXIT4F9ErqqJocwM=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kcolorscheme-6.17.0.tar.xz", + "hash": "sha256-yL1F6ySPw42Bbk6w/ZSdkJwJo6WpCEjvbUBAw1lz97Q=" }, "kcompletion": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kcompletion-6.16.0.tar.xz", - "hash": "sha256-P3HX8kynBFKTIu6tfSEyMx6UYeuRq0idbj2ZDZ18oTM=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kcompletion-6.17.0.tar.xz", + "hash": "sha256-8i5Mb6zsgSveSrjVagWziiQ92TYsjetPE2fvsbbmRmM=" }, "kconfig": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kconfig-6.16.0.tar.xz", - "hash": "sha256-umzFjwJf75UlvGQPeWe3wJBTtZLEI2jgltl6lGYaNSU=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kconfig-6.17.0.tar.xz", + "hash": "sha256-BnQ1skyp989WqM5bEIQ4oVYHsm3FKQWuB9wYfH4pSd4=" }, "kconfigwidgets": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kconfigwidgets-6.16.0.tar.xz", - "hash": "sha256-YcAlb9rgSbElhr0eDZMegFFdPHAvF4WoiZTuVO7i1cU=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kconfigwidgets-6.17.0.tar.xz", + "hash": "sha256-C8U2bTjcvhKuoyqoTnfpwnjTxjru1vUJr1KEijCkHiE=" }, "kcontacts": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kcontacts-6.16.0.tar.xz", - "hash": "sha256-/1epqxGblYlTNdQnSBAJz/cq6c9tD8L6mlBPls+sal4=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kcontacts-6.17.0.tar.xz", + "hash": "sha256-GY2yW9x+f+4Rdm7/7ROtRDj2ohG+ihahzR6BXj688ho=" }, "kcoreaddons": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kcoreaddons-6.16.0.tar.xz", - "hash": "sha256-eYonRMKW0Tshbq3X5dgBpv1pVpRKIUerKDDDmZMK4qA=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kcoreaddons-6.17.0.tar.xz", + "hash": "sha256-AwPW0ennbPnsBqQazRpSCIpA3zooBel+HDJ7r2B4Qqo=" }, "kcrash": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kcrash-6.16.0.tar.xz", - "hash": "sha256-BuOhCbpZejlRVDMCUElcPgOndLfW8hOjUnia2cNpHcM=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kcrash-6.17.0.tar.xz", + "hash": "sha256-UvS93GQuaOlvjxizS7qAO4+fk8uM9eHRqrzP08UoXhM=" }, "kdav": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kdav-6.16.0.tar.xz", - "hash": "sha256-WKHHZkaztSdGp2kOy5hgRIpZ33f8ppGZgxNSdFcGsyU=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kdav-6.17.0.tar.xz", + "hash": "sha256-jYo7A8XFP1iiZgtYm4lzHRgro7xiLHbge/5sv1Cmk8c=" }, "kdbusaddons": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kdbusaddons-6.16.0.tar.xz", - "hash": "sha256-O6G5YoSDo4oTt7zmqsCuLW8Rb2JgGTB4biVNpN/V0UU=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kdbusaddons-6.17.0.tar.xz", + "hash": "sha256-V9ZAv6EcFmC13NPBxx1gWkBULRZX4E2b+Ge3Yb/ncvQ=" }, "kdeclarative": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kdeclarative-6.16.0.tar.xz", - "hash": "sha256-xY33ofUBKG+W0M8LOWWY7eFus8rbyKBdNSNs5N8xyA4=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kdeclarative-6.17.0.tar.xz", + "hash": "sha256-tTY9/HNU0foe1J1xdaAzSo72boK7OJukuv/m93jy4ro=" }, "kded": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kded-6.16.0.tar.xz", - "hash": "sha256-STcvsB3VPCWyeJYD7WroX+VKcS7X90JsiE0HXTE4Gyo=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kded-6.17.0.tar.xz", + "hash": "sha256-T18EudvPOgukKBVBnZabAaZiQCTRSZTVQKlzpjcc8nc=" }, "kdesu": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kdesu-6.16.0.tar.xz", - "hash": "sha256-+cv66IWWz9ALJpdEyJoELfvASCc+NfHH4VhCnbVcjWg=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kdesu-6.17.0.tar.xz", + "hash": "sha256-ZmiZrVRre9AC4/wWlwMviSDOcmHfLvUZ6B1KrpGXESM=" }, "kdnssd": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kdnssd-6.16.0.tar.xz", - "hash": "sha256-sIvfBcfZjjE2aZWiCHrHRxqJk8SZF9PNecC6HS9pqOA=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kdnssd-6.17.0.tar.xz", + "hash": "sha256-bhaBoBpM0JZQuk3hu61OwD0/ZFL8B/9PdOJLJAQPPgo=" }, "kdoctools": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kdoctools-6.16.0.tar.xz", - "hash": "sha256-XAxTGnl4ZQ9ZOmOiq6GmQdWQU350xkSqNhxjWEsRWqI=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kdoctools-6.17.0.tar.xz", + "hash": "sha256-J7DssCMieDcQPj+mrePeCqTV9W9PbJeplv5u50vonS8=" }, "kfilemetadata": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kfilemetadata-6.16.0.tar.xz", - "hash": "sha256-R9aAtiaXQhvf6j3L/rVjUo4+uo2vSFZMPD2lZON2QMU=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kfilemetadata-6.17.0.tar.xz", + "hash": "sha256-K7mpmEarD3NjbsNPuiRJCKEjWR9/dFi6uRuM+yOSMEQ=" }, "kglobalaccel": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kglobalaccel-6.16.0.tar.xz", - "hash": "sha256-ZmNGGoJ5i13MufROkcDDfhLJUfh+KVw7p/Rl2se9SqE=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kglobalaccel-6.17.0.tar.xz", + "hash": "sha256-/D1AVVQmORRbPkUGgmR0XGEfw+zw0BROqjUyA4+pcfE=" }, "kguiaddons": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kguiaddons-6.16.0.tar.xz", - "hash": "sha256-nh1TpPvh63zMEGEKFzfZslYHVvib9lCUCnQ1bap9suI=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kguiaddons-6.17.0.tar.xz", + "hash": "sha256-XQfbyOJKsQd951t4MKHzYt/zcQ+wQdYbjaAsV3BWq2s=" }, "kholidays": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kholidays-6.16.0.tar.xz", - "hash": "sha256-VwKcNb0Iw2D4hFOyAuDGe5qr3W+fk/LqBmtqhnjdBQE=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kholidays-6.17.0.tar.xz", + "hash": "sha256-W459+Ie/eQ7d1lM5EO76mwCnfyZ1Jg2nHza5XLdk+rI=" }, "ki18n": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/ki18n-6.16.0.tar.xz", - "hash": "sha256-xSrRCxQ2XmDEohnLZnBtEUR2ZFKXyyqfFUmHR89EIdc=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/ki18n-6.17.0.tar.xz", + "hash": "sha256-UPhn2UjBWq2Rw8V/4vZGLNvziB+rb9mbhbFWFvBzmD4=" }, "kiconthemes": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kiconthemes-6.16.0.tar.xz", - "hash": "sha256-pzopdsxJNhyPoMYS9TyoGvzyx0psTVWsiikW9X0H5AI=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kiconthemes-6.17.0.tar.xz", + "hash": "sha256-XPCyBijTAER3cMSrAO2yJezIVWF5KSPsAIP5vJ4LQkc=" }, "kidletime": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kidletime-6.16.0.tar.xz", - "hash": "sha256-V6ekDXCT16Zpf5pD/1XLyyYp7F0o7OSjeqQADvqmGy0=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kidletime-6.17.0.tar.xz", + "hash": "sha256-H2fSZ0nenwn0qw3Esj5T7LhNkhsdUtYSgi/cU8NMOzc=" }, "kimageformats": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kimageformats-6.16.0.tar.xz", - "hash": "sha256-ht+7BauEX3sZp/7IjhNdFOR68U3BcT2fs5GWZRDB3Es=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kimageformats-6.17.0.tar.xz", + "hash": "sha256-GAtnD3ZrrnQDQOWv0gROoIJC6pNUWbuVvIAxPQYgZqg=" }, "kio": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kio-6.16.0.tar.xz", - "hash": "sha256-Z16/igxyv9/UNO9zUwy3rpISeu/wloiW1nzFqiIzPow=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kio-6.17.0.tar.xz", + "hash": "sha256-0A1JUhmPjp/0QzWzQHFGFeASSFftvWfElktQ4MkT1i0=" }, "kirigami": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kirigami-6.16.0.tar.xz", - "hash": "sha256-FtEUKqzYUU+Vz5vbRLKnIPM5e17mikiaVMhqVgr1VRY=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kirigami-6.17.0.tar.xz", + "hash": "sha256-C3+3GaIx/+t/zETIupA+rRO0NYxBnV8LFVUtP8hO11s=" }, "kitemmodels": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kitemmodels-6.16.0.tar.xz", - "hash": "sha256-cXZuqeePcL1PYbFg9wsx94JcX0x8dNOXFmqdrnsdz1w=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kitemmodels-6.17.0.tar.xz", + "hash": "sha256-uQBEF7XpuzMJQ0q5CBmIlZD2v6MtSmU4jQUt9DLAsWY=" }, "kitemviews": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kitemviews-6.16.0.tar.xz", - "hash": "sha256-xFVB2F7BsG0WC4GcA/BzzwAaYEEfHUVwamEdnquSFN0=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kitemviews-6.17.0.tar.xz", + "hash": "sha256-MdHI/2Syju8hbmOkQ6zNxiHFP1HsI+ahN9nghil0L9E=" }, "kjobwidgets": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kjobwidgets-6.16.0.tar.xz", - "hash": "sha256-UXcD8BiOx911mvONosAyLuKnYxIlGJhTYmr5r/C5Syo=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kjobwidgets-6.17.0.tar.xz", + "hash": "sha256-DcVt4ZvON2m3jDTasTmViAFxgPKY3oQZ7aGQmkIRtiQ=" }, "knewstuff": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/knewstuff-6.16.0.tar.xz", - "hash": "sha256-U+QJqJvXqMHxWOKFG67gPutRZMn6Kp0MD5VtI9bhTmI=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/knewstuff-6.17.0.tar.xz", + "hash": "sha256-EFnLfNubqBcN6CoIxoM0kAB6FSpG5L2+JDBO7dwmPWY=" }, "knotifications": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/knotifications-6.16.0.tar.xz", - "hash": "sha256-Qj2kEFllekljRenXUoqw4N3lP2eBYPL64su8WDypO58=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/knotifications-6.17.0.tar.xz", + "hash": "sha256-t4AcVGk15ggqctTH3QOHQHtqGQWriN6b3a82mo7KQUE=" }, "knotifyconfig": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/knotifyconfig-6.16.0.tar.xz", - "hash": "sha256-kNgo39VsCWU7yVyR5yyQwBnUAhQ3dZ1B5eCay7GDypg=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/knotifyconfig-6.17.0.tar.xz", + "hash": "sha256-5aCPeHL/uDb7/pcm64bBBOMK/FWZYTjZZXMfV5SYEmM=" }, "kpackage": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kpackage-6.16.0.tar.xz", - "hash": "sha256-pF/OECbbO2XN0d0OETdICOJoaRSgYvZkTrqo7TCO48s=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kpackage-6.17.0.tar.xz", + "hash": "sha256-eNIxoiM5SSLQKVfheReiCN4OmCJPIfwQ5TislxvbQqQ=" }, "kparts": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kparts-6.16.0.tar.xz", - "hash": "sha256-3z40gzQPqeuyDlwL9VfOxI3r/Sr53TE70bxFUTHGu2c=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kparts-6.17.0.tar.xz", + "hash": "sha256-HmTUJs5HUBqP8brIwjZvDNFT5s1NRA6CfrABXZ44w+k=" }, "kpeople": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kpeople-6.16.0.tar.xz", - "hash": "sha256-9tT7agWVy7D7CiabFQT59fCkgWYyjIoujeWGFAOV+2o=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kpeople-6.17.0.tar.xz", + "hash": "sha256-3Q7EubrtQKL5YM5JA73HkHP1UZaTkzFOOql8dfcw978=" }, "kplotting": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kplotting-6.16.0.tar.xz", - "hash": "sha256-ohF+0QtcWZL5sWDLmLxTBCzdJX3mubny9bpKalwAvQY=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kplotting-6.17.0.tar.xz", + "hash": "sha256-ZlSWW2PQhXwxwhgX5WkxaEwy3d8DXoMWnKbqfWuaJkM=" }, "kpty": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kpty-6.16.0.tar.xz", - "hash": "sha256-l2Gx9a9/oQ5+PKi1KpoQ4kr5lN565kLBVdunyZsU6c8=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kpty-6.17.0.tar.xz", + "hash": "sha256-lqcWh6jeC+zDSoFXVy0kQLqNS5dv1dCBMzHf2GuSqrs=" }, "kquickcharts": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kquickcharts-6.16.0.tar.xz", - "hash": "sha256-A6cPpbWx8Ji7zAIN0XkrjAuZnYvnzNGzS3n1t6OfGD0=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kquickcharts-6.17.0.tar.xz", + "hash": "sha256-HiBqloTYgs4sFH5DY5LcPvbNp55Lwt31qgOY0uLdxaQ=" }, "krunner": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/krunner-6.16.0.tar.xz", - "hash": "sha256-8xF0ETFVLRSHWIBwfXBAICi/sADQ2W+Ac0ZDEfyrXbw=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/krunner-6.17.0.tar.xz", + "hash": "sha256-nUpcDHSwz6njXDHediYz3ewEOcUPpEvIW+woraAQaRI=" }, "kservice": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kservice-6.16.0.tar.xz", - "hash": "sha256-7l7J6pMVqdHlLT5t4duLuPPZRcQmCoUjy+NIl7HMCB4=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kservice-6.17.0.tar.xz", + "hash": "sha256-sBRpfqO6NZ9GpunPlQ17vXqc8J6Vs2cYw2tmBalCSu4=" }, "kstatusnotifieritem": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kstatusnotifieritem-6.16.0.tar.xz", - "hash": "sha256-c8JZCy9vtfYfw7fcAh33Y78POWnB6rjF0Lhd9EWsrSA=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kstatusnotifieritem-6.17.0.tar.xz", + "hash": "sha256-Z4qb/IcAZtVBO7z6CaVrgrCv/SvCIs5XAdAqixKe3ZE=" }, "ksvg": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/ksvg-6.16.0.tar.xz", - "hash": "sha256-7jvwcm6EE3wTHM1cYcF/CO3AwNjp+ifSbNOkUk9c9sM=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/ksvg-6.17.0.tar.xz", + "hash": "sha256-Nyjalmky8g8ZClRaf0Lt6i+b2+bXJ6W8G1V+9RVbf5Q=" }, "ktexteditor": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/ktexteditor-6.16.0.tar.xz", - "hash": "sha256-q+v+ep7kuhq44bG4A16UihdEUczoq0rYJ404mg5ZcSg=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/ktexteditor-6.17.0.tar.xz", + "hash": "sha256-mQTAxckzo2jW9JLZ4RbMziAQVNWgKbiw/gdZ/4frjKM=" }, "ktexttemplate": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/ktexttemplate-6.16.0.tar.xz", - "hash": "sha256-GIDPGokAMdxhclE9Pf54841XJhhJeCIMpxQqOm5A+bU=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/ktexttemplate-6.17.0.tar.xz", + "hash": "sha256-FddZQdFerDzRJDBmsTow1sFFHKYwsMKbNiS+NK1z6XI=" }, "ktextwidgets": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/ktextwidgets-6.16.0.tar.xz", - "hash": "sha256-y3GK4SwoobF/LlUvCPEhrqmabdX/Q3snBYGrknCgLqE=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/ktextwidgets-6.17.0.tar.xz", + "hash": "sha256-M9RuzdA/9oWC2lzvJRkhqMbnpdt62b/QQyywBxKsKeM=" }, "kunitconversion": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kunitconversion-6.16.0.tar.xz", - "hash": "sha256-paRy6b9YQZEZXdQH0JvEZ5o0uGmpern9+DqspY6LDg0=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kunitconversion-6.17.0.tar.xz", + "hash": "sha256-8mJaS6JbMyn7lzAkkHO800m3o0Y2IUjH+peYnvx+XMo=" }, "kuserfeedback": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kuserfeedback-6.16.0.tar.xz", - "hash": "sha256-9PdE4KqHikyYSZ7vp5jq7Z3ZzesZIYIpKlTf1+uB5vU=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kuserfeedback-6.17.0.tar.xz", + "hash": "sha256-DxtTYf+m//Euw9/Xo+SxsqpuutxK/MA6nTHC1JvsfK8=" }, "kwallet": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kwallet-6.16.0.tar.xz", - "hash": "sha256-2N0zDSxGQ9M1BQwXCSUilBCKdat3zbZytW9AvKaFTu0=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kwallet-6.17.0.tar.xz", + "hash": "sha256-RMr2kfR7okby77E/nI9xI8fmdF1CgVYCKLgVjMi5PX0=" }, "kwidgetsaddons": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kwidgetsaddons-6.16.0.tar.xz", - "hash": "sha256-dmP4gFL9jKlHuf4Lvq0E/yKOiE8SRJijKMww6fFykVw=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kwidgetsaddons-6.17.0.tar.xz", + "hash": "sha256-3LMzh5U80EKdQpfWKLSHLno6lwzOXqhLRGZ32LdIfqE=" }, "kwindowsystem": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kwindowsystem-6.16.0.tar.xz", - "hash": "sha256-3DtaxeXq6lt2r46F8GXdvOkf9+P8wTxtYArVO7U7GzE=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kwindowsystem-6.17.0.tar.xz", + "hash": "sha256-JZq+9YsJrRqAIrXLlIMamPPltcx8ZfegtAvmQ2F1b2M=" }, "kxmlgui": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/kxmlgui-6.16.0.tar.xz", - "hash": "sha256-Jv5TddlQKcWoKNW0f8SyDoaEvDvojfG8lAgoIc4yp04=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/kxmlgui-6.17.0.tar.xz", + "hash": "sha256-oYBxacosOGqNPiXLKwZlVOSWY6bj9jLxoZaO9UdkMOM=" }, "modemmanager-qt": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/modemmanager-qt-6.16.0.tar.xz", - "hash": "sha256-O5kp60TDNZpr6cX/D68oGKJ3E/4kfcJdSX87UfYi+J4=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/modemmanager-qt-6.17.0.tar.xz", + "hash": "sha256-tB/h3ZoOFGrbTYCY1WnWsRKR9AyQ33DfuqatFlThjXY=" }, "networkmanager-qt": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/networkmanager-qt-6.16.0.tar.xz", - "hash": "sha256-ue0LqpFZzFqsdlG+SKmAzHy1g5M8QSzvg4WWEoy9ZkU=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/networkmanager-qt-6.17.0.tar.xz", + "hash": "sha256-2Dvq6Gf7fWaYhvUTiT+O7Fi116JLQp2J3FxsCLej9OA=" }, "prison": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/prison-6.16.0.tar.xz", - "hash": "sha256-OCsrnjoAVcNLYCkDUrhWaov/dcqHNblTSgdjg9bk5RA=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/prison-6.17.0.tar.xz", + "hash": "sha256-VULdBzPga+rm+M+L8n/5gfNCBf6YEl2RC+LFP/9HAHw=" }, "purpose": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/purpose-6.16.0.tar.xz", - "hash": "sha256-qg/yyY4M1RfE2BkUuij0phAbJe6ayxd0gJZ/RbA5iL8=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/purpose-6.17.0.tar.xz", + "hash": "sha256-aJVl1esJmeHM2S6PhB/IJBqwJInKbDOfSNVBtbqTdko=" }, "qqc2-desktop-style": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/qqc2-desktop-style-6.16.0.tar.xz", - "hash": "sha256-OrEsPiMsbFvco5c4rG8aUXvv9tpY3jbhAUuDVf9jw+c=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/qqc2-desktop-style-6.17.0.tar.xz", + "hash": "sha256-YxvYnVyCp/k+omvCB50d+Bwy518XfTNGqcsQqc10d5c=" }, "solid": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/solid-6.16.0.tar.xz", - "hash": "sha256-AOxgnXmTNbr7l7an1KXAYatKDrEOQIno4QSUIyG+uKA=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/solid-6.17.0.tar.xz", + "hash": "sha256-F/BRDvE0tm5kfuIXtkhwUy11fHIcgV8gxJVnuXnJxyU=" }, "sonnet": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/sonnet-6.16.0.tar.xz", - "hash": "sha256-F0LNOh3Es7ejhx79lxXv0nEL/7eimg6rFdTBeqzKwrg=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/sonnet-6.17.0.tar.xz", + "hash": "sha256-Sv726cpy7bbCKAC0rPtFDfcSHlB3yFITrKX1arn0Fgs=" }, "syndication": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/syndication-6.16.0.tar.xz", - "hash": "sha256-kB9ScHIJEYGBdAJObNL+RMlMdS822wzhjTp9zZpstt4=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/syndication-6.17.0.tar.xz", + "hash": "sha256-1acUsJ72pQtn9V1Y+Mbu+hu6VSUn3tEUWEi1RmMw6pM=" }, "syntax-highlighting": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/syntax-highlighting-6.16.0.tar.xz", - "hash": "sha256-dKE3GbTz+l26cjUrVnPLbnu2EhveHiiG8dr/J+LyT1o=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/syntax-highlighting-6.17.0.tar.xz", + "hash": "sha256-PRa+wPvrhTvmhMNfR1UNWYFNsfS3B+x3uGLzZQ81P8w=" }, "threadweaver": { - "version": "6.16.0", - "url": "mirror://kde/stable/frameworks/6.16/threadweaver-6.16.0.tar.xz", - "hash": "sha256-6J0fJ2rvd0MN1X9/LlwZW3IBM06e0RTcJMe6WUMOFLY=" + "version": "6.17.0", + "url": "mirror://kde/stable/frameworks/6.17/threadweaver-6.17.0.tar.xz", + "hash": "sha256-dx/4nBwBKj6iuu1YyAPs1+iwuJKOOuvBHAffXM8FT0Q=" } } \ No newline at end of file From 1a48addf92430991f82e6874f9cef1eed37934db Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sat, 9 Aug 2025 10:51:41 +0200 Subject: [PATCH 14/30] python313Packages.docplex: 2.29.245 -> 2.30.251 --- .../development/python-modules/docplex/default.nix | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/pkgs/development/python-modules/docplex/default.nix b/pkgs/development/python-modules/docplex/default.nix index 2095590adb2c..f28c1e99cd68 100644 --- a/pkgs/development/python-modules/docplex/default.nix +++ b/pkgs/development/python-modules/docplex/default.nix @@ -2,22 +2,19 @@ lib, buildPythonPackage, fetchPypi, - isPy27, setuptools, - futures ? null, docloud, requests, }: buildPythonPackage rec { pname = "docplex"; - version = "2.29.245"; + version = "2.30.251"; pyproject = true; - # No source available from official repo src = fetchPypi { inherit pname version; - hash = "sha256-pCb+P6WQUPX+dzFfe6Hcfao1fH2NDtBmpYNWRx2FPko="; + hash = "sha256-ZQMhn1tRJ1p+TnfKQzKQOw+Akl0gUDCkjT9qp8oNvyo="; }; postPatch = '' @@ -27,13 +24,14 @@ buildPythonPackage rec { build-system = [ setuptools ]; - propagatedBuildInputs = [ + dependencies = [ docloud requests - ] - ++ lib.optional isPy27 futures; + ]; + # PypI release does not include tests doCheck = false; + pythonImportsCheck = [ "docplex" ]; meta = with lib; { From 8b0263aba578e2fa611a528bedcfc5cf4d5a687c Mon Sep 17 00:00:00 2001 From: Alois Wohlschlager Date: Sat, 19 Jul 2025 09:26:36 +0200 Subject: [PATCH 15/30] capnproto: fix platform offset Due to the wrong platform offset, buildPackages.capnproto would inappropriately depend on empty-libgcc_eh when building with dynamic build platform and static host platform. In turn the build would fail due to the archiver not being found. --- pkgs/by-name/ca/capnproto/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/ca/capnproto/package.nix b/pkgs/by-name/ca/capnproto/package.nix index e02665fe0c50..cf43e3d27bea 100644 --- a/pkgs/by-name/ca/capnproto/package.nix +++ b/pkgs/by-name/ca/capnproto/package.nix @@ -45,7 +45,7 @@ clangStdenv.mkDerivation rec { openssl zlib ] - ++ lib.optional (clangStdenv.cc.isClang && clangStdenv.targetPlatform.isStatic) empty-libgcc_eh; + ++ lib.optional (clangStdenv.cc.isClang && clangStdenv.hostPlatform.isStatic) empty-libgcc_eh; # FIXME: separate the binaries from the stuff that user systems actually use # This runs into a terrible UX issue in Lix and I just don't want to debug it From dbe04a0b0c4ab20b199c22b51bf4663d1048fd88 Mon Sep 17 00:00:00 2001 From: Alois Wohlschlager Date: Sun, 27 Jul 2025 15:30:16 +0200 Subject: [PATCH 16/30] lixPackageSets.*.lix: stop copying unnecessary boost libraries This is basically the same as https://gerrit.lix.systems/c/lix/+/3767 upstream. --- pkgs/tools/package-management/lix/common-lix.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/package-management/lix/common-lix.nix b/pkgs/tools/package-management/lix/common-lix.nix index f414bd836135..9c08270cc9db 100644 --- a/pkgs/tools/package-management/lix/common-lix.nix +++ b/pkgs/tools/package-management/lix/common-lix.nix @@ -229,7 +229,7 @@ stdenv.mkDerivation (finalAttrs: { preConfigure = # Copy libboost_context so we don't get all of Boost in our closure. # https://github.com/NixOS/nixpkgs/issues/45462 - lib.optionalString (!enableStatic) '' + lib.optionalString (lib.versionOlder version "2.91" && !enableStatic) '' mkdir -p $out/lib cp -pd ${boost}/lib/{libboost_context*,libboost_thread*,libboost_system*} $out/lib rm -f $out/lib/*.a @@ -299,7 +299,7 @@ stdenv.mkDerivation (finalAttrs: { mkdir -p $out/nix-support echo "file binary-dist $out/bin/nix" >> $out/nix-support/hydra-build-products '' - + lib.optionalString stdenv.hostPlatform.isDarwin '' + + lib.optionalString (lib.versionOlder version "2.91" && stdenv.hostPlatform.isDarwin) '' for lib in liblixutil.dylib liblixexpr.dylib; do install_name_tool \ -change "${lib.getLib boost}/lib/libboost_context.dylib" \ From 098e2ec4ecd08f1927a477d7d06aec7060434fd6 Mon Sep 17 00:00:00 2001 From: Alois Wohlschlager Date: Sat, 12 Jul 2025 14:42:13 +0200 Subject: [PATCH 17/30] lixPackageSets.*.lix: omit unneeded Python packages when !doInstallCheck --- .../tools/package-management/lix/common-lix.nix | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/pkgs/tools/package-management/lix/common-lix.nix b/pkgs/tools/package-management/lix/common-lix.nix index 9c08270cc9db..18e5ed0cbe37 100644 --- a/pkgs/tools/package-management/lix/common-lix.nix +++ b/pkgs/tools/package-management/lix/common-lix.nix @@ -137,12 +137,17 @@ stdenv.mkDerivation (finalAttrs: { nativeBuildInputs = [ # python3.withPackages does not splice properly, see https://github.com/NixOS/nixpkgs/issues/305858 - (python3.pythonOnBuildForHost.withPackages (p: [ - p.pytest - p.pytest-xdist - p.python-frontmatter - p.toml - ])) + (python3.pythonOnBuildForHost.withPackages ( + p: + [ + p.python-frontmatter + p.toml + ] + ++ lib.optionals finalAttrs.doInstallCheck [ + p.pytest + p.pytest-xdist + ] + )) pkg-config flex jq From cf6821c8f84fe12f6e6120bcad28295ae2d9f291 Mon Sep 17 00:00:00 2001 From: Alois Wohlschlager Date: Sat, 2 Aug 2025 18:13:07 +0200 Subject: [PATCH 18/30] lixPackageSets.*.lix: use buildPackages.python3 instead of python3.pythonOnBuildForHost The former seems to exhibit fewer subtle issues breaking cross (in particular static) builds, for reasons I have not yet understood. --- pkgs/tools/package-management/lix/common-lix.nix | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/package-management/lix/common-lix.nix b/pkgs/tools/package-management/lix/common-lix.nix index 18e5ed0cbe37..107d2660b9ed 100644 --- a/pkgs/tools/package-management/lix/common-lix.nix +++ b/pkgs/tools/package-management/lix/common-lix.nix @@ -57,7 +57,7 @@ assert lib.assertMsg ( rustc, toml11, pegtl, - python3, + buildPackages, pkg-config, rapidcheck, sqlite, @@ -137,7 +137,7 @@ stdenv.mkDerivation (finalAttrs: { nativeBuildInputs = [ # python3.withPackages does not splice properly, see https://github.com/NixOS/nixpkgs/issues/305858 - (python3.pythonOnBuildForHost.withPackages ( + (buildPackages.python3.withPackages ( p: [ p.python-frontmatter @@ -154,7 +154,6 @@ stdenv.mkDerivation (finalAttrs: { meson ninja cmake - python3 # Required for libstd++ assertions that leaks inside of the final binary. removeReferencesTo From 4bf9b46041486f4dafc01155c6d6e9fee0aa9948 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sat, 9 Aug 2025 12:04:46 +0200 Subject: [PATCH 19/30] python313Packages.python-fx: remove future --- pkgs/development/python-modules/python-fx/default.nix | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/python-fx/default.nix b/pkgs/development/python-modules/python-fx/default.nix index 571405cce6ff..2f63ca723426 100644 --- a/pkgs/development/python-modules/python-fx/default.nix +++ b/pkgs/development/python-modules/python-fx/default.nix @@ -8,7 +8,6 @@ dacite, decorator, fetchFromGitHub, - future, first, jsonpath-ng, loguru, @@ -54,14 +53,13 @@ buildPythonPackage rec { nativeBuildInputs = [ antlr4 ]; - propagatedBuildInputs = [ + dependencies = [ antlr4-python3-runtime asciimatics click dacite decorator first - future jsonpath-ng loguru overrides @@ -88,8 +86,8 @@ buildPythonPackage rec { meta = with lib; { description = "Module to view JSON in a TUI"; homepage = "https://github.com/cielong/pyfx"; - changelog = "https://github.com/cielong/pyfx/releases/tag/v${version}"; - license = with licenses; [ mit ]; + changelog = "https://github.com/cielong/pyfx/releases/tag/${src.tag}"; + license = licenses.mit; maintainers = with maintainers; [ fab ]; mainProgram = "pyfx"; }; From 0c9bee3c7cea0af0a1fe868d6e48f254061a46a3 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 9 Aug 2025 11:40:26 +0000 Subject: [PATCH 20/30] attic-client: 0-unstable-2025-07-11 -> 0-unstable-2025-08-07 --- pkgs/by-name/at/attic-client/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/at/attic-client/package.nix b/pkgs/by-name/at/attic-client/package.nix index 82ef2d703a10..4098917d46ff 100644 --- a/pkgs/by-name/at/attic-client/package.nix +++ b/pkgs/by-name/at/attic-client/package.nix @@ -21,13 +21,13 @@ in rustPlatform.buildRustPackage { pname = "attic"; - version = "0-unstable-2025-07-11"; + version = "0-unstable-2025-08-07"; src = fetchFromGitHub { owner = "zhaofengli"; repo = "attic"; - rev = "24fad0622fc9404c69e83bab7738359c5be4988e"; - hash = "sha256-5TomR72rn4q+5poQcN6EnanxeXKqJSqWVAoDAFN0lUc="; + rev = "687dd7d607824edf11bf33e3d91038467e7fad43"; + hash = "sha256-swR4GCqp5LHYJQ7pdePBtsqYyiyy+ASfUvhAgou23KI="; }; nativeBuildInputs = [ From 28a8bb174002617a6263777ae956bb609addd494 Mon Sep 17 00:00:00 2001 From: Alois Wohlschlager Date: Sat, 12 Jul 2025 14:42:13 +0200 Subject: [PATCH 21/30] lixPackageSets.git: 2.94.0-pre-20250704_362bfd827f52 -> 2.94.0-pre-20250807_8bbd5e1d0df9 --- pkgs/tools/package-management/lix/common-lix.nix | 7 +++++-- .../tools/package-management/lix/common-nix-eval-jobs.nix | 2 +- pkgs/tools/package-management/lix/default.nix | 8 ++++---- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/pkgs/tools/package-management/lix/common-lix.nix b/pkgs/tools/package-management/lix/common-lix.nix index 107d2660b9ed..ccd481c460e8 100644 --- a/pkgs/tools/package-management/lix/common-lix.nix +++ b/pkgs/tools/package-management/lix/common-lix.nix @@ -100,6 +100,7 @@ let isLegacyParser = lib.versionOlder version "2.91"; hasDtraceSupport = lib.versionAtLeast version "2.93"; parseToYAML = lib.versionAtLeast version "2.93"; + usesCapnp = lib.versionAtLeast version "2.94"; in # gcc miscompiles coroutines at least until 13.2, possibly longer # do not remove this check unless you are sure you (or your users) will not report bugs to Lix upstream about GCC miscompilations. @@ -144,9 +145,11 @@ stdenv.mkDerivation (finalAttrs: { p.toml ] ++ lib.optionals finalAttrs.doInstallCheck [ + p.aiohttp p.pytest p.pytest-xdist ] + ++ lib.optionals usesCapnp [ p.pycapnp ] )) pkg-config flex @@ -178,6 +181,7 @@ stdenv.mkDerivation (finalAttrs: { ++ lib.optionals (hasDtraceSupport && withDtrace) [ systemtap-sdt ] ++ lib.optionals pastaFod [ passt ] ++ lib.optionals parseToYAML [ yq ] + ++ lib.optionals usesCapnp [ capnproto ] ++ lib.optionals stdenv.hostPlatform.isLinux [ util-linuxMinimal ]; buildInputs = [ @@ -294,9 +298,8 @@ stdenv.mkDerivation (finalAttrs: { mkdir -p $devdoc/nix-support echo "devdoc internal-api $devdoc/share/doc/nix/internal-api" >> $devdoc/nix-support/hydra-build-products '' - + lib.optionalString (!hasExternalLixDoc) '' + + lib.optionalString (lib.versionOlder version "2.94" && !hasExternalLixDoc) '' # We do not need static archives. - # FIXME(Raito): why are they getting installed _at all_ ? rm $out/lib/liblix_doc.a '' + lib.optionalString stdenv.hostPlatform.isStatic '' diff --git a/pkgs/tools/package-management/lix/common-nix-eval-jobs.nix b/pkgs/tools/package-management/lix/common-nix-eval-jobs.nix index 26fdc0e2706b..48b76ca7179b 100644 --- a/pkgs/tools/package-management/lix/common-nix-eval-jobs.nix +++ b/pkgs/tools/package-management/lix/common-nix-eval-jobs.nix @@ -65,6 +65,6 @@ stdenv.mkDerivation { license = lib.licenses.gpl3; teams = [ lib.teams.lix ]; platforms = lib.platforms.unix; - broken = stdenv.hostPlatform.isStatic; + broken = lib.versionOlder version "2.94" && stdenv.hostPlatform.isStatic; }; } diff --git a/pkgs/tools/package-management/lix/default.nix b/pkgs/tools/package-management/lix/default.nix index fb7c9bb0435a..efc0ef628b0a 100644 --- a/pkgs/tools/package-management/lix/default.nix +++ b/pkgs/tools/package-management/lix/default.nix @@ -271,20 +271,20 @@ lib.makeExtensible (self: { attrName = "git"; lix-args = rec { - version = "2.94.0-pre-20250704_${builtins.substring 0 12 src.rev}"; + version = "2.94.0-pre-20250807_${builtins.substring 0 12 src.rev}"; src = fetchFromGitea { domain = "git.lix.systems"; owner = "lix-project"; repo = "lix"; - rev = "362bfd827f522b57062e4ebcb465bb51941632a4"; - hash = "sha256-4CVRbeYExqIDpFH+QMZb5IeUGkP6kA/zHSuExYoZygk="; + rev = "8bbd5e1d0df9c31b4d86ba07bc85beb952e42ccb"; + hash = "sha256-P+WiN95OjCqHhfygglS/VOFTSj7qNdL5XQDo2wxhQqg="; }; cargoDeps = rustPlatform.fetchCargoVendor { name = "lix-${version}"; inherit src; - hash = "sha256-YMyNOXdlx0I30SkcmdW/6DU0BYc3ZOa2FMJSKMkr7I8="; + hash = "sha256-APm8m6SVEAO17BBCka13u85/87Bj+LePP7Y3zHA3Mpg="; }; }; }; From 770bf485d0e4e379318d0d00b652d80b1ad5a90a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 9 Aug 2025 11:59:51 +0000 Subject: [PATCH 22/30] dbeaver-bin: 25.1.3 -> 25.1.4 --- pkgs/by-name/db/dbeaver-bin/package.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/db/dbeaver-bin/package.nix b/pkgs/by-name/db/dbeaver-bin/package.nix index 017e50983efa..f3a3f45736ed 100644 --- a/pkgs/by-name/db/dbeaver-bin/package.nix +++ b/pkgs/by-name/db/dbeaver-bin/package.nix @@ -18,7 +18,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "dbeaver-bin"; - version = "25.1.3"; + version = "25.1.4"; src = let @@ -31,10 +31,10 @@ stdenvNoCC.mkDerivation (finalAttrs: { aarch64-darwin = "macos-aarch64.dmg"; }; hash = selectSystem { - x86_64-linux = "sha256-SJCm5HnyhhpFvAK5ei9rkjCKnv8k904Vy0mOqTNcZXM="; - aarch64-linux = "sha256-hE4Eu8eL4fJlCj7s+VM4moPBGleibg3nT363avB9gq4="; - x86_64-darwin = "sha256-RWewJ5A0j+W17bv0DtxHG1iEz6q87/FwOvn34tHoN7Q="; - aarch64-darwin = "sha256-vpVQF3o054s6ztpxJVGj8z3R4E2bc3LD+t8/4PO4hXw="; + x86_64-linux = "sha256-ZJUmuJqTD3cRMMdIIqbJRp6C2GacnRn1fxzL23Vg8og="; + aarch64-linux = "sha256-nHIk3MObHge5ACyype8HgFwvolPqrQ0BTDs/pYlsiW8="; + x86_64-darwin = "sha256-/dl3B2FLz7V27c5/q8L1HtssbT/lLAet0lhDvgGVqZM="; + aarch64-darwin = "sha256-/NClQkx6In9lS4vtk2lBhFHw0BLObmNqTIVJfhJcob4="; }; in fetchurl { From 70f5d13cb2d28c897e9f06f5b8a0bb98c3b94b0a Mon Sep 17 00:00:00 2001 From: K900 Date: Sat, 9 Aug 2025 15:39:39 +0300 Subject: [PATCH 23/30] kora-icon-theme: set dontWrapQtApps --- pkgs/by-name/ko/kora-icon-theme/package.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/by-name/ko/kora-icon-theme/package.nix b/pkgs/by-name/ko/kora-icon-theme/package.nix index 5996ec27e1e1..61f11515f6f8 100644 --- a/pkgs/by-name/ko/kora-icon-theme/package.nix +++ b/pkgs/by-name/ko/kora-icon-theme/package.nix @@ -30,6 +30,9 @@ stdenvNoCC.mkDerivation rec { hicolor-icon-theme ]; + # breeze-icons propagates qtbase + dontWrapQtApps = true; + dontDropIconThemeCache = true; installPhase = '' From 5bbf19b093c086615c60cd6220ebf0d088fa8c19 Mon Sep 17 00:00:00 2001 From: K900 Date: Sat, 9 Aug 2025 15:39:47 +0300 Subject: [PATCH 24/30] deepin-icon-theme: set dontWrapQtApps --- pkgs/desktops/deepin/artwork/deepin-icon-theme/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/desktops/deepin/artwork/deepin-icon-theme/default.nix b/pkgs/desktops/deepin/artwork/deepin-icon-theme/default.nix index 7f19e8fd010d..34e6cb0a7079 100644 --- a/pkgs/desktops/deepin/artwork/deepin-icon-theme/default.nix +++ b/pkgs/desktops/deepin/artwork/deepin-icon-theme/default.nix @@ -27,6 +27,9 @@ stdenvNoCC.mkDerivation rec { propagatedBuildInputs = [ papirus-icon-theme ]; + # breeze-icons propagates qtbase + dontWrapQtApps = true; + dontDropIconThemeCache = true; # Remove broken symbolic link(https://github.com/linuxdeepin/developer-center/issues/11245) From e7d497599882f4cee568fe9b3bfc1fe1547e9501 Mon Sep 17 00:00:00 2001 From: K900 Date: Sat, 9 Aug 2025 15:58:26 +0300 Subject: [PATCH 25/30] deepin-desktop-theme: set dontWrapQtApps --- pkgs/desktops/deepin/artwork/deepin-desktop-theme/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/desktops/deepin/artwork/deepin-desktop-theme/default.nix b/pkgs/desktops/deepin/artwork/deepin-desktop-theme/default.nix index b22202590b92..d52b7cb3b2f6 100644 --- a/pkgs/desktops/deepin/artwork/deepin-desktop-theme/default.nix +++ b/pkgs/desktops/deepin/artwork/deepin-desktop-theme/default.nix @@ -37,6 +37,9 @@ stdenv.mkDerivation rec { deepin-icon-theme ]; + # breeze-icons propagates qtbase + dontWrapQtApps = true; + dontDropIconThemeCache = true; preFixup = '' From 439d68b58d5c867d054fa472429106e51f13e35a Mon Sep 17 00:00:00 2001 From: nikstur Date: Sat, 9 Aug 2025 14:06:46 +0200 Subject: [PATCH 26/30] nixos/audit: fix journald test Makes the audit module responsible for setting up the audit subsystem of the kernel. The auditd module is now only responsible for setting up the daemon. Enable the audit subsystem early via kernelParams. Increase the default audit backlog limit so that it works out of the box for a normal system. Remove a superfluous and pointless test case. --- nixos/modules/security/audit.nix | 16 +++++++++++++++- nixos/modules/security/auditd.nix | 4 +--- nixos/tests/audit.nix | 7 +++++-- nixos/tests/systemd-journal.nix | 11 ----------- 4 files changed, 21 insertions(+), 17 deletions(-) diff --git a/nixos/modules/security/audit.nix b/nixos/modules/security/audit.nix index 4bcc6c62d1cb..f50c465fde5b 100644 --- a/nixos/modules/security/audit.nix +++ b/nixos/modules/security/audit.nix @@ -53,7 +53,9 @@ in backlogLimit = lib.mkOption { type = lib.types.int; - default = 64; # Apparently the kernel default + # Significantly increase from the kernel default of 64 because a + # normal systems generates way more logs. + default = 1024; description = '' The maximum number of outstanding audit buffers allowed; exceeding this is considered a failure and handled in a manner specified by failureMode. @@ -81,6 +83,18 @@ in }; config = lib.mkIf (cfg.enable == "lock" || cfg.enable) { + boot.kernelParams = [ + # A lot of audit events happen before the systemd service starts. Thus + # enable it via the kernel commandline to have the audit subsystem ready + # as soon as the kernel starts. + "audit=1" + # Also set the backlog limit because the kernel default is too small to + # capture all of them before the service starts. + "audit_backlog_limit=${toString cfg.backlogLimit}" + ]; + + environment.systemPackages = [ pkgs.audit ]; + systemd.services.audit-rules = { description = "Load Audit Rules"; wantedBy = [ "sysinit.target" ]; diff --git a/nixos/modules/security/auditd.nix b/nixos/modules/security/auditd.nix index ff20cc2fbbf7..036ce9c01cae 100644 --- a/nixos/modules/security/auditd.nix +++ b/nixos/modules/security/auditd.nix @@ -202,11 +202,9 @@ in } ]; - # Starting auditd should also enable loading the audit rules.. + # Starting the userspace daemon should also enable audit in the kernel security.audit.enable = lib.mkDefault true; - environment.systemPackages = [ pkgs.audit ]; - # setting this to anything other than /etc/audit/plugins.d will break, so we pin it here security.auditd.settings.plugin_dir = "/etc/audit/plugins.d"; diff --git a/nixos/tests/audit.nix b/nixos/tests/audit.nix index 7f1280060824..0d732442ef4b 100644 --- a/nixos/tests/audit.nix +++ b/nixos/tests/audit.nix @@ -16,6 +16,7 @@ rules = [ "-a always,exit -F exe=${lib.getExe pkgs.hello} -k nixos-test" ]; + backlogLimit = 512; }; security.auditd = { enable = true; @@ -34,7 +35,9 @@ machine.wait_for_unit("auditd.service") with subtest("Audit subsystem gets enabled"): - assert "enabled 1" in machine.succeed("auditctl -s") + audit_status = machine.succeed("auditctl -s") + t.assertIn("enabled 1", audit_status) + t.assertIn("backlog_limit 512", audit_status) with subtest("unix socket plugin activated"): machine.succeed("stat /var/run/audispd_events") @@ -45,7 +48,7 @@ with subtest("Stopping audit-rules.service disables the audit subsystem"): machine.succeed("systemctl stop audit-rules.service") - assert "enabled 0" in machine.succeed("auditctl -s") + t.assertIn("enabled 0", machine.succeed("auditctl -s")) ''; } diff --git a/nixos/tests/systemd-journal.nix b/nixos/tests/systemd-journal.nix index 8589df339253..2c7309f163f8 100644 --- a/nixos/tests/systemd-journal.nix +++ b/nixos/tests/systemd-journal.nix @@ -12,16 +12,10 @@ nodes.auditd = { security.auditd.enable = true; security.audit.enable = true; - environment.systemPackages = [ pkgs.audit ]; - boot.kernel.sysctl."kernel.printk_ratelimit" = 0; - boot.kernelParams = [ "audit_backlog_limit=8192" ]; }; nodes.journaldAudit = { services.journald.audit = true; security.audit.enable = true; - environment.systemPackages = [ pkgs.audit ]; - boot.kernel.sysctl."kernel.printk_ratelimit" = 0; - boot.kernelParams = [ "audit_backlog_limit=8192" ]; }; nodes.containerCheck = { containers.c1 = { @@ -56,11 +50,6 @@ journaldAudit.succeed("journalctl _TRANSPORT=audit --grep 'unit=systemd-journald'") # logs should NOT end up in audit log journaldAudit.fail("grep 'unit=systemd-journald' /var/log/audit/audit.log") - # FIXME: If systemd fixes #15324 this test will start failing. - # You can fix this text by removing the below line. - # logs ideally should NOT end up in kmesg, but they do due to - # https://github.com/systemd/systemd/issues/15324 - journaldAudit.succeed("journalctl _TRANSPORT=kernel --grep 'unit=systemd-journald'") with subtest("container systemd-journald-audit not running"): From 29b59ada1dcfda5ee8cb89daedf70f8a93ba76b1 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 9 Aug 2025 13:08:13 +0000 Subject: [PATCH 27/30] planify: 4.13.0 -> 4.13.2 --- pkgs/by-name/pl/planify/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/pl/planify/package.nix b/pkgs/by-name/pl/planify/package.nix index 3249c92c3963..306590474fe1 100644 --- a/pkgs/by-name/pl/planify/package.nix +++ b/pkgs/by-name/pl/planify/package.nix @@ -29,13 +29,13 @@ stdenv.mkDerivation rec { pname = "planify"; - version = "4.13.0"; + version = "4.13.2"; src = fetchFromGitHub { owner = "alainm23"; repo = "planify"; rev = version; - hash = "sha256-4fsgXyIt5bhdbG0DRFYv6vrGagTyH5SAFcOaAV3uq0g="; + hash = "sha256-bQ7kKUdInf6ZYO0X6kwW0HbuciiXhGyAdvnPcT0MllM="; }; nativeBuildInputs = [ From d5b9bb83aafb2b936fc20d5c85583570ce6a155f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 9 Aug 2025 13:37:20 +0000 Subject: [PATCH 28/30] mpris-discord-rpc: 0.5.0 -> 0.5.1 --- pkgs/by-name/mp/mpris-discord-rpc/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/mp/mpris-discord-rpc/package.nix b/pkgs/by-name/mp/mpris-discord-rpc/package.nix index 5f93c48bee2e..487038ca16e2 100644 --- a/pkgs/by-name/mp/mpris-discord-rpc/package.nix +++ b/pkgs/by-name/mp/mpris-discord-rpc/package.nix @@ -10,16 +10,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "mpris-discord-rpc"; - version = "0.5.0"; + version = "0.5.1"; src = fetchFromGitHub { owner = "patryk-ku"; repo = "mpris-discord-rpc"; tag = "v${finalAttrs.version}"; - hash = "sha256-CzIHmc1BfKlUjiNjgslNDt00Xwpkz5zoDpYMd0HnHxE="; + hash = "sha256-tPIm07q5HWosqhA3zefyuwM+fIztNZe1sSpB/NmUIoE="; }; - cargoHash = "sha256-RUebfsAzn93a0Ebp6cmzZWj72ivkaPzEaN6RIP4/WQM="; + cargoHash = "sha256-3MJAvCc0ekUQ+eM5n8MdPNxXJWUgV76vi/Rq7GhhEPE="; nativeBuildInputs = [ pkg-config From 80174fcb64597e96ab038984a4fddc658e2fcbbb Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 9 Aug 2025 13:55:49 +0000 Subject: [PATCH 29/30] phpPackages.phpstan: 2.1.21 -> 2.1.22 --- pkgs/development/php-packages/phpstan/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/php-packages/phpstan/default.nix b/pkgs/development/php-packages/phpstan/default.nix index 45dc3645d394..39199be432b9 100644 --- a/pkgs/development/php-packages/phpstan/default.nix +++ b/pkgs/development/php-packages/phpstan/default.nix @@ -7,16 +7,16 @@ php.buildComposerProject2 (finalAttrs: { pname = "phpstan"; - version = "2.1.21"; + version = "2.1.22"; src = fetchFromGitHub { owner = "phpstan"; repo = "phpstan-src"; tag = finalAttrs.version; - hash = "sha256-f+GxZPt5O++x0XKxdJqAiEfpgQYCN4uzDAzw20xd268="; + hash = "sha256-lhUsMDjfFOXdP3/HqPjaudXm5rugUo9tBaDPaI3CT20="; }; - vendorHash = "sha256-6jGZF10B9aCMgLUKXcckcPF96U8edsPaMAQ7egHAAQk="; + vendorHash = "sha256-wVCCWzW1A7asmxECx9Uk6PpThnrvhjTAEm689bKtHA0="; composerStrictValidation = false; doInstallCheck = true; From 328f8a82563e144fcb9e9364db4abf0dfd561edf Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 9 Aug 2025 10:54:58 +0000 Subject: [PATCH 30/30] klipper: 0.13.0-unstable-2025-07-12 -> 0.13.0-unstable-2025-08-03 --- pkgs/servers/klipper/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/klipper/default.nix b/pkgs/servers/klipper/default.nix index 25b241970662..bfab5d5477ad 100644 --- a/pkgs/servers/klipper/default.nix +++ b/pkgs/servers/klipper/default.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation rec { pname = "klipper"; - version = "0.13.0-unstable-2025-07-12"; + version = "0.13.0-unstable-2025-08-03"; src = fetchFromGitHub { owner = "KevinOConnor"; repo = "klipper"; - rev = "9323a5dfe28619a53c7f350c2e894d299c342bca"; - sha256 = "sha256-m6A8a3lR8aeMudA/kz1wCynm+6jZY3w6v2Pag54lQd8="; + rev = "5eb07966b5d7e1534aa40df3b0ea305f5c6d9ae2"; + sha256 = "sha256-AUK0vGhz1ZvVtEpVto/Qlp4+3PGsjOTBzj8Ik8sfmRQ="; }; sourceRoot = "${src.name}/klippy";