From 86d79499b58c6b9b2f9e27cf7834953d087d7b25 Mon Sep 17 00:00:00 2001 From: Stig Palmquist Date: Sat, 6 Jun 2026 11:43:51 +0200 Subject: [PATCH 01/65] perlPackages.ArchiveTar: 3.10 -> 3.12 (cherry picked from commit 177e9f5409b1419cf2ea82543fb2a51fab9d0699) --- pkgs/top-level/perl-packages.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index ba53d10159e4..e5f4696db34d 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -1785,10 +1785,10 @@ with self; ArchiveTar = buildPerlPackage { pname = "Archive-Tar"; - version = "3.10"; + version = "3.12"; src = fetchurl { - url = "mirror://cpan/authors/id/B/BI/BINGOS/Archive-Tar-3.10.tar.gz"; - hash = "sha256-irvDaMxHIwjiqWDEpOi258pJJFefxGPH+oemplbITlY="; + url = "mirror://cpan/authors/id/B/BI/BINGOS/Archive-Tar-3.12.tar.gz"; + hash = "sha256-ARTvObZfSfiWgoOrR3Gdfoj5jXNg/jZJvjMcf1PVgyw="; }; meta = { description = "Manipulates TAR archives"; From 2416f047c23c3fd2b411e548a9ef58c225fd01df Mon Sep 17 00:00:00 2001 From: Maxime Brunet Date: Sat, 22 Aug 2026 23:14:16 -0400 Subject: [PATCH 02/65] python3Packages.ntlk: fix build in Darwin sandbox (cherry picked from commit 21190bf6144beb2b8a4b4655de98358026ff4025) --- pkgs/development/python-modules/nltk/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/python-modules/nltk/default.nix b/pkgs/development/python-modules/nltk/default.nix index 9958388f1e3d..6b2ada0190e3 100644 --- a/pkgs/development/python-modules/nltk/default.nix +++ b/pkgs/development/python-modules/nltk/default.nix @@ -113,6 +113,8 @@ buildPythonPackage (finalAttrs: { dataDir = pkgs.callPackage ./data-dir.nix { }; }; + __darwinAllowLocalNetworking = true; + meta = { description = "Natural Language Processing ToolKit"; mainProgram = "nltk"; From cff39d18f1df56d8280dbca34a25407b6dd29b15 Mon Sep 17 00:00:00 2001 From: jopejoe1 Date: Mon, 7 Sep 2026 16:15:39 +0000 Subject: [PATCH 03/65] firefox-beta-unwrapped: 156.0b2 -> 156.0b4 (cherry picked from commit fef42880571976e888101d5bc62cdae6613f2fc0) --- .../networking/browsers/firefox/packages/firefox-beta.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/browsers/firefox/packages/firefox-beta.nix b/pkgs/applications/networking/browsers/firefox/packages/firefox-beta.nix index 20f7f74a25af..fb86b569b675 100644 --- a/pkgs/applications/networking/browsers/firefox/packages/firefox-beta.nix +++ b/pkgs/applications/networking/browsers/firefox/packages/firefox-beta.nix @@ -10,11 +10,11 @@ buildMozillaMach rec { pname = "firefox-beta"; binaryName = "firefox-beta"; - version = "156.0b2"; + version = "156.0b4"; applicationName = "Firefox Beta"; src = fetchurl { url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz"; - sha512 = "5b685f8b947af0b519c59a308fba6a41f9481df68b7fb6f4b395707653c3ef1822817d2f867d663081cd2d61c8fd4537f46b8002da84b5efa9b8a57ae9491164"; + sha512 = "2aa751d66854145bf260dd04fe1473ca20275c02e51c07efdda769d7980cdaee6dc393cac32fe3bb4ed131249fde81e150c284ee38af5fc560da7704947a6453"; }; meta = { From a4a765380e9d4a9c5173e0e2e25db7887273f067 Mon Sep 17 00:00:00 2001 From: jopejoe1 Date: Mon, 7 Sep 2026 16:15:48 +0000 Subject: [PATCH 04/65] firefox-devedition-unwrapped: 156.0b2 -> 156.0b4 (cherry picked from commit 8e31fdad817365c628f0440e49640a86f5f37e99) --- .../browsers/firefox/packages/firefox-devedition.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/browsers/firefox/packages/firefox-devedition.nix b/pkgs/applications/networking/browsers/firefox/packages/firefox-devedition.nix index f214b36faab1..ec38993fe25d 100644 --- a/pkgs/applications/networking/browsers/firefox/packages/firefox-devedition.nix +++ b/pkgs/applications/networking/browsers/firefox/packages/firefox-devedition.nix @@ -10,13 +10,13 @@ buildMozillaMach rec { pname = "firefox-devedition"; binaryName = "firefox-devedition"; - version = "156.0b2"; + version = "156.0b4"; applicationName = "Firefox Developer Edition"; requireSigning = false; branding = "browser/branding/aurora"; src = fetchurl { url = "mirror://mozilla/devedition/releases/${version}/source/firefox-${version}.source.tar.xz"; - sha512 = "683326ff4367f9b807c4c5b93f100970258ada9838da2c597358105a99ff4aa7e33269fe67d6c68d466e2f539d2bea3015457109516af19e1785588ce43426b5"; + sha512 = "5ebdcd33004516625f90f1862b66198e80b906074371cfa2be22e44666fecbe5f93301290427f2860b45a94918d645ae0a26eed32c78b46136c745b1dcf89a1b"; }; # buildMozillaMach sets MOZ_APP_REMOTINGNAME during configuration, but From 4ce67e9dabbe7d4ba5f00ecc0a66a53eb3a0070d Mon Sep 17 00:00:00 2001 From: rorosen Date: Tue, 15 Sep 2026 23:12:13 +0200 Subject: [PATCH 05/65] rke2_1_33: mark as vulnerable due to EOL EOL on 2026-06-28 Not-cherry-picked-because: Package is removed on unstable --- pkgs/applications/networking/cluster/rke2/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/networking/cluster/rke2/default.nix b/pkgs/applications/networking/cluster/rke2/default.nix index a76456652e5d..3c18bf06b6d8 100644 --- a/pkgs/applications/networking/cluster/rke2/default.nix +++ b/pkgs/applications/networking/cluster/rke2/default.nix @@ -5,7 +5,9 @@ let extraArgs = removeAttrs args [ "callPackage" ]; in rec { - rke2_1_33 = common (import ./1_33/versions.nix) extraArgs; + rke2_1_33 = (common (import ./1_33/versions.nix) extraArgs).overrideAttrs { + meta.knownVulnerabilities = [ "rke2_1_33 has reached end-of-life on 2026-06-28" ]; + }; rke2_1_34 = common (import ./1_34/versions.nix) extraArgs; From 851616caa2730f1340149fac88dbe3cb28d84d1d Mon Sep 17 00:00:00 2001 From: rorosen Date: Wed, 2 Sep 2026 22:45:45 +0200 Subject: [PATCH 06/65] rke2_1_34: 1.34.10+rke2r2 -> 1.34.11+rke2r1 Attention: This release upgrades Traefik chart to v40.x which includes a breaking change for the ingress-nginx migration: the provider name changes from kubernetesIngressNginx to kubernetesIngressNGINX. Check https://github.com/traefik/traefik-helm-chart/releases/tag/v40.0.0 for more details https://github.com/rancher/rke2/releases/tag/v1.34.11%2Brke2r1 (cherry picked from commit 3a19981869bbacafbe8b063fb7fde43f5a76bbe0) --- .../cluster/rke2/1_34/images-versions.json | 136 +++++++++--------- .../networking/cluster/rke2/1_34/versions.nix | 18 +-- 2 files changed, 77 insertions(+), 77 deletions(-) diff --git a/pkgs/applications/networking/cluster/rke2/1_34/images-versions.json b/pkgs/applications/networking/cluster/rke2/1_34/images-versions.json index 5a60c1a85cac..e6e254043045 100644 --- a/pkgs/applications/networking/cluster/rke2/1_34/images-versions.json +++ b/pkgs/applications/networking/cluster/rke2/1_34/images-versions.json @@ -1,138 +1,138 @@ { "images-calico-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-calico.linux-amd64.tar.gz", - "sha256": "eca4b54a87b17ca7878a90322a76221cc14b0f191db24a88792a31a128444cb7" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-calico.linux-amd64.tar.gz", + "sha256": "bf01280d541d3b836a582313eac3d7657ea3d5102cbba829e153d9d73f68d9e1" }, "images-calico-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-calico.linux-amd64.tar.zst", - "sha256": "914212fd8288f73361ef29d945b3a2102165df70153fc8c20c180f72704c4da2" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-calico.linux-amd64.tar.zst", + "sha256": "ad9f490fabd8686710221994f697a538f75c374d41198d8be4dddd2b8ab20964" }, "images-calico-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-calico.linux-arm64.tar.gz", - "sha256": "34c6c98dd024ce7e5ffcc17112988be2ab703c3a8977f01312815bda38df11e5" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-calico.linux-arm64.tar.gz", + "sha256": "04a3b7c7d04597a892c693b46082220de96fe23c2ba08862ae99798aa3eaa68d" }, "images-calico-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-calico.linux-arm64.tar.zst", - "sha256": "d1aac5a3f88163b5c0a6dd152be8e6e62b05b3fe85ebf9d6288b5de585d9e056" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-calico.linux-arm64.tar.zst", + "sha256": "0b5f3c70a24377ebc395676ed13bb7dc258c545f2ab7bdba0d74ed150ad7a5f8" }, "images-canal-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-canal.linux-amd64.tar.gz", - "sha256": "9351ecae73961309c566991322839acb0df573f0e826cdeb278babe141357d8b" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-canal.linux-amd64.tar.gz", + "sha256": "2a934cd0eb1e736628c30722a514ece6c9c66dbc4463ee3e00392acd9316db26" }, "images-canal-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-canal.linux-amd64.tar.zst", - "sha256": "1f2aeec78ca8380b55f8398905e9dbe4af5cbb8b3ae9cb4bdcc46b08dcb75c56" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-canal.linux-amd64.tar.zst", + "sha256": "4359b651bfdec8f3bcc01b351b33a55ff21f06b18a767366db6f3800d5750871" }, "images-canal-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-canal.linux-arm64.tar.gz", - "sha256": "b52d98c63d46a8b908bbe3fa2a075fb5b7ea4dbb4325f3a9de63dcc4272f04ff" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-canal.linux-arm64.tar.gz", + "sha256": "21f22228f27848816c7f5fb21b078dfa842ac2e716a8310fb7a306218a8d79e4" }, "images-canal-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-canal.linux-arm64.tar.zst", - "sha256": "3ce45e29db6ef82e475477dd1e4e58049917ffaef7e21b1d7c87b78a10864c48" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-canal.linux-arm64.tar.zst", + "sha256": "fdb78292756a38d2136fa2be014d77f29b06d5ffbdfe8e379d9688614abf89e2" }, "images-cilium-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-cilium.linux-amd64.tar.gz", - "sha256": "a0acd19bcf7f99321635aaff76abf5b5ab256f31e71957dda22caf5ee97f383d" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-cilium.linux-amd64.tar.gz", + "sha256": "db9220609c897176878efe3aff65abc8b32a76ecaac5a80c1c7d61f8ec4f800d" }, "images-cilium-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-cilium.linux-amd64.tar.zst", - "sha256": "ed1e42b4c1db97d65f5ab42faf443fd1786af092bd69b931811557beb17875fe" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-cilium.linux-amd64.tar.zst", + "sha256": "3f3835bd55f7b02b4365c12b69902fb6943cde22014ed9c91ebfce4386d4d458" }, "images-cilium-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-cilium.linux-arm64.tar.gz", - "sha256": "55569b7c58a2cdb2194c14c9b1252fe4545c02c1c0df2e152cf2fa70c29e6e46" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-cilium.linux-arm64.tar.gz", + "sha256": "9ecf145d7ced82287354cab8313ee588bce98f81715eaf5e42c6fee1b1d40c0b" }, "images-cilium-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-cilium.linux-arm64.tar.zst", - "sha256": "916bc0aac94e499bdd6015ca727b97c39da5c635ed87edfc5bff432e3b93bb6a" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-cilium.linux-arm64.tar.zst", + "sha256": "b97c53104b876a7494abd7108573000701766fc1ccfee779a47d021f879d349a" }, "images-core-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-core.linux-amd64.tar.gz", - "sha256": "dbc4e96df1cf68bb1554dffcde377cafde6b58afc6a57ff627bffaaab9387c64" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-core.linux-amd64.tar.gz", + "sha256": "81945ab99e039dc5f78083b30ec79ad46503bf1897007cb297dc7dc72e0523d5" }, "images-core-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-core.linux-amd64.tar.zst", - "sha256": "c98faf27f1867a21fd928185c5b3ce11e58576239724547b14dd714d2cf485f1" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-core.linux-amd64.tar.zst", + "sha256": "7a07540b2fa9cefd87ab9d2598e78ef7a7b8a2aa8e12dfb3bf34fa7aa7eedcbf" }, "images-core-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-core.linux-arm64.tar.gz", - "sha256": "670909f4bbdf4cae8cd2cd289e127b62753a98a0dde17c94f8287c4f04edb631" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-core.linux-arm64.tar.gz", + "sha256": "d52a0baaa2fad9ea031b6a55231167a1cee0135df0d9e7ec456fcdd571db45b4" }, "images-core-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-core.linux-arm64.tar.zst", - "sha256": "581e77dfad0c37c8ec8ce21aa62eb04e484476e25ee955e51f2e541bd41eb83e" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-core.linux-arm64.tar.zst", + "sha256": "276d52eb5d612558fb796d07a78d6a5acd994335be4c5273adc1b1e010feb5bd" }, "images-flannel-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-flannel.linux-amd64.tar.gz", - "sha256": "990ea84921cb04bcc8c4b78e5ef2896a5c1cbc864ca7948af56179f46ea82aed" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-flannel.linux-amd64.tar.gz", + "sha256": "55b6af3347987a16d592b814790724c869663ec015088bc8aaaecc3732ee592e" }, "images-flannel-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-flannel.linux-amd64.tar.zst", - "sha256": "1da33715d88f49ae0451aca366a7831b758800df23cb86b37798fb4e7893bbd5" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-flannel.linux-amd64.tar.zst", + "sha256": "8205dd4dc70b3f2fdb34f4e92c9c46b76ba33ab0953f3852518ee805fdbca905" }, "images-flannel-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-flannel.linux-arm64.tar.gz", - "sha256": "b0736b431a1665687a5744307e62e34d98a739c9f28d1b51bbaa3b6d9db81aa7" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-flannel.linux-arm64.tar.gz", + "sha256": "15ae6906a8177b8b7829edf35f228fa5791e2993941d3335a59bb4ce985ea6fb" }, "images-flannel-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-flannel.linux-arm64.tar.zst", - "sha256": "b3c9944442d8d8070a03349a2c14fea065107fc6fa31a5015d242ada7a11e170" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-flannel.linux-arm64.tar.zst", + "sha256": "d833c1d1e13063b25c3d0013a653b1f137b4a020fd97ccfa5519d251f158c69c" }, "images-harvester-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-harvester.linux-amd64.tar.gz", - "sha256": "c8129804d926d6916dc17840239dc4ed00dd71dfb9431ef3a52b61e5f763fc9d" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-harvester.linux-amd64.tar.gz", + "sha256": "b72890e493a00eec15f2f041ac9285bd29a46f6fabb194e482f374202f3ebd1e" }, "images-harvester-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-harvester.linux-amd64.tar.zst", - "sha256": "b0571922737f3b4794880a6a1ed36aecf863fa99756ac97dc3e47e2ba65d84b7" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-harvester.linux-amd64.tar.zst", + "sha256": "74a4b8fda0882d61859eb6fb0a4783f798f60d211e32dd2e4f75efc4fe8d805c" }, "images-harvester-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-harvester.linux-arm64.tar.gz", - "sha256": "e78cfd46abc07c7330f1a99a2eb1b3b49aab0f4772c027e16e58fbeeabe26936" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-harvester.linux-arm64.tar.gz", + "sha256": "e1f0f5a57dc055fd8f7d49e196dbcd5cb1054dc8015fd2cfd5bc6f9946340320" }, "images-harvester-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-harvester.linux-arm64.tar.zst", - "sha256": "004a123bc2ae8030a6a79f03a6f20d079f43d040b2730b6bfb573a1d105d89fe" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-harvester.linux-arm64.tar.zst", + "sha256": "3d034060ca80754c86ce34519682c5f6f69e28d5bdaedd81d33efbe714824142" }, "images-multus-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-multus.linux-amd64.tar.gz", - "sha256": "f5bc06ea799a91fe0d74929f6882591d8b541d785f91959789b3a17fbcf6cfdd" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-multus.linux-amd64.tar.gz", + "sha256": "884ad55eb6d4d068ee1de58889f17b2a151bf1c18791c67fad22d0a84f16015b" }, "images-multus-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-multus.linux-amd64.tar.zst", - "sha256": "6e5795d1367a04ca096cefaececa0f77b180bd343cd806727ce1712b1d28cc98" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-multus.linux-amd64.tar.zst", + "sha256": "1e107e9b71db928d4328332aeaf9ed760e43960839fbdb2a90499fcf6dbec27e" }, "images-multus-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-multus.linux-arm64.tar.gz", - "sha256": "03d4f0ded6a8da7007c241cace1cc007c2074b92846e52c2a73f97e2d1c3ed82" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-multus.linux-arm64.tar.gz", + "sha256": "548d328ff86381c416dced6fad23f8ceb065d0eacc8815590bb84addf21cf377" }, "images-multus-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-multus.linux-arm64.tar.zst", - "sha256": "4c4b241191ec370c9fc2c77ed2b319d8b094a7f4ca35d3a2a1563643865ae283" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-multus.linux-arm64.tar.zst", + "sha256": "ddd3887b811ded657376843714675a306b2036955d6106e996fd475a92a447ea" }, "images-traefik-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-traefik.linux-amd64.tar.gz", - "sha256": "1febfa1c29687a343e0c6a829100a2e612ba4dbab4050a39d15fdd9706f0cff2" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-traefik.linux-amd64.tar.gz", + "sha256": "18506df7d42dee9215adb3e116c59202578e6ef75809a4abc7b42753bc2c7a90" }, "images-traefik-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-traefik.linux-amd64.tar.zst", - "sha256": "6dabff733c90a3c2c7304bfe0c530cb6a2304c5a585b0de4fc5f46e700c5fcee" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-traefik.linux-amd64.tar.zst", + "sha256": "2734dba5228db1b23c73efef73a7e6a762a3135547a173b769a2060cafb277a2" }, "images-traefik-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-traefik.linux-arm64.tar.gz", - "sha256": "705031339da6ff24d83e3cfcaeca01051055f06f125038cc397d753883f0af91" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-traefik.linux-arm64.tar.gz", + "sha256": "a4034ce89c2fa2dc0761db6453e063b4deb5b63ddade5a99c46a67a4c8e2402b" }, "images-traefik-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-traefik.linux-arm64.tar.zst", - "sha256": "d71e455ce8358e31ed590a7a264d9a3ae212c955df8f36cea314243533fe4d83" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-traefik.linux-arm64.tar.zst", + "sha256": "de2bcbe1cbe5c2e55f2c23961d3f55017db04a99fc03da294f0a4c18860d14c2" }, "images-vsphere-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-vsphere.linux-amd64.tar.gz", - "sha256": "c1ee6654b45f0106e00aa4cd2b423c8b35c79964470419e4c012d963c72ed0f3" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-vsphere.linux-amd64.tar.gz", + "sha256": "7074a9bae6fb6b0fa39099a8e31fe8d97daddc1b677a9bbec62132ecc8a5cf7a" }, "images-vsphere-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.34.10%2Brke2r1/rke2-images-vsphere.linux-amd64.tar.zst", - "sha256": "19afe144421cc7f430adb20a91e64ae91f0fac2ea6b7aeab6b480adee21f4fad" + "url": "https://github.com/rancher/rke2/releases/download/v1.34.11%2Brke2r1/rke2-images-vsphere.linux-amd64.tar.zst", + "sha256": "f5a6fd0224a60693fa23cb917fed3d2c9e8ef80dfb3d18b23b70077c007e9ead" } } diff --git a/pkgs/applications/networking/cluster/rke2/1_34/versions.nix b/pkgs/applications/networking/cluster/rke2/1_34/versions.nix index c622742b62c0..43600d4eee58 100644 --- a/pkgs/applications/networking/cluster/rke2/1_34/versions.nix +++ b/pkgs/applications/networking/cluster/rke2/1_34/versions.nix @@ -1,13 +1,13 @@ { - rke2Version = "1.34.10+rke2r1"; - rke2Commit = "d419f09226d50a4777d348e5c53ea1bce3849b77"; - rke2TarballHash = "sha256-upkkAdlrAkj6RLsIbkNB5KdQylxvb1P47x1AfDcpxfY="; - rke2VendorHash = "sha256-ep2qR8V3V1F7PHj9rU9hOZb0o4GQVUdtGHyAEWgpM2A="; - k8sImageTag = "v1.34.10-rke2r1-build20260723"; - etcdVersion = "v3.6.14-k3s1-build20260723"; + rke2Version = "1.34.11+rke2r1"; + rke2Commit = "2506fee512985398ca0b50d875c3df73069763ce"; + rke2TarballHash = "sha256-jrXi8KZmq+yGSKaVUUsZ+mNKzV1cSTOLPkPFye+OdpI="; + rke2VendorHash = "sha256-AYsoVlykxpyIeVpuXpEY4uKJ3NyzRlOdOiJJl22m8VA="; + k8sImageTag = "v1.34.11-rke2r1-build20260821"; + etcdVersion = "v3.6.14-k3s1-build20260819"; pauseVersion = "3.10.2"; - ccmVersion = "v1.34.9-0.20260610230036-3060dff9c388-build20260710"; - dockerizedVersion = "v1.34.10-rke2r1"; - helmJobVersion = "v0.13.3-build20260727"; + ccmVersion = "v1.34.11-0.20260817193950-75826e8afefa-build20260820"; + dockerizedVersion = "v1.34.11-rke2r1"; + helmJobVersion = "v0.13.3-build20260820"; imagesVersions = with builtins; fromJSON (readFile ./images-versions.json); } From 09578dbf2e57558ed2b4cff9766e2496e5753f5b Mon Sep 17 00:00:00 2001 From: rorosen Date: Wed, 2 Sep 2026 23:11:23 +0200 Subject: [PATCH 07/65] rke2_1_35: 1.35.7+rke2r2 -> 1.35.8+rke2r1 Attention: This release upgrades Traefik chart to v40.x which includes a breaking change for the ingress-nginx migration: the provider name changes from kubernetesIngressNginx to kubernetesIngressNGINX. Check https://github.com/traefik/traefik-helm-chart/releases/tag/v40.0.0 for more details https://github.com/rancher/rke2/releases/tag/v1.35.8%2Brke2r1 (cherry picked from commit 1a6fb0cb3083665b5afc29bbc7ba1bde7395f4db) --- .../cluster/rke2/1_35/images-versions.json | 134 +++++++++--------- .../networking/cluster/rke2/1_35/versions.nix | 18 +-- 2 files changed, 76 insertions(+), 76 deletions(-) diff --git a/pkgs/applications/networking/cluster/rke2/1_35/images-versions.json b/pkgs/applications/networking/cluster/rke2/1_35/images-versions.json index a2d473fde13b..6c700e380bdf 100644 --- a/pkgs/applications/networking/cluster/rke2/1_35/images-versions.json +++ b/pkgs/applications/networking/cluster/rke2/1_35/images-versions.json @@ -1,138 +1,138 @@ { "images-calico-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-calico.linux-amd64.tar.gz", - "sha256": "91e39707c7be99f988db35d2c9a203c2f7ccdfd8419c1a7e7cf9c869a44e82e0" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-calico.linux-amd64.tar.gz", + "sha256": "5f4fc4e757864e6e373815b68fcd579f845bff584ee0bc9f0dc97f9e260717d9" }, "images-calico-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-calico.linux-amd64.tar.zst", - "sha256": "263eef9bc34b84d25f69d871c5c6b0d968f57b128501c56cd75be76fcd34a5ff" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-calico.linux-amd64.tar.zst", + "sha256": "87344e7c6eea1a2fe1ca029f307d04caece4fe40e7c50fb1ab16fa1d26b23f6b" }, "images-calico-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-calico.linux-arm64.tar.gz", - "sha256": "fb88b8044e1143eb65d6d167917c3c5effb0ffbdc6dbc3d5bb87f7b9d73d91d5" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-calico.linux-arm64.tar.gz", + "sha256": "5ac774802ca0ac3471b2ae2a75e00c1f7a76d32df4e5a3bc18ba717ab2fcd69e" }, "images-calico-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-calico.linux-arm64.tar.zst", - "sha256": "257222e58aa7429c53edc52f647a2c6ce3932b491b2943c3e726afe91219614f" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-calico.linux-arm64.tar.zst", + "sha256": "e21343847eeca388e8dcdf4d088578f232aba7a51e5c104f155d6a143a18111a" }, "images-canal-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-canal.linux-amd64.tar.gz", - "sha256": "af9fe952ce6dcfb1192d40ca01d0d9a7f29477fef21bdae96490c2192f2ded74" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-canal.linux-amd64.tar.gz", + "sha256": "6f918827f8ab8d99573de7671649ccb405fe1826ebb9f4d3257e94468225b46d" }, "images-canal-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-canal.linux-amd64.tar.zst", - "sha256": "9e89572eb2a5958b456dc1ca418bdbdbd694a176dd2cf41e6df55fe0488156ba" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-canal.linux-amd64.tar.zst", + "sha256": "4359b651bfdec8f3bcc01b351b33a55ff21f06b18a767366db6f3800d5750871" }, "images-canal-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-canal.linux-arm64.tar.gz", - "sha256": "b52d98c63d46a8b908bbe3fa2a075fb5b7ea4dbb4325f3a9de63dcc4272f04ff" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-canal.linux-arm64.tar.gz", + "sha256": "aad7a91c4fdeb798d9d5f045536901269a07fb97fea2e87edf2d0c7959d00e5d" }, "images-canal-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-canal.linux-arm64.tar.zst", - "sha256": "3ce45e29db6ef82e475477dd1e4e58049917ffaef7e21b1d7c87b78a10864c48" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-canal.linux-arm64.tar.zst", + "sha256": "fdb78292756a38d2136fa2be014d77f29b06d5ffbdfe8e379d9688614abf89e2" }, "images-cilium-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-cilium.linux-amd64.tar.gz", - "sha256": "f943fd65168368d4b76ede3d809daad8733126df8d1bb809cf841b50b0402e94" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-cilium.linux-amd64.tar.gz", + "sha256": "2660b7803f26855083b72461ecea9489ab93d3f148ef38f0cadbf46555cc3799" }, "images-cilium-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-cilium.linux-amd64.tar.zst", - "sha256": "dc9cb3d8af8db6a0a0312e3be3e31b1fa44a20731b8d3f7a1e30e8481940c12c" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-cilium.linux-amd64.tar.zst", + "sha256": "e474738e8dacad29c2b703e1745ad92ff746d1c2b10eecae726aedaffb904c72" }, "images-cilium-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-cilium.linux-arm64.tar.gz", - "sha256": "bcfee32f8a9bc0c62ad2b747f4fb36bffbdb8cee5e6d4f93827325514ebd9f7d" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-cilium.linux-arm64.tar.gz", + "sha256": "0fec5acb8c9f5bd847a95b39175a901315228b98db1b4bbcfc766863cf10e282" }, "images-cilium-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-cilium.linux-arm64.tar.zst", - "sha256": "61d4038542e15892ecb122d99cc22226fad4cf4877e6bba9d49406d514624a8d" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-cilium.linux-arm64.tar.zst", + "sha256": "1a1e4fc3017a203d1b1098aaee30a2dcf2afd1059b88ad1d4772531c8e4f97ad" }, "images-core-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-core.linux-amd64.tar.gz", - "sha256": "606d9e6960cf1496668eab999a9bec2eee052027e90a750e2c99b4f185382c4a" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-core.linux-amd64.tar.gz", + "sha256": "b42c081fd85474f8f994089de514ccc9930d491671ed4dd2e25b65be3a3b1e02" }, "images-core-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-core.linux-amd64.tar.zst", - "sha256": "f7d4aad521229dfa820a3dea2365582681aa1aa4a076bd02122b0ac0eb79e265" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-core.linux-amd64.tar.zst", + "sha256": "1fe8f2b57142713b545c94586833088eed92fdd2782046bd9e71fff0e7aafa93" }, "images-core-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-core.linux-arm64.tar.gz", - "sha256": "5d3ee44b2d6e3d50258b5f99fdc8356dd7b1eb00198fee429bebe4881375861c" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-core.linux-arm64.tar.gz", + "sha256": "4cc17307f939be90df7a978045d51247f39e7bb4e8ad491b0735eebd9c92a64d" }, "images-core-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-core.linux-arm64.tar.zst", - "sha256": "87fe42d4052ad62cf25d0cd6bd23a9e8e2adf36961583c25a48d10dac8f39d4e" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-core.linux-arm64.tar.zst", + "sha256": "85116f76f82643bd13ddf09a69a00aaa16e73d7b94be41c20cf69ef403e314da" }, "images-flannel-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-flannel.linux-amd64.tar.gz", - "sha256": "eda0f523a6b5021bf9a59f7e9e9c0d564f472c22615e83f101ea68027478007c" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-flannel.linux-amd64.tar.gz", + "sha256": "4bd430fdf2faa193a584fb0b083b937d297506515117c149623a07eab373f370" }, "images-flannel-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-flannel.linux-amd64.tar.zst", - "sha256": "1da33715d88f49ae0451aca366a7831b758800df23cb86b37798fb4e7893bbd5" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-flannel.linux-amd64.tar.zst", + "sha256": "775d3fc9f321380e01810e13c66d9c974307f70ca18af9bec2d75a86eb5c4d33" }, "images-flannel-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-flannel.linux-arm64.tar.gz", - "sha256": "49a0914944127d296890d86686642392f6ceb7d220d05412954aea136d019227" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-flannel.linux-arm64.tar.gz", + "sha256": "24a5c8e92a3743ea9d0a776e5011ed41eb3885e3f1c85381ca794abb656e966a" }, "images-flannel-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-flannel.linux-arm64.tar.zst", - "sha256": "b3c9944442d8d8070a03349a2c14fea065107fc6fa31a5015d242ada7a11e170" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-flannel.linux-arm64.tar.zst", + "sha256": "d833c1d1e13063b25c3d0013a653b1f137b4a020fd97ccfa5519d251f158c69c" }, "images-harvester-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-harvester.linux-amd64.tar.gz", - "sha256": "dc8586e214ac70a896fa4aab6392ea20e44b0ba078f059fea7470c055558682d" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-harvester.linux-amd64.tar.gz", + "sha256": "006d72a46bfe1e703c16bab8740a961ad965f673eff98d4625006294f7294a3a" }, "images-harvester-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-harvester.linux-amd64.tar.zst", - "sha256": "fcb029dd456d0a9137714aae73d0b3edcbd400955425a5b9df1c8e7cedc06154" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-harvester.linux-amd64.tar.zst", + "sha256": "20c0651a945543f61115f862288baf4ea8c7dd79973dfab6146a4883ea83f15e" }, "images-harvester-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-harvester.linux-arm64.tar.gz", - "sha256": "3b543d0099c5e4b42c5a8db5610a620e25f554027fea964ad31f3011125d81ed" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-harvester.linux-arm64.tar.gz", + "sha256": "b0436e330f1c898ef63d12160eeadb49db725c809ad3046d37f67121a3311a45" }, "images-harvester-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-harvester.linux-arm64.tar.zst", - "sha256": "b55b3c2f9c36a3a9907bf7338eaf83803cb8a851ab18475fa3f9b31262f8c3d2" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-harvester.linux-arm64.tar.zst", + "sha256": "8c2809abe3fad464db1d0c24549f6278ddfdf362c6180d33f612003196f3da8f" }, "images-multus-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-multus.linux-amd64.tar.gz", - "sha256": "712a02ff2e07b34ac0f720126d235b4cb86eacac9ede923922f43db696890280" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-multus.linux-amd64.tar.gz", + "sha256": "77c59e9f0c7cb58eef1f7f2dd505bb71f432433ee11b52d28c7db3dc24c2af5e" }, "images-multus-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-multus.linux-amd64.tar.zst", - "sha256": "d29151e7c0fc86483bea1e146ea3e0186a6356f46757849fa67bd4e372d11268" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-multus.linux-amd64.tar.zst", + "sha256": "392fb8a1c17ffe909f8a17d05c4e624bae74a73fde220bc19c8d105f51f30b27" }, "images-multus-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-multus.linux-arm64.tar.gz", - "sha256": "e13eddf16db1f7d1ccdf98b12df763bdebe89c10201ab1e824038406464e0706" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-multus.linux-arm64.tar.gz", + "sha256": "ae44bccc910e9978d53583c139ec9d6c5ca5c3a4210f91228e3e9bc341a16f14" }, "images-multus-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-multus.linux-arm64.tar.zst", + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-multus.linux-arm64.tar.zst", "sha256": "4c17856eccd8855f8dc5f9b2d34b8d24e2f650c6894f19d6bb3f0c5a7c46f052" }, "images-traefik-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-traefik.linux-amd64.tar.gz", - "sha256": "acf5461ddaf78e88fd10d1a8897836298d68f3b1a765e1c4ef02e0b5701d7e55" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-traefik.linux-amd64.tar.gz", + "sha256": "e711fb5cf94a24b67febd46d9ea3ea477d95212adbefa43056e25685aacd12ec" }, "images-traefik-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-traefik.linux-amd64.tar.zst", - "sha256": "6dabff733c90a3c2c7304bfe0c530cb6a2304c5a585b0de4fc5f46e700c5fcee" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-traefik.linux-amd64.tar.zst", + "sha256": "2734dba5228db1b23c73efef73a7e6a762a3135547a173b769a2060cafb277a2" }, "images-traefik-linux-arm64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-traefik.linux-arm64.tar.gz", - "sha256": "f52d58a9d3926ee719ddd26f20c683b5584c6b5debdca085224d492ff7cf959b" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-traefik.linux-arm64.tar.gz", + "sha256": "a4034ce89c2fa2dc0761db6453e063b4deb5b63ddade5a99c46a67a4c8e2402b" }, "images-traefik-linux-arm64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-traefik.linux-arm64.tar.zst", - "sha256": "d71e455ce8358e31ed590a7a264d9a3ae212c955df8f36cea314243533fe4d83" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-traefik.linux-arm64.tar.zst", + "sha256": "de2bcbe1cbe5c2e55f2c23961d3f55017db04a99fc03da294f0a4c18860d14c2" }, "images-vsphere-linux-amd64-tar-gz": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-vsphere.linux-amd64.tar.gz", - "sha256": "9ccc00fd7c728f9db168a70c8ee25875c7122e101adcd089876345f8963f7331" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-vsphere.linux-amd64.tar.gz", + "sha256": "bcec731e66b1300ca93a1b6786af5fc49f2f749d6f8de92fd20271c4235b0e75" }, "images-vsphere-linux-amd64-tar-zst": { - "url": "https://github.com/rancher/rke2/releases/download/v1.35.7%2Brke2r1/rke2-images-vsphere.linux-amd64.tar.zst", - "sha256": "75becdf7144effe5894eef6423f2e6ea8c8549bfdf315bdff1a2cb64c41c2b2d" + "url": "https://github.com/rancher/rke2/releases/download/v1.35.8%2Brke2r1/rke2-images-vsphere.linux-amd64.tar.zst", + "sha256": "13d4620f5dbb820ad09a910fdb6186db9c9ba0a51e335e6fe0f27b2fbd7d9416" } } diff --git a/pkgs/applications/networking/cluster/rke2/1_35/versions.nix b/pkgs/applications/networking/cluster/rke2/1_35/versions.nix index 5f2fd768ae95..00318d81c296 100644 --- a/pkgs/applications/networking/cluster/rke2/1_35/versions.nix +++ b/pkgs/applications/networking/cluster/rke2/1_35/versions.nix @@ -1,13 +1,13 @@ { - rke2Version = "1.35.7+rke2r1"; - rke2Commit = "382a8b31a8fd78e376ab6f02c4bb0ec5592aada2"; - rke2TarballHash = "sha256-+GGX3vfd3JwT+i1ilNx1K4CJV9qlTy9kuOfvA9k21a4="; - rke2VendorHash = "sha256-OR3BT9/n/LDn9Ngt0/eF2rNfvJmShvTVcWVBVYy2a+Q="; - k8sImageTag = "v1.35.7-rke2r1-build20260723"; - etcdVersion = "v3.6.14-k3s1-build20260723"; + rke2Version = "1.35.8+rke2r1"; + rke2Commit = "0fec82ea2fa6c7b25b7a3fe3cd990fbecc07e1bb"; + rke2TarballHash = "sha256-WtdKeJ/AbUJaY+ovYZAEpDpWNXYFvJwkPf2V533cIn8="; + rke2VendorHash = "sha256-+OaVavHIG6Xx3bOBi90PXKI28dSQWtKHV8A+7EbbF7E="; + k8sImageTag = "v1.35.8-rke2r1-build20260821"; + etcdVersion = "v3.6.14-k3s1-build20260819"; pauseVersion = "3.10.2"; - ccmVersion = "v1.35.6-0.20260610221957-158346759a70-build20260710"; - dockerizedVersion = "v1.35.7-rke2r1"; - helmJobVersion = "v0.13.3-build20260727"; + ccmVersion = "v1.35.8-0.20260817193936-20fc9c33a412-build20260820"; + dockerizedVersion = "v1.35.8-rke2r1"; + helmJobVersion = "v0.13.3-build20260820"; imagesVersions = with builtins; fromJSON (readFile ./images-versions.json); } From 8bc312cfe0a154d146be1a1a79bd9b1f98b8d6d5 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Fri, 18 Sep 2026 00:54:03 +0000 Subject: [PATCH 08/65] mago: 1.47.6 -> 1.49.0 (cherry picked from commit 52482aa359912fe39eab64d3f7d7c6bbdc44b15d) --- pkgs/by-name/ma/mago/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ma/mago/package.nix b/pkgs/by-name/ma/mago/package.nix index 0ebefc97a80c..310a885c7fc6 100644 --- a/pkgs/by-name/ma/mago/package.nix +++ b/pkgs/by-name/ma/mago/package.nix @@ -11,17 +11,17 @@ rustPackages_1_97.rustPlatform.buildRustPackage (finalAttrs: { pname = "mago"; - version = "1.47.6"; + version = "1.49.0"; src = fetchFromGitHub { owner = "carthage-software"; repo = "mago"; tag = finalAttrs.version; - hash = "sha256-stb+grYjtflzM90qCK8S/uIQVnOuenhIsQlN+zBhm0g="; + hash = "sha256-1DTVDv87OBtOEU6U53IWrTw7i2JN8TZJYAQepwc2ek8="; forceFetchGit = true; # Does not download all files otherwise }; - cargoHash = "sha256-f+EjMcImL5hwN06/hUn0Y3jlk1vxcxqqNwyrpGxL3T8="; + cargoHash = "sha256-yhMghVhY7TxFUYwbGVC5QwFyTAqakbYMq7jPSk88PIM="; env = { # Get openssl-sys to use pkg-config From d537350dbfb671cbd636ebdea678b48091bb43b8 Mon Sep 17 00:00:00 2001 From: Ryan Omasta Date: Fri, 25 Sep 2026 16:01:01 -0600 Subject: [PATCH 09/65] vencord: 1.15.6 -> 1.15.7 Diff: https://github.com/Vendicated/Vencord/compare/v1.15.6...v1.15.7 (cherry picked from commit 841c388435eebb4c0d8fec2e90c097bb25a50149) --- pkgs/by-name/ve/vencord/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ve/vencord/package.nix b/pkgs/by-name/ve/vencord/package.nix index e6af85863841..2931ebd39baa 100644 --- a/pkgs/by-name/ve/vencord/package.nix +++ b/pkgs/by-name/ve/vencord/package.nix @@ -22,13 +22,13 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "vencord"; - version = "1.15.6"; + version = "1.15.7"; src = fetchFromGitHub { owner = "Vendicated"; repo = "Vencord"; tag = "v${finalAttrs.version}"; - hash = "sha256-bsTw8F6bBJFZWzOYV84VMtrMMj0fHId9BKCxrFUQYxM="; + hash = "sha256-Ioj8Ng5dpO54R298LUZ1EB91PTESIWKlWPn3B/cKNrg="; }; patches = [ ./fix-deps.patch ]; From 32eb6c68984ce3daa2b505d10ca1bcb4430cfa96 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 8 Aug 2026 20:13:19 +0000 Subject: [PATCH 10/65] flake-checker: 0.2.13 -> 0.2.14 (cherry picked from commit 7457048625d53d344dd743e04d22dcaa609091d2) --- pkgs/by-name/fl/flake-checker/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/fl/flake-checker/package.nix b/pkgs/by-name/fl/flake-checker/package.nix index c7617b718e06..0ad83033f848 100644 --- a/pkgs/by-name/fl/flake-checker/package.nix +++ b/pkgs/by-name/fl/flake-checker/package.nix @@ -6,16 +6,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "flake-checker"; - version = "0.2.13"; + version = "0.2.14"; src = fetchFromGitHub { owner = "DeterminateSystems"; repo = "flake-checker"; rev = "v${finalAttrs.version}"; - hash = "sha256-QE/Druzo/EDiuh7Vb+kipPgUxkIRPLsHFMSpSRMFIVw="; + hash = "sha256-MUbF2mOrcoODe26j0OaXHLk73yFhB+0/d2yPaeBEi6M="; }; - cargoHash = "sha256-kKEHYKXtccXRsa1cON0oMHOWagi3mVdnf3pEgkoNn/k="; + cargoHash = "sha256-toC9qMq06Grh6NJZZUb7cbQdNeI7lwqDqbJO85a3zwk="; meta = { description = "Health checks for your Nix flakes"; From 753b7b31cd878e5c6900a8e8e28b4abd1e1e39d1 Mon Sep 17 00:00:00 2001 From: MithicSpirit Date: Fri, 25 Sep 2026 13:50:37 -0400 Subject: [PATCH 11/65] xwayland-satellite: add mithicspirit as maintainer (cherry picked from commit 9bafacb7b2ff8c77a120e1ab434eb16f12c63879) --- pkgs/by-name/xw/xwayland-satellite/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/xw/xwayland-satellite/package.nix b/pkgs/by-name/xw/xwayland-satellite/package.nix index 55440713e509..54576ee4f431 100644 --- a/pkgs/by-name/xw/xwayland-satellite/package.nix +++ b/pkgs/by-name/xw/xwayland-satellite/package.nix @@ -78,6 +78,7 @@ rustPlatform.buildRustPackage (finalAttrs: { if-loop69420 sodiboo getchoo + mithicspirit ]; mainProgram = "xwayland-satellite"; platforms = lib.platforms.linux; From 86d2b5c1658a87929783909f871ef2d036544dfc Mon Sep 17 00:00:00 2001 From: MithicSpirit Date: Wed, 23 Sep 2026 23:55:01 -0400 Subject: [PATCH 12/65] xwayland-satellite: 0.8.2 -> 0.8.3 https://github.com/Supreeeme/xwayland-satellite/releases/tag/v0.8.3 (cherry picked from commit c24ac651a424faa8468252a107f3a911123b9cfc) --- pkgs/by-name/xw/xwayland-satellite/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/xw/xwayland-satellite/package.nix b/pkgs/by-name/xw/xwayland-satellite/package.nix index 54576ee4f431..182881c1d5ce 100644 --- a/pkgs/by-name/xw/xwayland-satellite/package.nix +++ b/pkgs/by-name/xw/xwayland-satellite/package.nix @@ -13,13 +13,13 @@ }: rustPlatform.buildRustPackage (finalAttrs: { pname = "xwayland-satellite"; - version = "0.8.2"; + version = "0.8.3"; src = fetchFromGitHub { owner = "Supreeeme"; repo = "xwayland-satellite"; tag = "v${finalAttrs.version}"; - hash = "sha256-Mb7jpqnrcYCfNSItIkkHpuR3YxWFxPuIBfcwNKlRBkk="; + hash = "sha256-eFEjCCniMCKeWU0PcZNv+tDYe08SLFPjRplyPY8OFt4="; }; postPatch = '' @@ -27,7 +27,7 @@ rustPlatform.buildRustPackage (finalAttrs: { --replace-fail '/usr/local/bin' "$out/bin" ''; - cargoHash = "sha256-Saa3SRsQuY6u6pfBGezaEExOt/ReblnrG7pAXjA6Dk8="; + cargoHash = "sha256-gMGFvnbxM3hD5fmkSimaFd87GEf6BXFe/MGjoS6VNVU="; nativeBuildInputs = [ installShellFiles From e66128c625727b22a33596e7d983e2de2193d7e7 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 7 Jun 2026 07:48:59 +0000 Subject: [PATCH 13/65] cockpit: 362 -> 363.1 (cherry picked from commit d9f4ce3f13267cfd6bf86fad296e13a494f39cb9) --- pkgs/by-name/co/cockpit/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit/package.nix b/pkgs/by-name/co/cockpit/package.nix index a9cb60d51d3e..298cffd3fc6d 100644 --- a/pkgs/by-name/co/cockpit/package.nix +++ b/pkgs/by-name/co/cockpit/package.nix @@ -54,13 +54,13 @@ in stdenv.mkDerivation (finalAttrs: { pname = "cockpit"; - version = "362"; + version = "363.1"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit"; tag = finalAttrs.version; - hash = "sha256-Aos7jQ9T8q/ZYZZGXZrSQzTWXXIrAcu3OorJ/Utkq28="; + hash = "sha256-w9+S3qc95gcNvVLGMdWlRxKXhNjZbcgKSGxlSvNJp9o="; fetchSubmodules = true; }; From db2be4d61600740b2146152abd62b12b1b457d8d Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 25 Jun 2026 02:09:17 +0000 Subject: [PATCH 14/65] cockpit: 363.1 -> 364 (cherry picked from commit d54c86a323c49f967ea780b527f18e4d53992abc) --- pkgs/by-name/co/cockpit/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit/package.nix b/pkgs/by-name/co/cockpit/package.nix index 298cffd3fc6d..1bf8410f5952 100644 --- a/pkgs/by-name/co/cockpit/package.nix +++ b/pkgs/by-name/co/cockpit/package.nix @@ -54,13 +54,13 @@ in stdenv.mkDerivation (finalAttrs: { pname = "cockpit"; - version = "363.1"; + version = "364"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit"; tag = finalAttrs.version; - hash = "sha256-w9+S3qc95gcNvVLGMdWlRxKXhNjZbcgKSGxlSvNJp9o="; + hash = "sha256-TAX0N6ZQWGr17GpyJS23Q5ES3USU2hxSiI867n6G17I="; fetchSubmodules = true; }; From 2efa60fe8677a68ba69da433ad289155c06c8622 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 30 Jul 2026 16:17:16 +0000 Subject: [PATCH 15/65] cockpit: 364 -> 365 (cherry picked from commit ca41f7190b45aa6a21ae01ec7ed74ac68a12d9b3) --- pkgs/by-name/co/cockpit/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit/package.nix b/pkgs/by-name/co/cockpit/package.nix index 1bf8410f5952..177dd2e1200c 100644 --- a/pkgs/by-name/co/cockpit/package.nix +++ b/pkgs/by-name/co/cockpit/package.nix @@ -54,13 +54,13 @@ in stdenv.mkDerivation (finalAttrs: { pname = "cockpit"; - version = "364"; + version = "365"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit"; tag = finalAttrs.version; - hash = "sha256-TAX0N6ZQWGr17GpyJS23Q5ES3USU2hxSiI867n6G17I="; + hash = "sha256-xOIv+NAO3xs74YQpnyQlU6HyptQ4ZmCt4M92195zI6M="; fetchSubmodules = true; }; From 656feb992c161b9ba2e6e7b919d936d162e4e9e1 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 17 Aug 2026 10:29:22 +0000 Subject: [PATCH 16/65] cockpit: 365 -> 366 (cherry picked from commit 76df11ef332df6a1cd7357025ffd5a7c0ff13c05) --- pkgs/by-name/co/cockpit/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit/package.nix b/pkgs/by-name/co/cockpit/package.nix index 177dd2e1200c..75d89cb1a158 100644 --- a/pkgs/by-name/co/cockpit/package.nix +++ b/pkgs/by-name/co/cockpit/package.nix @@ -54,13 +54,13 @@ in stdenv.mkDerivation (finalAttrs: { pname = "cockpit"; - version = "365"; + version = "366"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit"; tag = finalAttrs.version; - hash = "sha256-xOIv+NAO3xs74YQpnyQlU6HyptQ4ZmCt4M92195zI6M="; + hash = "sha256-WyV6I8u83ETVLmjJ7Mjh0D1cLY+RQkxGAIMTkRfy3T0="; fetchSubmodules = true; }; From e2fd088a32ef5e804597c85c20950f0c505c0a02 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 6 Sep 2026 05:03:03 +0000 Subject: [PATCH 17/65] cockpit: 366 -> 367 (cherry picked from commit edcf7f6b56c1aeeb6054fe740c7b9ae244e6281e) --- pkgs/by-name/co/cockpit/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit/package.nix b/pkgs/by-name/co/cockpit/package.nix index 75d89cb1a158..f1069d6d4de8 100644 --- a/pkgs/by-name/co/cockpit/package.nix +++ b/pkgs/by-name/co/cockpit/package.nix @@ -54,13 +54,13 @@ in stdenv.mkDerivation (finalAttrs: { pname = "cockpit"; - version = "366"; + version = "367"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit"; tag = finalAttrs.version; - hash = "sha256-WyV6I8u83ETVLmjJ7Mjh0D1cLY+RQkxGAIMTkRfy3T0="; + hash = "sha256-TWB39cnhU9zgr/FP4FfXEzdMEnjXOs/HamYjSXLVadY="; fetchSubmodules = true; }; From 15aa2b6fea162abc99b66e93948e0a738d141d5c Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 27 Sep 2026 11:12:11 +0000 Subject: [PATCH 18/65] cockpit: 367 -> 368 (cherry picked from commit 62e7db8d71b46585019abbc0ee51b30a5f27b24c) --- pkgs/by-name/co/cockpit/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit/package.nix b/pkgs/by-name/co/cockpit/package.nix index f1069d6d4de8..f65fd0ac7ce4 100644 --- a/pkgs/by-name/co/cockpit/package.nix +++ b/pkgs/by-name/co/cockpit/package.nix @@ -54,13 +54,13 @@ in stdenv.mkDerivation (finalAttrs: { pname = "cockpit"; - version = "367"; + version = "368"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit"; tag = finalAttrs.version; - hash = "sha256-TWB39cnhU9zgr/FP4FfXEzdMEnjXOs/HamYjSXLVadY="; + hash = "sha256-2bFQwK5L0S84nLSkUeHmbNgBkjBJIxR88t/21h5jmps="; fetchSubmodules = true; }; From 9a00d019266c919cb52bcec99a0af9ae53bb054d Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Fri, 10 Jul 2026 01:13:11 +0200 Subject: [PATCH 19/65] nixos/tests/matrix-continuwuity: refactor to mautrix library This is because [matrix-nio](https://github.com/matrix-nio/matrix-nio) is pretty dead, and does not seem to like the new continuwuity version with the new default v12 rooms. Mautrix is actively maintained and a good fit for basic testing of the client-server connection on NixOS. (cherry picked from commit fe3454e664e7c550ad7eecbd51a34cc0b0195f0c) --- nixos/tests/matrix/continuwuity.nix | 69 ++++++++++++++++------------- 1 file changed, 37 insertions(+), 32 deletions(-) diff --git a/nixos/tests/matrix/continuwuity.nix b/nixos/tests/matrix/continuwuity.nix index cf07293b1ab0..91571301661a 100644 --- a/nixos/tests/matrix/continuwuity.nix +++ b/nixos/tests/matrix/continuwuity.nix @@ -20,61 +20,66 @@ in }; networking.firewall.allowedTCPPorts = [ 6167 ]; }; + client = { pkgs, ... }: { environment.systemPackages = [ - (pkgs.writers.writePython3Bin "do_test" { libraries = [ pkgs.python3Packages.matrix-nio ]; } '' + (pkgs.writers.writePython3Bin "do_test" { libraries = [ pkgs.python3Packages.mautrix ]; } '' import asyncio - import nio + + from mautrix.client import Client + from mautrix.types import EventType, RoomFilter async def main() -> None: # Connect to continuwuity - client = nio.AsyncClient("http://continuwuity:6167", "${user}") + client = Client( + mxid="@${user}:${name}", + base_url="http://continuwuity:6167", + ) # Log in as user alice - response = await client.login("${pass}") + await client.login(password="${pass}") # Create a new room - response = await client.room_create(federate=False) - print("Matrix room create response:", response) - assert isinstance(response, nio.RoomCreateResponse) - room_id = response.room_id + room_id = await client.create_room() + print("Created room:", room_id) # Join the room - response = await client.join(room_id) - print("Matrix join response:", response) - assert isinstance(response, nio.JoinResponse) + await client.join_room_by_id(room_id) + print("Joined room") # Send a message to the room - response = await client.room_send( - room_id=room_id, - message_type="m.room.message", - content={ - "msgtype": "m.text", - "body": "Hello continuwuity!" - } - ) - print("Matrix room send response:", response) - assert isinstance(response, nio.RoomSendResponse) + received = asyncio.Event() + msg = "Hello continuwuity!" - # Sync responses - response = await client.sync(timeout=30000) - print("Matrix sync response:", response) - assert isinstance(response, nio.SyncResponse) + async def on_message(evt): + if ( + evt.room_id != room_id + or evt.sender != client.mxid + or evt.type != EventType.ROOM_MESSAGE + ): + return - # Check the message was received by continuwuity - last_message = response.rooms.join[room_id].timeline.events[-1].body - assert last_message == "Hello continuwuity!" + assert evt.content.body == msg + received.set() + + client.add_event_handler(EventType.ROOM_MESSAGE, on_message) + sync_task = client.start(RoomFilter(rooms=[room_id])) + + await client.send_text(room_id, msg) + + # Sync until message is received + await asyncio.wait_for(received.wait(), timeout=30) # Leave the room - response = await client.room_leave(room_id) - print("Matrix room leave response:", response) - assert isinstance(response, nio.RoomLeaveResponse) + await client.leave_room(room_id) + print("Left room") # Close the client - await client.close() + client.stop() + await sync_task if __name__ == "__main__": From 0afe6913a8909bd19220ab8f6819ebb157f421f6 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Fri, 10 Jul 2026 01:37:53 +0200 Subject: [PATCH 20/65] nixos/tests/matrix-continuwuity: add bartoostveen as a maintainer (cherry picked from commit 91bc748a73e6b14f74e69af75c6701c664314029) --- nixos/tests/matrix/continuwuity.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/tests/matrix/continuwuity.nix b/nixos/tests/matrix/continuwuity.nix index 91571301661a..80c46fb21362 100644 --- a/nixos/tests/matrix/continuwuity.nix +++ b/nixos/tests/matrix/continuwuity.nix @@ -101,6 +101,7 @@ in ''; meta.maintainers = with lib.maintainers; [ + bartoostveen nyabinary snaki ]; From 08dee96fff2d4e8e7462b7ba8a86f8459e6fe44f Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Mon, 28 Sep 2026 09:42:53 +0200 Subject: [PATCH 21/65] matrix-continuwuity_latest: init from matrix-continuwuity, matrix-continuwuity: mark as vulnerable Not going for an override here because this is cleaner, as to avoid more divergence from master. Not-cherry-picked-because: avoiding breaking changes on master for security backport --- .../ma/matrix-continuwuity/package.nix | 13 + .../0001-fix-backport-SEC10.patch | 250 ++++++++++++++++++ .../0002-fix-backport-SEC28.patch | 37 +++ .../0003-fix-backport-SEC26.patch | 132 +++++++++ .../ma/matrix-continuwuity_latest/package.nix | 104 ++++++++ 5 files changed, 536 insertions(+) create mode 100644 pkgs/by-name/ma/matrix-continuwuity_latest/0001-fix-backport-SEC10.patch create mode 100644 pkgs/by-name/ma/matrix-continuwuity_latest/0002-fix-backport-SEC28.patch create mode 100644 pkgs/by-name/ma/matrix-continuwuity_latest/0003-fix-backport-SEC26.patch create mode 100644 pkgs/by-name/ma/matrix-continuwuity_latest/package.nix diff --git a/pkgs/by-name/ma/matrix-continuwuity/package.nix b/pkgs/by-name/ma/matrix-continuwuity/package.nix index bb1bd56c34b8..f1b055b21d6a 100644 --- a/pkgs/by-name/ma/matrix-continuwuity/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity/package.nix @@ -100,5 +100,18 @@ rustPlatform.buildRustPackage (finalAttrs: { ]; # Not a typo, continuwuity is a drop-in replacement for conduwuit. mainProgram = "conduwuit"; + knownVulnerabilities = [ + '' + Continuwuity 0.5.10 can no longer be securely ran, as it contains a critical security-related bug that is currently embargoed at the time of writing. + Continuwuity internally tracks this as SEC8, see also: https://forgejo.ellis.link/continuwuation/continuwuity/releases/tag/v26.9.1 + + The latest version of Continuwuity has been moved to `matrix-continuwuity_latest` as to not introduce breaking changes. + It is highly advisable to upgrade to this version as fast as possible. When deploying Continuwuity using the NixOS module, you may do so using: + + `services.matrix-continuwuity.package = pkgs.matrix-continuwuity_latest`. + + The most notable breaking change of the 26.x release is the removal of LDAP. + '' + ]; }; }) diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/0001-fix-backport-SEC10.patch b/pkgs/by-name/ma/matrix-continuwuity_latest/0001-fix-backport-SEC10.patch new file mode 100644 index 000000000000..042b4b12aaf2 --- /dev/null +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/0001-fix-backport-SEC10.patch @@ -0,0 +1,250 @@ +From d25c12c343b53ea90025c11808700ad6267f4e59 Mon Sep 17 00:00:00 2001 +From: timedout +Date: Wed, 29 Jul 2026 16:38:05 +0100 +Subject: [PATCH] fix(backport): SEC10 + +Reviewed-By: Ginger +Co-Authored-By: Erwan Leboucher + +(cherry picked from commit 71016a0d7f79289f3bf8d7816c1fec3c85c43153) +--- + src/api/client/sync/v5.rs | 133 +++++++++++++++++++++++++++++++------- + 1 file changed, 111 insertions(+), 22 deletions(-) + +diff --git a/src/api/client/sync/v5.rs b/src/api/client/sync/v5.rs +index 183f3aaac..03a4c1972 100644 +--- a/src/api/client/sync/v5.rs ++++ b/src/api/client/sync/v5.rs +@@ -1,6 +1,6 @@ + use std::{ + cmp::{self, Ordering}, +- collections::{BTreeMap, BTreeSet, HashMap, HashSet, VecDeque}, ++ collections::{BTreeMap, BTreeSet, HashMap, HashSet}, + ops::Deref, + time::Duration, + }; +@@ -28,6 +28,7 @@ + use ruma::{ + DeviceId, OwnedEventId, OwnedRoomId, RoomId, UInt, UserId, + api::client::sync::sync_events::{self, DeviceLists, UnreadNotificationsCount}, ++ assign, + directory::RoomTypeFilter, + events::{ + AnyRawAccountDataEvent, AnySyncEphemeralRoomEvent, AnySyncStateEvent, StateEventType, +@@ -139,6 +140,13 @@ pub(crate) async fn sync_events_v5_route( + let (all_joined_rooms, all_invited_rooms, all_knocked_rooms) = + join3(all_joined_rooms, all_invited_rooms, all_knocked_rooms).await; + ++ let allowed_rooms: BTreeSet = all_joined_rooms ++ .iter() ++ .chain(all_invited_rooms.iter()) ++ .chain(all_knocked_rooms.iter()) ++ .cloned() ++ .collect(); ++ + let all_joined_rooms = all_joined_rooms.iter().map(AsRef::as_ref); + let all_invited_rooms = all_invited_rooms.iter().map(AsRef::as_ref); + let all_knocked_rooms = all_knocked_rooms.iter().map(AsRef::as_ref); +@@ -192,13 +200,14 @@ pub(crate) async fn sync_events_v5_route( + ) + .await; + +- fetch_subscriptions(services, sync_info, &known_rooms, &mut todo_rooms).await; ++ fetch_subscriptions(services, sync_info, &known_rooms, &allowed_rooms, &mut todo_rooms).await; + + response.rooms = process_rooms( + services, + sender_user, + next_batch, + all_invited_rooms.clone(), ++ all_knocked_rooms.clone(), + &todo_rooms, + &mut response, + &body, +@@ -208,6 +217,7 @@ pub(crate) async fn sync_events_v5_route( + if response.rooms.iter().all(|(id, r)| { + r.timeline.is_empty() + && r.required_state.is_empty() ++ && r.invite_state.is_none() + && !response.extensions.receipts.rooms.contains_key(id) + }) && response + .extensions +@@ -238,10 +248,17 @@ async fn fetch_subscriptions( + services: &Services, + (sender_user, sender_device, globalsince, body): SyncInfo<'_>, + known_rooms: &KnownRooms, ++ allowed_rooms: &BTreeSet, + todo_rooms: &mut TodoRooms, + ) { + let mut known_subscription_rooms = BTreeSet::new(); + for (room_id, room) in &body.room_subscriptions { ++ // Silently ignore subscriptions to rooms the user is not a member of ++ // (joined or invited). ++ if !allowed_rooms.contains(room_id) { ++ continue; ++ } ++ + let not_exists = services.rooms.metadata.exists(room_id).eq(&false); + + let is_disabled = services.rooms.metadata.is_disabled(room_id); +@@ -399,11 +416,13 @@ async fn handle_lists<'a, Rooms, AllRooms>( + BTreeMap::default() + } + ++#[allow(clippy::too_many_arguments)] + async fn process_rooms<'a, Rooms>( + services: &Services, + sender_user: &UserId, + next_batch: u64, + all_invited_rooms: Rooms, ++ all_knocked_rooms: Rooms, + todo_rooms: &TodoRooms, + response: &mut sync_events::v5::Response, + body: &sync_events::v5::Request, +@@ -416,38 +435,99 @@ async fn process_rooms<'a, Rooms>( + let roomsincecount = PduCount::Normal(*roomsince); + + let mut timestamp: Option<_> = None; +- let mut invite_state = None; + let (timeline_pdus, limited); + let new_room_id: &RoomId = (*room_id).as_ref(); + if all_invited_rooms.clone().any(is_equal_to!(new_room_id)) { ++ let Ok(invite_count) = services ++ .rooms ++ .state_cache ++ .get_invite_count(room_id, sender_user) ++ .await ++ else { ++ continue; ++ }; ++ ++ if *roomsince >= invite_count { ++ continue; ++ } ++ + // TODO: figure out a timestamp we can use for remote invites +- invite_state = services ++ let invite_state = services + .rooms + .state_cache + .invite_state(sender_user, room_id) + .await + .ok(); + +- (timeline_pdus, limited) = (VecDeque::new(), true); +- } else { +- TimelinePdus { pdus: timeline_pdus, limited } = match load_timeline( +- services, +- sender_user, +- room_id, +- Some(roomsincecount), +- Some(PduCount::from(next_batch)), +- *timeline_limit, +- ) +- .await +- { +- | Ok(value) => value, +- | Err(err) => { +- warn!("Encountered missing timeline in {}, error {}", room_id, err); +- continue; +- }, ++ rooms.insert(room_id.clone(), sync_events::v5::response::Room { ++ initial: Some(roomsince == &0), ++ invite_state, ++ limited: true, ++ ..Default::default() ++ }); ++ continue; ++ } ++ ++ if all_knocked_rooms.clone().any(is_equal_to!(new_room_id)) { ++ let Ok(knock_count) = services ++ .rooms ++ .state_cache ++ .get_knock_count(room_id, sender_user) ++ .await ++ else { ++ continue; + }; ++ ++ if *roomsince >= knock_count { ++ continue; ++ } ++ ++ let Ok(knock_state) = services ++ .rooms ++ .state_cache ++ .knock_state(sender_user, room_id) ++ .await ++ else { ++ continue; ++ }; ++ ++ rooms.insert( ++ room_id.clone(), ++ assign!(sync_events::v5::response::Room::new(), { ++ initial: Some(roomsince == &0), ++ invite_state: Some(knock_state), ++ limited: true, ++ }), ++ ); ++ continue; ++ } ++ ++ if !services ++ .rooms ++ .state_cache ++ .is_joined(sender_user, room_id) ++ .await ++ { ++ continue; + } + ++ TimelinePdus { pdus: timeline_pdus, limited } = match load_timeline( ++ services, ++ sender_user, ++ room_id, ++ Some(roomsincecount), ++ Some(PduCount::from(next_batch)), ++ *timeline_limit, ++ ) ++ .await ++ { ++ | Ok(value) => value, ++ | Err(err) => { ++ warn!("Encountered missing timeline in {}, error {}", room_id, err); ++ continue; ++ }, ++ }; ++ + if body.extensions.account_data.enabled == Some(true) { + response.extensions.account_data.rooms.insert( + room_id.to_owned(), +@@ -627,7 +707,7 @@ async fn process_rooms<'a, Rooms>( + }, + initial: Some(roomsince == &0), + is_dm: None, +- invite_state, ++ invite_state: None, + unread_notifications: UnreadNotificationsCount { + highlight_count: Some( + services +@@ -753,6 +833,15 @@ async fn collect_typing_events( + + let mut typing_response = sync_events::v5::response::Typing::default(); + for (room_id, (_, _, roomsince)) in todo_rooms { ++ if !services ++ .rooms ++ .state_cache ++ .is_joined(sender_user, room_id) ++ .await ++ { ++ continue; ++ } ++ + if services.rooms.typing.last_typing_update(room_id).await? <= *roomsince { + continue; + } +-- +2.55.0 + diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/0002-fix-backport-SEC28.patch b/pkgs/by-name/ma/matrix-continuwuity_latest/0002-fix-backport-SEC28.patch new file mode 100644 index 000000000000..d07419844698 --- /dev/null +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/0002-fix-backport-SEC28.patch @@ -0,0 +1,37 @@ +From dcb079931a929880518015794d709f93651154ca Mon Sep 17 00:00:00 2001 +From: Ginger +Date: Tue, 11 Aug 2026 15:59:26 -0400 +Subject: [PATCH 1/2] fix(backport): SEC28 + +(cherry picked from commit 49a8f6f53b6f86ed6abb8952843cb3a38c530ada) +--- + src/service/threepid/mod.rs | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/src/service/threepid/mod.rs b/src/service/threepid/mod.rs +index dcc0b58ab..bda80f82e 100644 +--- a/src/service/threepid/mod.rs ++++ b/src/service/threepid/mod.rs +@@ -112,6 +112,10 @@ pub async fn send_validation_email( + // If a validation session already exists for this client secret, we can either + // reuse it with a new token or return early because it's already valid. + | Some(session) => { ++ if session.email != recipient.email { ++ return Err!(Request(InvalidParam("Wrong email for session."))); ++ } ++ + match session.validation_state { + | ValidationState::Validated => { + // If the existing session is already valid, don't send an email. +@@ -119,7 +123,7 @@ pub async fn send_validation_email( + }, + | ValidationState::Pending(ref mut token) => { + // Check ratelimiting for the target address. +- if self.ratelimiter.check_key(&recipient.email).is_err() { ++ if self.ratelimiter.check_key(&session.email).is_err() { + return Err(Error::BadRequest( + ErrorKind::LimitExceeded { retry_after: None }, + "You're sending emails too fast, try again in a few minutes.", +-- +2.55.0 + diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/0003-fix-backport-SEC26.patch b/pkgs/by-name/ma/matrix-continuwuity_latest/0003-fix-backport-SEC26.patch new file mode 100644 index 000000000000..8736fdbeea72 --- /dev/null +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/0003-fix-backport-SEC26.patch @@ -0,0 +1,132 @@ +From a00a615799bc55bc093a6298735732565aa2b566 Mon Sep 17 00:00:00 2001 +From: Ginger +Date: Tue, 11 Aug 2026 16:35:24 -0400 +Subject: [PATCH 2/2] fix(backport): SEC26 + +Reviewed-By: timedout +Reviewed-By: Ginger +(cherry picked from commit 700fbe472d4a8385b96f870256bfc00f9a15f809) +--- + src/api/server/event_auth.rs | 27 ++++++++++----------------- + src/api/server/state.rs | 13 ++++++++++++- + src/api/server/state_ids.rs | 13 ++++++++++++- + 3 files changed, 34 insertions(+), 19 deletions(-) + +diff --git a/src/api/server/event_auth.rs b/src/api/server/event_auth.rs +index a9019e8e7..433e18f46 100644 +--- a/src/api/server/event_auth.rs ++++ b/src/api/server/event_auth.rs +@@ -1,12 +1,9 @@ + use std::{borrow::Borrow, iter::once}; + + use axum::extract::State; +-use conduwuit::{Err, Error, Result, info, utils::stream::ReadyExt}; ++use conduwuit::{Err, Result, Event, info, utils::stream::ReadyExt}; + use futures::StreamExt; +-use ruma::{ +- RoomId, +- api::{client::error::ErrorKind, federation::authorization::get_event_authorization}, +-}; ++use ruma::api::federation::authorization::get_event_authorization; + + use super::AccessCheck; + use crate::Ruma; +@@ -42,25 +39,21 @@ pub(crate) async fn get_event_authorization_route( + return Err!(Request(NotFound("This server is not participating in that room."))); + } + +- let event = services ++ // The event must be in the room we just authorised access to ++ if !services + .rooms + .timeline +- .get_pdu_json(&body.event_id) ++ .get_pdu(&body.event_id) + .await +- .map_err(|_| Error::BadRequest(ErrorKind::NotFound, "Event not found."))?; +- +- let room_id_str = event +- .get("room_id") +- .and_then(|val| val.as_str()) +- .ok_or_else(|| Error::bad_database("Invalid event in database."))?; +- +- let room_id = <&RoomId>::try_from(room_id_str) +- .map_err(|_| Error::bad_database("Invalid room_id in event in database."))?; ++ .is_ok_and(|pdu| pdu.room_id_or_hash() == body.room_id) ++ { ++ return Err!(Request(NotFound("Event not found."))); ++ } + + let auth_chain = services + .rooms + .auth_chain +- .event_ids_iter(room_id, once(body.event_id.borrow())) ++ .event_ids_iter(&body.room_id, once(body.event_id.borrow())) + .ready_filter_map(Result::ok) + .filter_map(|id| async move { services.rooms.timeline.get_pdu_json(&id).await.ok() }) + .then(|pdu| services.sending.convert_to_outgoing_federation_event(pdu)) +diff --git a/src/api/server/state.rs b/src/api/server/state.rs +index 5e1ad8ca2..05a008b74 100644 +--- a/src/api/server/state.rs ++++ b/src/api/server/state.rs +@@ -1,7 +1,7 @@ + use std::{borrow::Borrow, iter::once}; + + use axum::extract::State; +-use conduwuit::{Err, Result, at, err, info, utils::IterStream}; ++use conduwuit::{Err, Event, Result, at, err, info, utils::IterStream}; + use futures::{FutureExt, StreamExt, TryStreamExt}; + use ruma::{OwnedEventId, api::federation::event::get_room_state}; + +@@ -24,6 +24,17 @@ pub(crate) async fn get_room_state_route( + .check() + .await?; + ++ // The event must be in the room we just authorised access to ++ if !services ++ .rooms ++ .timeline ++ .get_pdu(&body.event_id) ++ .await ++ .is_ok_and(|pdu| pdu.room_id_or_hash() == body.room_id) ++ { ++ return Err!(Request(NotFound("Event not found."))); ++ } ++ + if !services + .rooms + .state_cache +diff --git a/src/api/server/state_ids.rs b/src/api/server/state_ids.rs +index c9dea3116..206f3efc5 100644 +--- a/src/api/server/state_ids.rs ++++ b/src/api/server/state_ids.rs +@@ -1,7 +1,7 @@ + use std::{borrow::Borrow, iter::once}; + + use axum::extract::State; +-use conduwuit::{Err, Result, at, err, info}; ++use conduwuit::{Err, Event, Result, at, err, info}; + use futures::{StreamExt, TryStreamExt}; + use ruma::{OwnedEventId, api::federation::event::get_room_state_ids}; + +@@ -25,6 +25,17 @@ pub(crate) async fn get_room_state_ids_route( + .check() + .await?; + ++ // The event must be in the room we just authorised access to ++ if !services ++ .rooms ++ .timeline ++ .get_pdu(&body.event_id) ++ .await ++ .is_ok_and(|pdu| pdu.room_id_or_hash() == body.room_id) ++ { ++ return Err!(Request(NotFound("Event not found."))); ++ } ++ + if !services + .rooms + .state_cache +-- +2.55.0 + diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix new file mode 100644 index 000000000000..c94e635f7543 --- /dev/null +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix @@ -0,0 +1,104 @@ +{ + lib, + rustPlatform, + fetchFromGitea, + pkg-config, + bzip2, + zstd, + stdenv, + rocksdb, + nix-update-script, + testers, + matrix-continuwuity_latest, + rust-jemalloc-sys-unprefixed, + liburing, + nixosTests, +}: +let + rocksdb' = + (rocksdb.override { + # rocksdb does not support prefixed jemalloc, which is required on darwin + enableJemalloc = !stdenv.hostPlatform.isDarwin; + jemalloc = rust-jemalloc-sys-unprefixed; + }).overrideAttrs + ( + final: old: { + version = "10.10.1"; + src = fetchFromGitea { + domain = "forgejo.ellis.link"; + owner = "continuwuation"; + repo = "rocksdb"; + rev = "10.10.fb"; + hash = "sha256-1ef75IDMs5Hba4VWEyXPJb02JyShy5k4gJfzGDhopRk="; + }; + + patches = [ ]; + } + ); +in +rustPlatform.buildRustPackage (finalAttrs: { + pname = "matrix-continuwuity"; + version = "0.5.10"; + + src = fetchFromGitea { + domain = "forgejo.ellis.link"; + owner = "continuwuation"; + repo = "continuwuity"; + tag = "v${finalAttrs.version}"; + hash = "sha256-oevEGYlAK/rMJhm200CkwerT5oVak8sJj0Fa6r6+J/Q="; + }; + + cargoHash = "sha256-uvMiFURXxkLbbbwq4pG5hevsLZHQ1wVfTNvzQRTQWxE="; + + patches = [ + ./0001-fix-backport-SEC10.patch + ./0002-fix-backport-SEC28.patch + ./0003-fix-backport-SEC26.patch + ]; + + nativeBuildInputs = [ + pkg-config + rustPlatform.bindgenHook + ]; + + buildInputs = [ + bzip2 + zstd + rust-jemalloc-sys-unprefixed + liburing + ]; + + env = { + ZSTD_SYS_USE_PKG_CONFIG = true; + ROCKSDB_INCLUDE_DIR = "${rocksdb'}/include"; + ROCKSDB_LIB_DIR = "${rocksdb'}/lib"; + }; + + passthru = { + rocksdb = rocksdb'; # make used rocksdb version available (e.g., for backup scripts) + updateScript = nix-update-script { }; + tests = { + version = testers.testVersion { + inherit (finalAttrs) version; + package = matrix-continuwuity_latest; + }; + } + // lib.optionalAttrs stdenv.hostPlatform.isLinux { + inherit (nixosTests) matrix-continuwuity; + }; + }; + + meta = { + description = "Matrix homeserver written in Rust, forked from conduwuit"; + homepage = "https://continuwuity.org/"; + changelog = "https://forgejo.ellis.link/continuwuation/continuwuity/releases/tag/v${finalAttrs.version}"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ + bartoostveen + nyabinary + snaki + ]; + # Not a typo, continuwuity is a drop-in replacement for conduwuit. + mainProgram = "conduwuit"; + }; +}) From ef1a8f9dea8140628beadb9e77f8de6cb2c2dee5 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Mon, 28 Sep 2026 09:53:41 +0200 Subject: [PATCH 22/65] matrix-continuwuity_latest: drop backports We are propagating breaking changes of 26.x (removal of LDAP support, along with a few minor changed) to stable, because of multiple security fixes that are not feasible to backport to 0.5.10. This is because that would require rebasing ruwuma (the Continuwuity fork that is not maintained since 26.x) on top of ruma, as well as backporting the thousands of lines of code that came with the ruwuma -> ruma migration. Not-cherry-picked-because: neccesary for backporting all changes on master to stable, see commit message. --- .../0001-fix-backport-SEC10.patch | 250 ------------------ .../0002-fix-backport-SEC28.patch | 37 --- .../0003-fix-backport-SEC26.patch | 132 --------- .../ma/matrix-continuwuity_latest/package.nix | 6 - 4 files changed, 425 deletions(-) delete mode 100644 pkgs/by-name/ma/matrix-continuwuity_latest/0001-fix-backport-SEC10.patch delete mode 100644 pkgs/by-name/ma/matrix-continuwuity_latest/0002-fix-backport-SEC28.patch delete mode 100644 pkgs/by-name/ma/matrix-continuwuity_latest/0003-fix-backport-SEC26.patch diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/0001-fix-backport-SEC10.patch b/pkgs/by-name/ma/matrix-continuwuity_latest/0001-fix-backport-SEC10.patch deleted file mode 100644 index 042b4b12aaf2..000000000000 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/0001-fix-backport-SEC10.patch +++ /dev/null @@ -1,250 +0,0 @@ -From d25c12c343b53ea90025c11808700ad6267f4e59 Mon Sep 17 00:00:00 2001 -From: timedout -Date: Wed, 29 Jul 2026 16:38:05 +0100 -Subject: [PATCH] fix(backport): SEC10 - -Reviewed-By: Ginger -Co-Authored-By: Erwan Leboucher - -(cherry picked from commit 71016a0d7f79289f3bf8d7816c1fec3c85c43153) ---- - src/api/client/sync/v5.rs | 133 +++++++++++++++++++++++++++++++------- - 1 file changed, 111 insertions(+), 22 deletions(-) - -diff --git a/src/api/client/sync/v5.rs b/src/api/client/sync/v5.rs -index 183f3aaac..03a4c1972 100644 ---- a/src/api/client/sync/v5.rs -+++ b/src/api/client/sync/v5.rs -@@ -1,6 +1,6 @@ - use std::{ - cmp::{self, Ordering}, -- collections::{BTreeMap, BTreeSet, HashMap, HashSet, VecDeque}, -+ collections::{BTreeMap, BTreeSet, HashMap, HashSet}, - ops::Deref, - time::Duration, - }; -@@ -28,6 +28,7 @@ - use ruma::{ - DeviceId, OwnedEventId, OwnedRoomId, RoomId, UInt, UserId, - api::client::sync::sync_events::{self, DeviceLists, UnreadNotificationsCount}, -+ assign, - directory::RoomTypeFilter, - events::{ - AnyRawAccountDataEvent, AnySyncEphemeralRoomEvent, AnySyncStateEvent, StateEventType, -@@ -139,6 +140,13 @@ pub(crate) async fn sync_events_v5_route( - let (all_joined_rooms, all_invited_rooms, all_knocked_rooms) = - join3(all_joined_rooms, all_invited_rooms, all_knocked_rooms).await; - -+ let allowed_rooms: BTreeSet = all_joined_rooms -+ .iter() -+ .chain(all_invited_rooms.iter()) -+ .chain(all_knocked_rooms.iter()) -+ .cloned() -+ .collect(); -+ - let all_joined_rooms = all_joined_rooms.iter().map(AsRef::as_ref); - let all_invited_rooms = all_invited_rooms.iter().map(AsRef::as_ref); - let all_knocked_rooms = all_knocked_rooms.iter().map(AsRef::as_ref); -@@ -192,13 +200,14 @@ pub(crate) async fn sync_events_v5_route( - ) - .await; - -- fetch_subscriptions(services, sync_info, &known_rooms, &mut todo_rooms).await; -+ fetch_subscriptions(services, sync_info, &known_rooms, &allowed_rooms, &mut todo_rooms).await; - - response.rooms = process_rooms( - services, - sender_user, - next_batch, - all_invited_rooms.clone(), -+ all_knocked_rooms.clone(), - &todo_rooms, - &mut response, - &body, -@@ -208,6 +217,7 @@ pub(crate) async fn sync_events_v5_route( - if response.rooms.iter().all(|(id, r)| { - r.timeline.is_empty() - && r.required_state.is_empty() -+ && r.invite_state.is_none() - && !response.extensions.receipts.rooms.contains_key(id) - }) && response - .extensions -@@ -238,10 +248,17 @@ async fn fetch_subscriptions( - services: &Services, - (sender_user, sender_device, globalsince, body): SyncInfo<'_>, - known_rooms: &KnownRooms, -+ allowed_rooms: &BTreeSet, - todo_rooms: &mut TodoRooms, - ) { - let mut known_subscription_rooms = BTreeSet::new(); - for (room_id, room) in &body.room_subscriptions { -+ // Silently ignore subscriptions to rooms the user is not a member of -+ // (joined or invited). -+ if !allowed_rooms.contains(room_id) { -+ continue; -+ } -+ - let not_exists = services.rooms.metadata.exists(room_id).eq(&false); - - let is_disabled = services.rooms.metadata.is_disabled(room_id); -@@ -399,11 +416,13 @@ async fn handle_lists<'a, Rooms, AllRooms>( - BTreeMap::default() - } - -+#[allow(clippy::too_many_arguments)] - async fn process_rooms<'a, Rooms>( - services: &Services, - sender_user: &UserId, - next_batch: u64, - all_invited_rooms: Rooms, -+ all_knocked_rooms: Rooms, - todo_rooms: &TodoRooms, - response: &mut sync_events::v5::Response, - body: &sync_events::v5::Request, -@@ -416,38 +435,99 @@ async fn process_rooms<'a, Rooms>( - let roomsincecount = PduCount::Normal(*roomsince); - - let mut timestamp: Option<_> = None; -- let mut invite_state = None; - let (timeline_pdus, limited); - let new_room_id: &RoomId = (*room_id).as_ref(); - if all_invited_rooms.clone().any(is_equal_to!(new_room_id)) { -+ let Ok(invite_count) = services -+ .rooms -+ .state_cache -+ .get_invite_count(room_id, sender_user) -+ .await -+ else { -+ continue; -+ }; -+ -+ if *roomsince >= invite_count { -+ continue; -+ } -+ - // TODO: figure out a timestamp we can use for remote invites -- invite_state = services -+ let invite_state = services - .rooms - .state_cache - .invite_state(sender_user, room_id) - .await - .ok(); - -- (timeline_pdus, limited) = (VecDeque::new(), true); -- } else { -- TimelinePdus { pdus: timeline_pdus, limited } = match load_timeline( -- services, -- sender_user, -- room_id, -- Some(roomsincecount), -- Some(PduCount::from(next_batch)), -- *timeline_limit, -- ) -- .await -- { -- | Ok(value) => value, -- | Err(err) => { -- warn!("Encountered missing timeline in {}, error {}", room_id, err); -- continue; -- }, -+ rooms.insert(room_id.clone(), sync_events::v5::response::Room { -+ initial: Some(roomsince == &0), -+ invite_state, -+ limited: true, -+ ..Default::default() -+ }); -+ continue; -+ } -+ -+ if all_knocked_rooms.clone().any(is_equal_to!(new_room_id)) { -+ let Ok(knock_count) = services -+ .rooms -+ .state_cache -+ .get_knock_count(room_id, sender_user) -+ .await -+ else { -+ continue; - }; -+ -+ if *roomsince >= knock_count { -+ continue; -+ } -+ -+ let Ok(knock_state) = services -+ .rooms -+ .state_cache -+ .knock_state(sender_user, room_id) -+ .await -+ else { -+ continue; -+ }; -+ -+ rooms.insert( -+ room_id.clone(), -+ assign!(sync_events::v5::response::Room::new(), { -+ initial: Some(roomsince == &0), -+ invite_state: Some(knock_state), -+ limited: true, -+ }), -+ ); -+ continue; -+ } -+ -+ if !services -+ .rooms -+ .state_cache -+ .is_joined(sender_user, room_id) -+ .await -+ { -+ continue; - } - -+ TimelinePdus { pdus: timeline_pdus, limited } = match load_timeline( -+ services, -+ sender_user, -+ room_id, -+ Some(roomsincecount), -+ Some(PduCount::from(next_batch)), -+ *timeline_limit, -+ ) -+ .await -+ { -+ | Ok(value) => value, -+ | Err(err) => { -+ warn!("Encountered missing timeline in {}, error {}", room_id, err); -+ continue; -+ }, -+ }; -+ - if body.extensions.account_data.enabled == Some(true) { - response.extensions.account_data.rooms.insert( - room_id.to_owned(), -@@ -627,7 +707,7 @@ async fn process_rooms<'a, Rooms>( - }, - initial: Some(roomsince == &0), - is_dm: None, -- invite_state, -+ invite_state: None, - unread_notifications: UnreadNotificationsCount { - highlight_count: Some( - services -@@ -753,6 +833,15 @@ async fn collect_typing_events( - - let mut typing_response = sync_events::v5::response::Typing::default(); - for (room_id, (_, _, roomsince)) in todo_rooms { -+ if !services -+ .rooms -+ .state_cache -+ .is_joined(sender_user, room_id) -+ .await -+ { -+ continue; -+ } -+ - if services.rooms.typing.last_typing_update(room_id).await? <= *roomsince { - continue; - } --- -2.55.0 - diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/0002-fix-backport-SEC28.patch b/pkgs/by-name/ma/matrix-continuwuity_latest/0002-fix-backport-SEC28.patch deleted file mode 100644 index d07419844698..000000000000 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/0002-fix-backport-SEC28.patch +++ /dev/null @@ -1,37 +0,0 @@ -From dcb079931a929880518015794d709f93651154ca Mon Sep 17 00:00:00 2001 -From: Ginger -Date: Tue, 11 Aug 2026 15:59:26 -0400 -Subject: [PATCH 1/2] fix(backport): SEC28 - -(cherry picked from commit 49a8f6f53b6f86ed6abb8952843cb3a38c530ada) ---- - src/service/threepid/mod.rs | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/src/service/threepid/mod.rs b/src/service/threepid/mod.rs -index dcc0b58ab..bda80f82e 100644 ---- a/src/service/threepid/mod.rs -+++ b/src/service/threepid/mod.rs -@@ -112,6 +112,10 @@ pub async fn send_validation_email( - // If a validation session already exists for this client secret, we can either - // reuse it with a new token or return early because it's already valid. - | Some(session) => { -+ if session.email != recipient.email { -+ return Err!(Request(InvalidParam("Wrong email for session."))); -+ } -+ - match session.validation_state { - | ValidationState::Validated => { - // If the existing session is already valid, don't send an email. -@@ -119,7 +123,7 @@ pub async fn send_validation_email( - }, - | ValidationState::Pending(ref mut token) => { - // Check ratelimiting for the target address. -- if self.ratelimiter.check_key(&recipient.email).is_err() { -+ if self.ratelimiter.check_key(&session.email).is_err() { - return Err(Error::BadRequest( - ErrorKind::LimitExceeded { retry_after: None }, - "You're sending emails too fast, try again in a few minutes.", --- -2.55.0 - diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/0003-fix-backport-SEC26.patch b/pkgs/by-name/ma/matrix-continuwuity_latest/0003-fix-backport-SEC26.patch deleted file mode 100644 index 8736fdbeea72..000000000000 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/0003-fix-backport-SEC26.patch +++ /dev/null @@ -1,132 +0,0 @@ -From a00a615799bc55bc093a6298735732565aa2b566 Mon Sep 17 00:00:00 2001 -From: Ginger -Date: Tue, 11 Aug 2026 16:35:24 -0400 -Subject: [PATCH 2/2] fix(backport): SEC26 - -Reviewed-By: timedout -Reviewed-By: Ginger -(cherry picked from commit 700fbe472d4a8385b96f870256bfc00f9a15f809) ---- - src/api/server/event_auth.rs | 27 ++++++++++----------------- - src/api/server/state.rs | 13 ++++++++++++- - src/api/server/state_ids.rs | 13 ++++++++++++- - 3 files changed, 34 insertions(+), 19 deletions(-) - -diff --git a/src/api/server/event_auth.rs b/src/api/server/event_auth.rs -index a9019e8e7..433e18f46 100644 ---- a/src/api/server/event_auth.rs -+++ b/src/api/server/event_auth.rs -@@ -1,12 +1,9 @@ - use std::{borrow::Borrow, iter::once}; - - use axum::extract::State; --use conduwuit::{Err, Error, Result, info, utils::stream::ReadyExt}; -+use conduwuit::{Err, Result, Event, info, utils::stream::ReadyExt}; - use futures::StreamExt; --use ruma::{ -- RoomId, -- api::{client::error::ErrorKind, federation::authorization::get_event_authorization}, --}; -+use ruma::api::federation::authorization::get_event_authorization; - - use super::AccessCheck; - use crate::Ruma; -@@ -42,25 +39,21 @@ pub(crate) async fn get_event_authorization_route( - return Err!(Request(NotFound("This server is not participating in that room."))); - } - -- let event = services -+ // The event must be in the room we just authorised access to -+ if !services - .rooms - .timeline -- .get_pdu_json(&body.event_id) -+ .get_pdu(&body.event_id) - .await -- .map_err(|_| Error::BadRequest(ErrorKind::NotFound, "Event not found."))?; -- -- let room_id_str = event -- .get("room_id") -- .and_then(|val| val.as_str()) -- .ok_or_else(|| Error::bad_database("Invalid event in database."))?; -- -- let room_id = <&RoomId>::try_from(room_id_str) -- .map_err(|_| Error::bad_database("Invalid room_id in event in database."))?; -+ .is_ok_and(|pdu| pdu.room_id_or_hash() == body.room_id) -+ { -+ return Err!(Request(NotFound("Event not found."))); -+ } - - let auth_chain = services - .rooms - .auth_chain -- .event_ids_iter(room_id, once(body.event_id.borrow())) -+ .event_ids_iter(&body.room_id, once(body.event_id.borrow())) - .ready_filter_map(Result::ok) - .filter_map(|id| async move { services.rooms.timeline.get_pdu_json(&id).await.ok() }) - .then(|pdu| services.sending.convert_to_outgoing_federation_event(pdu)) -diff --git a/src/api/server/state.rs b/src/api/server/state.rs -index 5e1ad8ca2..05a008b74 100644 ---- a/src/api/server/state.rs -+++ b/src/api/server/state.rs -@@ -1,7 +1,7 @@ - use std::{borrow::Borrow, iter::once}; - - use axum::extract::State; --use conduwuit::{Err, Result, at, err, info, utils::IterStream}; -+use conduwuit::{Err, Event, Result, at, err, info, utils::IterStream}; - use futures::{FutureExt, StreamExt, TryStreamExt}; - use ruma::{OwnedEventId, api::federation::event::get_room_state}; - -@@ -24,6 +24,17 @@ pub(crate) async fn get_room_state_route( - .check() - .await?; - -+ // The event must be in the room we just authorised access to -+ if !services -+ .rooms -+ .timeline -+ .get_pdu(&body.event_id) -+ .await -+ .is_ok_and(|pdu| pdu.room_id_or_hash() == body.room_id) -+ { -+ return Err!(Request(NotFound("Event not found."))); -+ } -+ - if !services - .rooms - .state_cache -diff --git a/src/api/server/state_ids.rs b/src/api/server/state_ids.rs -index c9dea3116..206f3efc5 100644 ---- a/src/api/server/state_ids.rs -+++ b/src/api/server/state_ids.rs -@@ -1,7 +1,7 @@ - use std::{borrow::Borrow, iter::once}; - - use axum::extract::State; --use conduwuit::{Err, Result, at, err, info}; -+use conduwuit::{Err, Event, Result, at, err, info}; - use futures::{StreamExt, TryStreamExt}; - use ruma::{OwnedEventId, api::federation::event::get_room_state_ids}; - -@@ -25,6 +25,17 @@ pub(crate) async fn get_room_state_ids_route( - .check() - .await?; - -+ // The event must be in the room we just authorised access to -+ if !services -+ .rooms -+ .timeline -+ .get_pdu(&body.event_id) -+ .await -+ .is_ok_and(|pdu| pdu.room_id_or_hash() == body.room_id) -+ { -+ return Err!(Request(NotFound("Event not found."))); -+ } -+ - if !services - .rooms - .state_cache --- -2.55.0 - diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix index c94e635f7543..197b310f7f71 100644 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix @@ -50,12 +50,6 @@ rustPlatform.buildRustPackage (finalAttrs: { cargoHash = "sha256-uvMiFURXxkLbbbwq4pG5hevsLZHQ1wVfTNvzQRTQWxE="; - patches = [ - ./0001-fix-backport-SEC10.patch - ./0002-fix-backport-SEC28.patch - ./0003-fix-backport-SEC26.patch - ]; - nativeBuildInputs = [ pkg-config rustPlatform.bindgenHook From b349beec4542bceb3b9d0c7644d299cbe78563e0 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Fri, 10 Jul 2026 19:26:58 +0200 Subject: [PATCH 23/65] matrix-continuwuity_latest: 0.5.10 -> 26.6.1 Release notes: https://forgejo.ellis.link/continuwuation/continuwuity/releases/tag/v26.6.1 and https://forgejo.ellis.link/continuwuation/continuwuity/releases/tag/v26.6.0 Changelog: https://forgejo.ellis.link/continuwuation/continuwuity/src/commit/v26.6.1/CHANGELOG.md Diff: https://forgejo.ellis.link/continuwuation/continuwuity/compare/v0.5.10...v26.6.1 (cherry picked from commit ad3d97426255abeb146261dbf423c1ff3a21b6d0) --- .../ma/matrix-continuwuity_latest/package.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix index 197b310f7f71..8070c6a0e50e 100644 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix @@ -23,13 +23,13 @@ let }).overrideAttrs ( final: old: { - version = "10.10.1"; + version = "11.1.1"; src = fetchFromGitea { domain = "forgejo.ellis.link"; owner = "continuwuation"; repo = "rocksdb"; - rev = "10.10.fb"; - hash = "sha256-1ef75IDMs5Hba4VWEyXPJb02JyShy5k4gJfzGDhopRk="; + rev = "3756b2b905e13216d8b56bcc783d814e7b073aff"; + hash = "sha256-rSv4fr2bf9JJwdodgeuPCuceeh7k97KVxrAOC0wyPQY="; }; patches = [ ]; @@ -38,17 +38,17 @@ let in rustPlatform.buildRustPackage (finalAttrs: { pname = "matrix-continuwuity"; - version = "0.5.10"; + version = "26.6.1"; src = fetchFromGitea { domain = "forgejo.ellis.link"; owner = "continuwuation"; repo = "continuwuity"; tag = "v${finalAttrs.version}"; - hash = "sha256-oevEGYlAK/rMJhm200CkwerT5oVak8sJj0Fa6r6+J/Q="; + hash = "sha256-sfUxhBPf0P46Xf0lcZFDj23cuZ9apJDyTQPa97jlcSY="; }; - cargoHash = "sha256-uvMiFURXxkLbbbwq4pG5hevsLZHQ1wVfTNvzQRTQWxE="; + cargoHash = "sha256-Qmw9Xum+Osu/4kbVqJP79gbtimpV2P7SkCMuQWyBYxg="; nativeBuildInputs = [ pkg-config From 23c88534655c46c4eb4be57a4fc9b44708b9d37a Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Sun, 12 Jul 2026 23:41:21 +0200 Subject: [PATCH 24/65] matrix-continuwuity_latest: 26.6.1 -> 26.6.2 Release notes: https://forgejo.ellis.link/continuwuation/continuwuity/releases/tag/v26.6.2 Changelog: https://forgejo.ellis.link/continuwuation/continuwuity/src/commit/v26.6.2/CHANGELOG.md Diff: https://forgejo.ellis.link/continuwuation/continuwuity/compare/v26.6.1...v26.6.2 (cherry picked from commit 9af645506c710799906e7a45bdcaa00fc9552b93) --- pkgs/by-name/ma/matrix-continuwuity_latest/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix index 8070c6a0e50e..01d249e77e99 100644 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix @@ -38,17 +38,17 @@ let in rustPlatform.buildRustPackage (finalAttrs: { pname = "matrix-continuwuity"; - version = "26.6.1"; + version = "26.6.2"; src = fetchFromGitea { domain = "forgejo.ellis.link"; owner = "continuwuation"; repo = "continuwuity"; tag = "v${finalAttrs.version}"; - hash = "sha256-sfUxhBPf0P46Xf0lcZFDj23cuZ9apJDyTQPa97jlcSY="; + hash = "sha256-GcCjJiUOGX+vF7R4IRgNQs8KpfVj+MXwnhofwSm6gpA="; }; - cargoHash = "sha256-Qmw9Xum+Osu/4kbVqJP79gbtimpV2P7SkCMuQWyBYxg="; + cargoHash = "sha256-p1Bz7op/qPogBn8bj9pQ7KjRhH2kZao8o0LPqWH2ZYo="; nativeBuildInputs = [ pkg-config From 34b47e9d5b5f626a79541ef3cfdf5ac7dfed5191 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Mon, 27 Jul 2026 22:30:38 +0200 Subject: [PATCH 25/65] matrix-continuwuity_latest: 26.6.2 -> 26.7.1 Release notes: https://forgejo.ellis.link/continuwuation/continuwuity/releases/tag/v26.7.1 Changelog: https://forgejo.ellis.link/continuwuation/continuwuity/src/commit/v26.7.1/CHANGELOG.md Diff: https://forgejo.ellis.link/continuwuation/continuwuity/compare/v26.6.2...v26.7.1 (cherry picked from commit 59cec7483b2f79e066aa5ff6ed50ee080eed9de9) --- pkgs/by-name/ma/matrix-continuwuity_latest/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix index 01d249e77e99..23e2cfcbd6b8 100644 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix @@ -38,17 +38,17 @@ let in rustPlatform.buildRustPackage (finalAttrs: { pname = "matrix-continuwuity"; - version = "26.6.2"; + version = "26.7.1"; src = fetchFromGitea { domain = "forgejo.ellis.link"; owner = "continuwuation"; repo = "continuwuity"; tag = "v${finalAttrs.version}"; - hash = "sha256-GcCjJiUOGX+vF7R4IRgNQs8KpfVj+MXwnhofwSm6gpA="; + hash = "sha256-gdTj7y1fwTG0CNWeK/0An6WM8YEeiw7TOuTjh1Zbe50="; }; - cargoHash = "sha256-p1Bz7op/qPogBn8bj9pQ7KjRhH2kZao8o0LPqWH2ZYo="; + cargoHash = "sha256-nhL4GRmw49n+UlHUKHcEJPoT/BNm+6eatqz/m+zjahg="; nativeBuildInputs = [ pkg-config From d038c83a1f8d87cddad3d7b380f6a4a808adfc92 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Wed, 15 Jul 2026 21:49:44 +0200 Subject: [PATCH 26/65] matrix-continuwuity_latest: make rocksdb overridable (cherry picked from commit 8665aa3f1cd122ea31cd870ec39e8926d0fc4f03) --- .../ma/matrix-continuwuity_latest/package.nix | 30 ++++--------------- .../ma/matrix-continuwuity_latest/rocksdb.nix | 26 ++++++++++++++++ 2 files changed, 31 insertions(+), 25 deletions(-) create mode 100644 pkgs/by-name/ma/matrix-continuwuity_latest/rocksdb.nix diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix index 23e2cfcbd6b8..1220c8596fbd 100644 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix @@ -6,7 +6,7 @@ bzip2, zstd, stdenv, - rocksdb, + callPackage, nix-update-script, testers, matrix-continuwuity_latest, @@ -14,28 +14,7 @@ liburing, nixosTests, }: -let - rocksdb' = - (rocksdb.override { - # rocksdb does not support prefixed jemalloc, which is required on darwin - enableJemalloc = !stdenv.hostPlatform.isDarwin; - jemalloc = rust-jemalloc-sys-unprefixed; - }).overrideAttrs - ( - final: old: { - version = "11.1.1"; - src = fetchFromGitea { - domain = "forgejo.ellis.link"; - owner = "continuwuation"; - repo = "rocksdb"; - rev = "3756b2b905e13216d8b56bcc783d814e7b073aff"; - hash = "sha256-rSv4fr2bf9JJwdodgeuPCuceeh7k97KVxrAOC0wyPQY="; - }; - patches = [ ]; - } - ); -in rustPlatform.buildRustPackage (finalAttrs: { pname = "matrix-continuwuity"; version = "26.7.1"; @@ -64,12 +43,13 @@ rustPlatform.buildRustPackage (finalAttrs: { env = { ZSTD_SYS_USE_PKG_CONFIG = true; - ROCKSDB_INCLUDE_DIR = "${rocksdb'}/include"; - ROCKSDB_LIB_DIR = "${rocksdb'}/lib"; + ROCKSDB_INCLUDE_DIR = "${finalAttrs.rocksdb}/include"; + ROCKSDB_LIB_DIR = "${finalAttrs.rocksdb}/lib"; }; + rocksdb = callPackage ./rocksdb.nix { }; # make used rocksdb version available (e.g., for backup scripts) + passthru = { - rocksdb = rocksdb'; # make used rocksdb version available (e.g., for backup scripts) updateScript = nix-update-script { }; tests = { version = testers.testVersion { diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/rocksdb.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/rocksdb.nix new file mode 100644 index 000000000000..fcdeb4b77076 --- /dev/null +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/rocksdb.nix @@ -0,0 +1,26 @@ +{ + stdenv, + fetchFromGitea, + rocksdb, + rust-jemalloc-sys-unprefixed, +}: + +(rocksdb.override { + # rocksdb does not support prefixed jemalloc, which is required on darwin + enableJemalloc = !stdenv.hostPlatform.isDarwin; + jemalloc = rust-jemalloc-sys-unprefixed; +}).overrideAttrs + ( + final: old: { + version = "11.1.1"; + src = fetchFromGitea { + domain = "forgejo.ellis.link"; + owner = "continuwuation"; + repo = "rocksdb"; + rev = "3756b2b905e13216d8b56bcc783d814e7b073aff"; + hash = "sha256-rSv4fr2bf9JJwdodgeuPCuceeh7k97KVxrAOC0wyPQY="; + }; + + patches = [ ]; + } + ) From 52ef021d5b440777a1ba948632ed0e4815240851 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Thu, 30 Jul 2026 20:27:54 +0200 Subject: [PATCH 27/65] matrix-continuwuity_latest: 26.7.1 -> 26.7.2 Release notes: https://forgejo.ellis.link/continuwuation/continuwuity/releases/tag/v26.7.2 Changelog: https://forgejo.ellis.link/continuwuation/continuwuity/src/commit/3f69334f9af2b09ae2ad786e16ccf7a5d4a5924f/CHANGELOG.md Diff: https://forgejo.ellis.link/continuwuation/continuwuity/compare/v26.7.1...v26.7.2 (cherry picked from commit be742101ac9ac42a2de6f974b2dc4fa532635acb) --- pkgs/by-name/ma/matrix-continuwuity_latest/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix index 1220c8596fbd..88f63a254e87 100644 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix @@ -17,17 +17,17 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "matrix-continuwuity"; - version = "26.7.1"; + version = "26.7.2"; src = fetchFromGitea { domain = "forgejo.ellis.link"; owner = "continuwuation"; repo = "continuwuity"; tag = "v${finalAttrs.version}"; - hash = "sha256-gdTj7y1fwTG0CNWeK/0An6WM8YEeiw7TOuTjh1Zbe50="; + hash = "sha256-uE38tYYgze2q4hgW1mzk5CLTD3ezAwCnj+RQOmZtCdw="; }; - cargoHash = "sha256-nhL4GRmw49n+UlHUKHcEJPoT/BNm+6eatqz/m+zjahg="; + cargoHash = "sha256-DZsRr0Xt/7HnlNCZfXK4dUILK/uEOnSD+r26OxvycD0="; nativeBuildInputs = [ pkg-config From a25a7ff15604063fb18ed217409e6dff0298399b Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Tue, 11 Aug 2026 22:20:39 +0200 Subject: [PATCH 28/65] nixos/tests/matrix-continuwuity: wrap sync filter in filter data class This ensures the filter is sent to the sync endpoint properly. Originally found this shortcoming of the refactored test in my personal package repository, this commit upstreams the fix. Continuwuity just ignores incorrect sync filters, so this just exists for completeness. (cherry picked from commit 0949151f36f81cb13be43ac44ce27c043e084194) --- nixos/tests/matrix/continuwuity.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/tests/matrix/continuwuity.nix b/nixos/tests/matrix/continuwuity.nix index 80c46fb21362..f84d0bd39c20 100644 --- a/nixos/tests/matrix/continuwuity.nix +++ b/nixos/tests/matrix/continuwuity.nix @@ -29,7 +29,7 @@ in import asyncio from mautrix.client import Client - from mautrix.types import EventType, RoomFilter + from mautrix.types import EventType, RoomFilter, Filter async def main() -> None: @@ -66,7 +66,7 @@ in received.set() client.add_event_handler(EventType.ROOM_MESSAGE, on_message) - sync_task = client.start(RoomFilter(rooms=[room_id])) + sync_task = client.start(Filter(room=RoomFilter(rooms=[room_id]))) await client.send_text(room_id, msg) From b03ac3a988b858d082a7db27529d298a650ddb78 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Tue, 11 Aug 2026 23:56:09 +0200 Subject: [PATCH 29/65] matrix-continuwuity_latest: 26.7.2 -> 26.7.3 Release notes: https://forgejo.ellis.link/continuwuation/continuwuity/releases/tag/v26.7.3 Changelog: https://forgejo.ellis.link/continuwuation/continuwuity/src/commit/v26.7.3/CHANGELOG.md Diff: https://forgejo.ellis.link/continuwuation/continuwuity/compare/v26.7.2...v26.7.3 Fixes: GHSA-v2x6-m99h-vqxx (cherry picked from commit d578214c2746c7830918777a16d45074795ac37a) --- pkgs/by-name/ma/matrix-continuwuity_latest/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix index 88f63a254e87..1f16b3fdc466 100644 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix @@ -17,17 +17,17 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "matrix-continuwuity"; - version = "26.7.2"; + version = "26.7.3"; src = fetchFromGitea { domain = "forgejo.ellis.link"; owner = "continuwuation"; repo = "continuwuity"; tag = "v${finalAttrs.version}"; - hash = "sha256-uE38tYYgze2q4hgW1mzk5CLTD3ezAwCnj+RQOmZtCdw="; + hash = "sha256-Uj4fcHoTiQ/G5vyEnSOatjdqaUquGSlOxeTt32F2xew="; }; - cargoHash = "sha256-DZsRr0Xt/7HnlNCZfXK4dUILK/uEOnSD+r26OxvycD0="; + cargoHash = "sha256-6C4dXm9+m2sKA4m1YXocifX4ss61s6/L2FeXzfkowMs="; nativeBuildInputs = [ pkg-config From ff91559a594f3b73a1fad08e85b6d4b39f195f66 Mon Sep 17 00:00:00 2001 From: Henry-Hiles Date: Sat, 22 Aug 2026 20:39:39 -0400 Subject: [PATCH 30/65] matrix-continuwuity_latest: 26.7.3 -> 26.8.1 (cherry picked from commit eef928cd8012922a92234729882466fce5b0ca7c) --- pkgs/by-name/ma/matrix-continuwuity_latest/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix index 1f16b3fdc466..4b0eab5f5c0c 100644 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix @@ -17,17 +17,17 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "matrix-continuwuity"; - version = "26.7.3"; + version = "26.8.1"; src = fetchFromGitea { domain = "forgejo.ellis.link"; owner = "continuwuation"; repo = "continuwuity"; tag = "v${finalAttrs.version}"; - hash = "sha256-Uj4fcHoTiQ/G5vyEnSOatjdqaUquGSlOxeTt32F2xew="; + hash = "sha256-slwfK5aEIFjIue01L4nVUHaLx/2j3nRKrmkNkfPPZXE="; }; - cargoHash = "sha256-6C4dXm9+m2sKA4m1YXocifX4ss61s6/L2FeXzfkowMs="; + cargoHash = "sha256-s87vdh+5rMNIXDWt2dZZvqSY9dJzEHuvEhJLG1HvphY="; nativeBuildInputs = [ pkg-config From d1c66d82cad062b31410e8c4d05b3792c7d53e58 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Wed, 16 Sep 2026 22:29:30 +0200 Subject: [PATCH 31/65] matrix-continuwuity_latest: 26.8.1 -> 26.9.0 Release notes: https://forgejo.ellis.link/continuwuation/continuwuity/releases/tag/v26.9.0 Changelog: https://forgejo.ellis.link/continuwuation/continuwuity/src/commit/v26.9.0/CHANGELOG.md Diff: https://forgejo.ellis.link/continuwuation/continuwuity/compare/v26.8.1...v26.9.0 (cherry picked from commit 5036aeb14e98d51d4f2a2208971c74282cce7e0f) --- pkgs/by-name/ma/matrix-continuwuity_latest/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix index 4b0eab5f5c0c..9a2635808322 100644 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix @@ -17,17 +17,17 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "matrix-continuwuity"; - version = "26.8.1"; + version = "26.9.0"; src = fetchFromGitea { domain = "forgejo.ellis.link"; owner = "continuwuation"; repo = "continuwuity"; tag = "v${finalAttrs.version}"; - hash = "sha256-slwfK5aEIFjIue01L4nVUHaLx/2j3nRKrmkNkfPPZXE="; + hash = "sha256-w/sFqEbvzNTbvR8eTeVT0qo/t0p/vlQUna1bPOqJs7E="; }; - cargoHash = "sha256-s87vdh+5rMNIXDWt2dZZvqSY9dJzEHuvEhJLG1HvphY="; + cargoHash = "sha256-ubIQNgn/FM++WkmnfDOVUpxfBCElIYJxvNMipwXbmIc="; nativeBuildInputs = [ pkg-config From c82fa6b46a3b3fdb8f32927c5d997e240bdc96a8 Mon Sep 17 00:00:00 2001 From: Henry-Hiles Date: Sun, 27 Sep 2026 21:48:24 -0400 Subject: [PATCH 32/65] matrix-continuwuity_latest: 26.9.0 -> 26.9.1 (cherry picked from commit 32f8806c23d3f414216f3ac21eb9b971a331b7e4) --- pkgs/by-name/ma/matrix-continuwuity_latest/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix index 9a2635808322..0b3e4e2e438d 100644 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix @@ -17,17 +17,17 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "matrix-continuwuity"; - version = "26.9.0"; + version = "26.9.1"; src = fetchFromGitea { domain = "forgejo.ellis.link"; owner = "continuwuation"; repo = "continuwuity"; tag = "v${finalAttrs.version}"; - hash = "sha256-w/sFqEbvzNTbvR8eTeVT0qo/t0p/vlQUna1bPOqJs7E="; + hash = "sha256-z9iOdSjTvv+kDJaoAyKTzrY0ge2KM90H4tM8ir52RMQ="; }; - cargoHash = "sha256-ubIQNgn/FM++WkmnfDOVUpxfBCElIYJxvNMipwXbmIc="; + cargoHash = "sha256-dbTrgE0+OzHhD3rjQciZfRIBivvZa0YZyKpTP8XOzZI="; nativeBuildInputs = [ pkg-config From 1ad7b02e9be0dcf1827ca4903862be4b41af0362 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Mon, 28 Sep 2026 09:55:53 +0200 Subject: [PATCH 33/65] nixos/tests/matrix-continuwuity: use matrix-continuwuity_latest Not-cherry-picked-because: otherwise this test would fail because matrix-continuwuity is marked as insecure. --- nixos/tests/matrix/continuwuity.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/tests/matrix/continuwuity.nix b/nixos/tests/matrix/continuwuity.nix index f84d0bd39c20..2a6b5e35e749 100644 --- a/nixos/tests/matrix/continuwuity.nix +++ b/nixos/tests/matrix/continuwuity.nix @@ -1,4 +1,4 @@ -{ lib, ... }: +{ lib, pkgs, ... }: let name = "continuwuity"; user = "alice"; @@ -11,6 +11,7 @@ in continuwuity = { services.matrix-continuwuity = { enable = true; + package = pkgs.matrix-continuwuity_latest; settings.global = { server_name = name; address = [ "0.0.0.0" ]; From 73c68ad3f5acb7ce80eac13e970de188eb268d42 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Mon, 28 Sep 2026 10:11:33 +0200 Subject: [PATCH 34/65] matrix-continuwuity_latest: enable structuredAttrs Not-cherry-picked-because: package not in unstable --- pkgs/by-name/ma/matrix-continuwuity_latest/package.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix index 0b3e4e2e438d..7e599477499d 100644 --- a/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity_latest/package.nix @@ -19,6 +19,8 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "matrix-continuwuity"; version = "26.9.1"; + __structuredAttrs = true; + src = fetchFromGitea { domain = "forgejo.ellis.link"; owner = "continuwuation"; From 92b9084a2eeed40abb3b842f0f815c4cbc144aeb Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 13 Jul 2026 22:48:07 +0000 Subject: [PATCH 35/65] hugo: 0.163.3 -> 0.164.0 (cherry picked from commit 023f5cbc13e335a868e07c1ce691961fca06e306) --- pkgs/by-name/hu/hugo/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/hu/hugo/package.nix b/pkgs/by-name/hu/hugo/package.nix index 30119aa33239..671d3614c1cb 100644 --- a/pkgs/by-name/hu/hugo/package.nix +++ b/pkgs/by-name/hu/hugo/package.nix @@ -11,16 +11,16 @@ buildGoModule (finalAttrs: { pname = "hugo"; - version = "0.163.3"; + version = "0.164.0"; src = fetchFromGitHub { owner = "gohugoio"; repo = "hugo"; tag = "v${finalAttrs.version}"; - hash = "sha256-o8MoGrdOXBN/HkcuRsHyyyFLvPvNo3PI0oWBlO6Xfpw="; + hash = "sha256-hpxz5zOggqqYVTUkgwpkWcOa7sdGaWrRJUnXjJx59cA="; }; - vendorHash = "sha256-Bn+RA+EHd3gAKL4N/ibydX7yWNKOSYnIl2pfecfOu1k="; + vendorHash = "sha256-35VeZOtnwgYVuabzJ3+FjvhtoJGZcVRo+TWPTBAWVC4="; checkFlags = let From abbdf09903933026164e79da89a02a742d10c070 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 18 Aug 2026 22:50:05 +0000 Subject: [PATCH 36/65] hugo: 0.164.0 -> 0.165.0 (cherry picked from commit 04522e7cf75475194aaeb9a4d429881ee7413094) --- pkgs/by-name/hu/hugo/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/hu/hugo/package.nix b/pkgs/by-name/hu/hugo/package.nix index 671d3614c1cb..870a1f603005 100644 --- a/pkgs/by-name/hu/hugo/package.nix +++ b/pkgs/by-name/hu/hugo/package.nix @@ -11,16 +11,16 @@ buildGoModule (finalAttrs: { pname = "hugo"; - version = "0.164.0"; + version = "0.165.0"; src = fetchFromGitHub { owner = "gohugoio"; repo = "hugo"; tag = "v${finalAttrs.version}"; - hash = "sha256-hpxz5zOggqqYVTUkgwpkWcOa7sdGaWrRJUnXjJx59cA="; + hash = "sha256-xxBBvhNp/4IUtIPfiFaZhCnXPhnHZ0NP4R/gda9a6Ic="; }; - vendorHash = "sha256-35VeZOtnwgYVuabzJ3+FjvhtoJGZcVRo+TWPTBAWVC4="; + vendorHash = "sha256-k9e8lthkDzewLHRSZmiAQxsatOKUFrlNOJ4FnAb2uqk="; checkFlags = let From 8331360cace0cde48187bf4a8ab62634becf4618 Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Fri, 11 Sep 2026 22:04:02 +0200 Subject: [PATCH 37/65] hugo: 0.165.0 -> 0.166.0 (cherry picked from commit 2aaad40284de035b66973164ac212b8cfaeab9a6) --- pkgs/by-name/hu/hugo/package.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/hu/hugo/package.nix b/pkgs/by-name/hu/hugo/package.nix index 870a1f603005..113a553ecf1a 100644 --- a/pkgs/by-name/hu/hugo/package.nix +++ b/pkgs/by-name/hu/hugo/package.nix @@ -1,7 +1,7 @@ { stdenv, lib, - buildGoModule, + buildGo127Module, fetchFromGitHub, installShellFiles, buildPackages, @@ -9,18 +9,18 @@ nix-update-script, }: -buildGoModule (finalAttrs: { +buildGo127Module (finalAttrs: { pname = "hugo"; - version = "0.165.0"; + version = "0.166.0"; src = fetchFromGitHub { owner = "gohugoio"; repo = "hugo"; tag = "v${finalAttrs.version}"; - hash = "sha256-xxBBvhNp/4IUtIPfiFaZhCnXPhnHZ0NP4R/gda9a6Ic="; + hash = "sha256-IzkwqfoqIscUI3EboIE3zHd0CsEUfa9JnoQ4yk6oIOg="; }; - vendorHash = "sha256-k9e8lthkDzewLHRSZmiAQxsatOKUFrlNOJ4FnAb2uqk="; + vendorHash = "sha256-lqhBX8lmDHHCgjqdyQ6lAl6yHOZR0j04QJi5OkB5VKA="; checkFlags = let @@ -73,7 +73,7 @@ buildGoModule (finalAttrs: { versionCheckHook ]; doInstallCheck = true; - versionCheckProgram = "${placeholder "out"}/bin/hugo"; + versionCheckProgram = "${placeholder "out"}/bin/${finalAttrs.meta.mainProgram}"; versionCheckProgramArg = "version"; passthru.updateScript = nix-update-script { }; From 316bf9ad3867075cde840697df2c960b81def85c Mon Sep 17 00:00:00 2001 From: Diogo Correia Date: Mon, 28 Sep 2026 10:03:05 +0100 Subject: [PATCH 38/65] nixos/nextcloud: revert warning about 33 and 34 being legacy versions Not-cherry-picked-because: partially reverting backport --- nixos/modules/services/web-apps/nextcloud.md | 5 +++-- nixos/modules/services/web-apps/nextcloud.nix | 4 +--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/nixos/modules/services/web-apps/nextcloud.md b/nixos/modules/services/web-apps/nextcloud.md index c4fb11759d26..061ee4e4a4c9 100644 --- a/nixos/modules/services/web-apps/nextcloud.md +++ b/nixos/modules/services/web-apps/nextcloud.md @@ -5,8 +5,9 @@ self-hostable cloud platform. The server setup can be automated using [services.nextcloud](#opt-services.nextcloud.enable). A desktop client is packaged at `pkgs.nextcloud-client`. -The current default by NixOS is `nextcloud35` which is also the latest -major version available. +The current default by NixOS 26.05 is `nextcloud33` which was the latest +major version available at the time of release. +The latest major version is also available as `nextcloud35`, upon explicit upgrade. ## Basic usage {#module-services-nextcloud-basic-usage} diff --git a/nixos/modules/services/web-apps/nextcloud.nix b/nixos/modules/services/web-apps/nextcloud.nix index 7425fa116d31..627d9a3b2a0f 100644 --- a/nixos/modules/services/web-apps/nextcloud.nix +++ b/nixos/modules/services/web-apps/nextcloud.nix @@ -1230,9 +1230,7 @@ in ++ (lib.optional (lib.versionOlder cfg.package.version "30") (upgradeWarning 29 "24.11")) ++ (lib.optional (lib.versionOlder cfg.package.version "31") (upgradeWarning 30 "25.05")) ++ (lib.optional (lib.versionOlder cfg.package.version "32") (upgradeWarning 31 "25.11")) - ++ (lib.optional (lib.versionOlder cfg.package.version "33") (upgradeWarning 32 "26.05")) - ++ (lib.optional (lib.versionOlder cfg.package.version "34") (upgradeWarning 33 "26.05")) - ++ (lib.optional (lib.versionOlder cfg.package.version "35") (upgradeWarning 34 "26.05")); + ++ (lib.optional (lib.versionOlder cfg.package.version "33") (upgradeWarning 32 "26.05")); services.nextcloud.package = lib.mkDefault ( if pkgs ? nextcloud then From eac7245d3db871a555cb926181d9aaaa018cf8e8 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sun, 27 Sep 2026 23:19:34 +0200 Subject: [PATCH 39/65] discourse: 2026.8.0 -> 2026.9.0 https://releases.discourse.org/changelog/v2026.9.0/ Fixes: - CVE-2026-91159 Stored oEmbed HTML injection via allowed iframe - CVE-2026-91157 Media uploads remain publicly accessible after category permissions are restricted - CVE-2026-91156 Chat MessageBus delivers read-restricted messages to unauthorized users (cherry picked from commit 0f6171af436bb758ee2754d2fe6223a4446021c1) --- pkgs/servers/web-apps/discourse/default.nix | 25 +- .../include-precompiled-bundles.patch | 26 +- .../plugins/discourse-docs/default.nix | 4 +- .../discourse-yearly-review/default.nix | 4 +- .../web-apps/discourse/rubyEnv/Gemfile | 64 +- .../web-apps/discourse/rubyEnv/Gemfile.lock | 652 +++++++++--------- .../web-apps/discourse/rubyEnv/gemset.nix | 536 +++++++------- .../sass_embedded_vendored_dart_sass.patch | 12 +- .../discourse/voice-plugin-assets.patch | 38 + 9 files changed, 699 insertions(+), 662 deletions(-) create mode 100644 pkgs/servers/web-apps/discourse/voice-plugin-assets.patch diff --git a/pkgs/servers/web-apps/discourse/default.nix b/pkgs/servers/web-apps/discourse/default.nix index 99bd0ed170e0..53a570bc8965 100644 --- a/pkgs/servers/web-apps/discourse/default.nix +++ b/pkgs/servers/web-apps/discourse/default.nix @@ -54,13 +54,13 @@ }: let - version = "2026.8.0"; + version = "2026.9.0"; src = fetchFromGitHub { owner = "discourse"; repo = "discourse"; tag = "v${version}"; - hash = "sha256-UUDPZVBQXG6kfW8+TFFDHsNMdH8WLxsgva4jSdZWsC8="; + hash = "sha256-xOZyoDA+/UPV/art5z8lNSM7RfNejeYcZAL+JzrPk7A="; }; pnpm = pnpm_10; @@ -180,8 +180,8 @@ let rubyEnv = let # these hashes are auto-updated by update.py - dart-x64-hash = "sha256-2rnqNeEr8PFMuFa4IhutxxXui1dCw3XQVqCV5ZwsUR8="; - dart-arm64-hash = "sha256-8sgc9IaeWSRnURFtMuSOqnKACkDc5WynmLIboYWwoSM="; + dart-x64-hash = "sha256-pNK3ekjTYP/FCInhtb5uxDBDP/yA79fnE76avxoHt9k="; + dart-arm64-hash = "sha256-B6OWLvW7dM6DIeO5A6WbpQ0IHJca54HZCRLyAn2XKK0="; in bundlerEnv rec { name = "discourse-ruby-env-${version}"; @@ -274,7 +274,7 @@ let unpackPhase nativeBuildInputs ; - hash = "sha256-OIkSavAjja1atbeyPAKFXsXoYI3nUk9c5G3RFBj53Uk="; + hash = "sha256-2OITwITCGoAIahIXpemWP38iFGSlrycUV319pmdD1dY="; }; dontBuild = false; @@ -350,7 +350,7 @@ let pname = "discourse-assets"; inherit version src pnpm; fetcherVersion = 3; - hash = "sha256-fm6hboG2Bjq0HUnbwdLiC1FpoWRZvq+1bN5SupQ2P2k="; + hash = "sha256-oahr5SJzHfIfcB7NFxeeEYDf3Q4m/iC/JMpNjlEWgSE="; }; nativeBuildInputs = runtimeDeps ++ [ @@ -471,6 +471,8 @@ let dontCheckForBrokenSymlinks = true; }; + voiceAssets = rubyEnv.gems.discourse_voice_assets; + discourse = stdenv.mkDerivation { pname = "discourse"; inherit version src; @@ -520,6 +522,9 @@ let # in the imagemagick sandbox, symlinks permissions are checked (as you would hope) but this causes other problems.. ./optimize-image-fix.patch + + # Skip voice plugin asset symlink removal/recreation at runtime. + ./voice-plugin-assets.patch ]; postPatch = '' @@ -565,6 +570,14 @@ let p: "ln -sf ${p} $out/share/discourse/plugins/${p.pluginName or ""}" ) plugins} + # The voice plugin creates its asset symlink below its source tree. That + # works during the asset build, but the package source tree is read-only + # at runtime.. + mkdir -p $out/share/discourse/plugins/voice/public/javascripts + ln -sf \ + ${voiceAssets}/lib/ruby/gems/${rubyEnv.ruby.version.libDir}/gems/discourse_voice_assets-${voiceAssets.version}/vendor \ + $out/share/discourse/plugins/voice/public/javascripts/${voiceAssets.version} + runHook postInstall ''; diff --git a/pkgs/servers/web-apps/discourse/include-precompiled-bundles.patch b/pkgs/servers/web-apps/discourse/include-precompiled-bundles.patch index 962398f06eb9..60bc5b8394dd 100644 --- a/pkgs/servers/web-apps/discourse/include-precompiled-bundles.patch +++ b/pkgs/servers/web-apps/discourse/include-precompiled-bundles.patch @@ -1,5 +1,5 @@ diff --git a/lib/asset_processor.rb b/lib/asset_processor.rb -index 0c602a85220..be1e22061b0 100644 +index 95b1245391e..adff8527457 100644 --- a/lib/asset_processor.rb +++ b/lib/asset_processor.rb @@ -5,7 +5,7 @@ class AssetProcessor @@ -11,16 +11,16 @@ index 0c602a85220..be1e22061b0 100644 filename_prefix: "asset-processor", dependency_globs: %w[ node_modules/.pnpm/lock.yaml -diff --git a/lib/pretty_text.rb b/lib/pretty_text.rb -index 6f176324799..9815f579212 100644 ---- a/lib/pretty_text.rb -+++ b/lib/pretty_text.rb -@@ -54,7 +54,7 @@ module PrettyText +diff --git a/lib/pretty_text/core_bundle.rb b/lib/pretty_text/core_bundle.rb +index 963dfb1ac6b..97b717e7569 100644 +--- a/lib/pretty_text/core_bundle.rb ++++ b/lib/pretty_text/core_bundle.rb +@@ -21,7 +21,7 @@ module PrettyText - CORE_BUNDLE = - PrecompiledBundle.new( -- dir: "tmp/pretty-text-processor", -+ dir: "frontend/pretty-text-processor.build", - filename_prefix: "pretty-text", - dependency_globs: - %w[ + BUNDLE = + PrecompiledBundle.new( +- dir: "tmp/pretty-text-processor", ++ dir: "frontend/pretty-text-processor.build", + filename_prefix: "pretty-text", + dependency_globs: + %w[ diff --git a/pkgs/servers/web-apps/discourse/plugins/discourse-docs/default.nix b/pkgs/servers/web-apps/discourse/plugins/discourse-docs/default.nix index da083a671aab..5b93c678e59f 100644 --- a/pkgs/servers/web-apps/discourse/plugins/discourse-docs/default.nix +++ b/pkgs/servers/web-apps/discourse/plugins/discourse-docs/default.nix @@ -9,8 +9,8 @@ mkDiscoursePlugin { src = fetchFromGitHub { owner = "discourse"; repo = "discourse-docs"; - rev = "0796384551e3f9d328c57e88577098be05d816c7"; - sha256 = "sha256-lZ8BlFaQcd9H+bom2igbJl4Ty7qmqtpbOpGbqIF8nEo="; + rev = "89bae0e929387ed5697fd3c5eedf9b3dbe85bead"; + sha256 = "sha256-ycDyYRi7uab4vxHY8K2kUytWBmTuFTFHYGD1AHpzC+0="; }; meta = { homepage = "https://github.com/discourse/discourse-docs"; diff --git a/pkgs/servers/web-apps/discourse/plugins/discourse-yearly-review/default.nix b/pkgs/servers/web-apps/discourse/plugins/discourse-yearly-review/default.nix index 132422792950..0e42e98bedfc 100644 --- a/pkgs/servers/web-apps/discourse/plugins/discourse-yearly-review/default.nix +++ b/pkgs/servers/web-apps/discourse/plugins/discourse-yearly-review/default.nix @@ -9,8 +9,8 @@ mkDiscoursePlugin { src = fetchFromGitHub { owner = "discourse"; repo = "discourse-yearly-review"; - rev = "97720c573f04ce32544ef1e9353b12005de0bdec"; - sha256 = "sha256-ZhkrPYFjhtNoh6jQhqPTMZJqHMyZo3tdbtSl3MuOJz0="; + rev = "a4e9ee393de923332609d0436e3c1c8757f6cb1c"; + sha256 = "sha256-WHU7vYTnavX3waJWjHn11kg70TCoFH9cdmdPRSsNZO4="; }; meta = { homepage = "https://github.com/discourse/discourse-yearly-review"; diff --git a/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile b/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile index 0cb16063f2c9..e706d9ef881a 100644 --- a/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile +++ b/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile @@ -8,13 +8,13 @@ source "https://rubygems.org" gem "bootsnap", require: false, platform: :mri -gem "actionmailer", "~> 8.0.0" -gem "actionpack", "~> 8.0.0" -gem "actionview", "~> 8.0.0" -gem "activemodel", "~> 8.0.0" -gem "activerecord", "~> 8.0.0" -gem "activesupport", "~> 8.0.0" -gem "railties", "~> 8.0.0" +gem "actionmailer", "~> 8.1.0" +gem "actionpack", "~> 8.1.0" +gem "actionview", "~> 8.1.0" +gem "activemodel", "~> 8.1.0" +gem "activerecord", "~> 8.1.0" +gem "activesupport", "~> 8.1.0" +gem "railties", "~> 8.1.0" gem "propshaft" gem "json" @@ -60,6 +60,8 @@ gem "message_bus" gem "rails_multisite" gem "fastimage" +gem "msgpack" +gem "ruby-vips", "~> 2.3", require: false gem "aws-sdk-s3", require: false gem "aws-sdk-sns", require: false @@ -80,13 +82,13 @@ gem "loofah" gem "css_parser", require: false gem "omniauth" -gem "omniauth-facebook" -gem "omniauth-twitter" -gem "omniauth-github" +gem "omniauth-facebook", require: false +gem "omniauth-twitter", require: false +gem "omniauth-github", require: false gem "omniauth-oauth2", require: false -gem "omniauth-google-oauth2" +gem "omniauth-google-oauth2", require: false gem "oj" @@ -114,7 +116,7 @@ gem "rack-protection" # security gem "cbor", require: false gem "cose", require: false gem "addressable" -gem "json_schemer" +gem "json_schemer", require: false gem "net-smtp", require: false gem "net-pop", require: false @@ -126,37 +128,36 @@ group :test do gem "capybara", require: false gem "webmock", require: false gem "simplecov", require: false - gem "test-prof" + gem "test-prof", require: false gem "rails-dom-testing", require: false - gem "minio_runner", require: false - gem "capybara-playwright-driver" + gem "capybara-playwright-driver", require: false gem "puma", require: false end group :test, :development do - gem "rspec" + gem "rspec", require: false gem "listen", require: false gem "certified", require: false gem "fabrication", require: false gem "mocha", require: false - gem "rb-fsevent", require: RUBY_PLATFORM =~ /darwin/i ? "rb-fsevent" : false + gem "rb-fsevent", require: false - gem "rspec-rails" + gem "rspec-rails", require: false gem "shoulda-matchers", require: false - gem "rspec-html-matchers" + gem "rspec-html-matchers", require: false gem "debug", ">= 1.0.0", require: "debug/prelude" gem "rubocop-discourse", require: false - gem "parallel_tests" + gem "parallel_tests", require: false - gem "rswag-specs" + gem "rswag-specs", require: false - gem "annotaterb" + gem "annotaterb", require: false - gem "syntax_tree" + gem "syntax_tree", require: false - gem "rspec-multi-mock" + gem "rspec-multi-mock", require: false end group :development do @@ -175,8 +176,8 @@ if ENV["ALLOW_DEV_POPULATE"] == "1" gem "faker" else group :development, :test do - gem "discourse_dev_assets" - gem "faker" + gem "discourse_dev_assets", require: false + gem "faker", require: false end end @@ -224,7 +225,7 @@ gem "sassc-embedded" gem "rotp", require: false -gem "rqrcode" +gem "rqrcode", require: false gem "rubyzip", require: false @@ -232,10 +233,10 @@ gem "landlock", require: false gem "sshkey", require: false -gem "rchardet", require: false gem "lz4-ruby", require: false, platform: :ruby gem "sanitize" +gem "reverse_markdown", "3.0.2", require: false if ENV["IMPORT"] == "1" gem "mysql2" @@ -244,7 +245,6 @@ if ENV["IMPORT"] == "1" # NOTE: in import mode the version of sqlite can matter a lot, so we stick it to a specific one gem "sqlite3", "~> 1.3", ">= 1.3.13" gem "ruby-bbcode-to-md", git: "https://github.com/nlalonde/ruby-bbcode-to-md" - gem "reverse_markdown" gem "tiny_tds" gem "csv" end @@ -273,6 +273,9 @@ gem "cgi", ">= 0.3.6", require: false gem "tzinfo-data" gem "csv", require: false +# Rails 8.1 drops its own dependency on `benchmark`. +gem "benchmark", require: false + # dependencies for the automation plugin gem "iso8601" gem "rrule" @@ -308,6 +311,9 @@ gem "tiktoken_ruby", require: false gem "smarter_json", require: false gem "json_completer", require: false gem "discourse_ai-tokenizers", require: false + +# for the voice plugin +gem "discourse_voice_assets", require: false gem "ed25519" # TODO: remove this as existing ssl gem should handle this gem "Ascii85", require: false gem "ruby-rc4", require: false diff --git a/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile.lock b/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile.lock index 0e3517db3815..173b0a828fff 100644 --- a/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile.lock +++ b/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile.lock @@ -4,9 +4,11 @@ PATH migrations-converters (0.0.1) activesupport colored2 + discourse-emojis i18n markbridge (>= 0.4.0) migrations-core + mini_racer pg zeitwerk @@ -53,16 +55,16 @@ GEM remote: https://rubygems.org/ specs: Ascii85 (2.0.1) - actionmailer (8.0.5.1) - actionpack (= 8.0.5.1) - actionview (= 8.0.5.1) - activejob (= 8.0.5.1) - activesupport (= 8.0.5.1) + actionmailer (8.1.3.1) + actionpack (= 8.1.3.1) + actionview (= 8.1.3.1) + activejob (= 8.1.3.1) + activesupport (= 8.1.3.1) mail (>= 2.8.0) rails-dom-testing (~> 2.2) - actionpack (8.0.5.1) - actionview (= 8.0.5.1) - activesupport (= 8.0.5.1) + actionpack (8.1.3.1) + actionview (= 8.1.3.1) + activesupport (= 8.1.3.1) nokogiri (>= 1.8.5) rack (>= 2.2.4) rack-session (>= 1.0.1) @@ -70,8 +72,8 @@ GEM rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) useragent (~> 0.16) - actionview (8.0.5.1) - activesupport (= 8.0.5.1) + actionview (8.1.3.1) + activesupport (= 8.1.3.1) builder (~> 3.1) erubi (~> 1.11) rails-dom-testing (~> 2.2) @@ -80,23 +82,23 @@ GEM actionview (>= 6.0.a) active_model_serializers (0.8.4) activemodel (>= 3.0) - activejob (8.0.5.1) - activesupport (= 8.0.5.1) + activejob (8.1.3.1) + activesupport (= 8.1.3.1) globalid (>= 0.3.6) - activemodel (8.0.5.1) - activesupport (= 8.0.5.1) - activerecord (8.0.5.1) - activemodel (= 8.0.5.1) - activesupport (= 8.0.5.1) + activemodel (8.1.3.1) + activesupport (= 8.1.3.1) + activerecord (8.1.3.1) + activemodel (= 8.1.3.1) + activesupport (= 8.1.3.1) timeout (>= 0.4.0) - activesupport (8.0.5.1) + activesupport (8.1.3.1) base64 - benchmark (>= 0.3) bigdecimal concurrent-ruby (~> 1.0, >= 1.3.1) connection_pool (>= 2.2.5) drb i18n (>= 1.6, < 2) + json logger (>= 1.4.2) minitest (>= 5.1) securerandom (>= 0.3) @@ -108,15 +110,17 @@ GEM annotaterb (4.20.0) activerecord (>= 6.0.0) activesupport (>= 6.0.0) + anonymous_loader (0.1.3) + version_gem (~> 1.1, >= 1.1.14) ast (2.4.3) - auth-sanitizer (0.1.4) - version_gem (~> 1.1, >= 1.1.9) + auth-sanitizer (0.2.3) + version_gem (~> 1.1, >= 1.1.14) aws-eventstream (1.4.0) - aws-partitions (1.1134.0) - aws-sdk-bedrockruntime (1.74.0) - aws-sdk-core (~> 3, >= 3.244.0) + aws-partitions (1.1284.0) + aws-sdk-bedrockruntime (1.83.0) + aws-sdk-core (~> 3, >= 3.254.0) aws-sigv4 (~> 1.5) - aws-sdk-core (3.254.0) + aws-sdk-core (3.255.0) aws-eventstream (~> 1, >= 1.3.0) aws-partitions (~> 1, >= 1.992.0) aws-sigv4 (~> 1.9) @@ -124,6 +128,7 @@ GEM bigdecimal jmespath (~> 1, >= 1.6.1) logger + rexml (~> 3.4, >= 3.4.2) aws-sdk-kms (1.99.0) aws-sdk-core (~> 3, >= 3.216.0) aws-sigv4 (~> 1.5) @@ -149,10 +154,10 @@ GEM rack (>= 0.9.0) rouge (>= 1.0.0) bigdecimal (3.3.1) - bootsnap (1.24.5) - msgpack (~> 1.2) + bootsnap (1.25.0) + msgpack (~> 1.5) builder (3.3.0) - bullet (8.1.3) + bullet (8.2.0) activesupport (>= 3.0.0) uniform_notifier (~> 1.11) capybara (3.40.0) @@ -164,19 +169,19 @@ GEM rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) - capybara-playwright-driver (0.5.9) + capybara-playwright-driver (0.5.10) addressable capybara playwright-ruby-client (>= 1.16.0) cbor (0.5.10.3) certified (1.0.0) - cgi (0.5.1) + cgi (0.5.2) chunky_png (1.4.0) coderay (1.1.3) colored2 (4.0.3) - concurrent-ruby (1.3.7) + concurrent-ruby (1.3.8) connection_pool (2.5.5) - console (1.36.0) + console (1.37.0) fiber-annotation fiber-local (~> 1.1) json @@ -187,11 +192,11 @@ GEM crack (1.0.1) bigdecimal rexml - crass (1.0.6) + crass (1.0.7) css_parser (3.0.0) addressable ssrf_filter (~> 1.5) - csv (3.3.5) + csv (3.3.6) date (3.5.1) debug (1.11.1) irb (~> 1.10) @@ -213,17 +218,17 @@ GEM faker (~> 3.5.1) literate_randomizer discourse_math_bundle (1.0.1) - docile (1.4.1) + discourse_voice_assets (0.1.0) drb (2.2.3) dry-initializer (3.2.0) ed25519 (1.4.0) - email_reply_trimmer (0.2.0) - erb (6.0.4) + email_reply_trimmer (0.4.0) + erb (6.0.7) erubi (1.13.1) - excon (1.5.0) + excon (1.7.1) logger exifr (1.5.1) - extralite-bundle (2.14) + extralite-bundle (3.0.1) fabrication (3.0.0) faker (3.5.3) i18n (>= 1.8.11, < 2) @@ -251,30 +256,30 @@ GEM fiber-storage fiber-storage (1.0.1) fspath (3.1.2) - globalid (1.3.0) + globalid (1.4.0) activesupport (>= 6.1) goldiloader (6.0.0) activerecord (>= 7.2, < 8.3) activesupport (>= 7.2, < 8.3) - google-protobuf (4.35.0) + google-protobuf (4.36.1) bigdecimal rake (~> 13.3) - google-protobuf (4.35.0-aarch64-linux-gnu) + google-protobuf (4.36.1-aarch64-linux-gnu) bigdecimal rake (~> 13.3) - google-protobuf (4.35.0-aarch64-linux-musl) + google-protobuf (4.36.1-aarch64-linux-musl) bigdecimal rake (~> 13.3) - google-protobuf (4.35.0-arm64-darwin) + google-protobuf (4.36.1-arm64-darwin) bigdecimal rake (~> 13.3) - google-protobuf (4.35.0-x86_64-darwin) + google-protobuf (4.36.1-x86_64-darwin) bigdecimal rake (~> 13.3) - google-protobuf (4.35.0-x86_64-linux-gnu) + google-protobuf (4.36.1-x86_64-linux-gnu) bigdecimal rake (~> 13.3) - google-protobuf (4.35.0-x86_64-linux-musl) + google-protobuf (4.36.1-x86_64-linux-musl) bigdecimal rake (~> 13.3) guess_html_encoding (0.0.11) @@ -298,7 +303,7 @@ GEM image_size (3.6.0) in_threads (1.6.0) inflection (1.0.0) - io-console (0.8.2) + io-console (0.9.2) irb (1.18.0) pp (>= 0.6.0) prism (>= 1.3.0) @@ -306,7 +311,7 @@ GEM reline (>= 0.4.2) iso8601 (0.13.0) jmespath (1.6.2) - json (2.19.9) + json (2.21.2) json-schema (6.2.0) addressable (~> 2.8) bigdecimal (>= 3.1, < 5) @@ -316,10 +321,10 @@ GEM hana (~> 1.3) regexp_parser (~> 2.0) simpleidn (~> 0.2) - jwt (2.10.1) + jwt (3.2.0) base64 - landlock (0.4.1) - language_server-protocol (3.17.0.5) + landlock (0.5.1) + language_server-protocol (3.17.0.6) libv8-node (24.12.0.1) libv8-node (24.12.0.1-aarch64-linux) libv8-node (24.12.0.1-aarch64-linux-musl) @@ -337,19 +342,19 @@ GEM rb-inotify (~> 0.9, >= 0.9.10) literate_randomizer (0.4.0) logger (1.7.0) - lograge (0.14.0) + lograge (0.15.0) actionpack (>= 4) activesupport (>= 4) railties (>= 4) request_store (~> 1.0) logstash-event (1.2.02) logster (2.21.0) - loofah (2.25.1) + loofah (2.25.2) crass (~> 1.0.2) nokogiri (>= 1.12.0) lru_redux (1.1.0) lz4-ruby (0.3.3) - mail (2.9.0) + mail (2.9.1) logger mini_mime (>= 0.1.1) net-imap @@ -359,7 +364,8 @@ GEM matrix (0.4.3) maxminddb (0.1.22) memory_profiler (1.1.0) - message_bus (4.5.2) + message_bus (5.0.0) + logger rack (> 2, < 4) messageformat-wrapper (1.1.0) mini_racer (>= 0.6.3) @@ -367,76 +373,79 @@ GEM mime-types (3.7.0) logger mime-types-data (~> 3.2025, >= 3.2025.0507) - mime-types-data (3.2026.0414) + mime-types-data (3.2026.0701) mini_mime (1.1.5) mini_portile2 (2.8.9) - mini_racer (0.22.0) + mini_racer (0.22.1) libv8-node (~> 24.12.0.1) mini_scheduler (0.20.0) sidekiq (>= 6.5, < 9.0) mini_sql (1.6.0) mini_suffix (0.3.3) ffi (~> 1.9) - minio_runner (1.1.0) minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) mocha (3.1.0) ruby2_keywords (>= 0.0.5) - msgpack (1.8.3) - multi_json (1.20.1) + msgpack (1.8.4) + multi_json (1.21.1) multi_xml (0.9.1) bigdecimal (>= 3.1, < 5) multipart-post (2.4.1) - mustache (1.1.2) + mustache (1.1.3) net-http (0.9.1) uri (>= 0.11.1) - net-imap (0.6.4.1) + net-imap (0.6.6) date net-protocol net-pop (0.1.2) net-protocol - net-protocol (0.2.2) + net-protocol (0.3.0) timeout net-smtp (0.5.1) net-protocol nio4r (2.7.5) - nokogiri (1.19.3) + nokogiri (1.19.4) mini_portile2 (~> 2.8.2) racc (~> 1.4) - nokogiri (1.19.3-aarch64-linux-gnu) + nokogiri (1.19.4-aarch64-linux-gnu) racc (~> 1.4) - nokogiri (1.19.3-aarch64-linux-musl) + nokogiri (1.19.4-aarch64-linux-musl) racc (~> 1.4) - nokogiri (1.19.3-arm64-darwin) + nokogiri (1.19.4-arm64-darwin) racc (~> 1.4) - nokogiri (1.19.3-x86_64-darwin) + nokogiri (1.19.4-x86_64-darwin) racc (~> 1.4) - nokogiri (1.19.3-x86_64-linux-gnu) + nokogiri (1.19.4-x86_64-linux-gnu) racc (~> 1.4) - nokogiri (1.19.3-x86_64-linux-musl) + nokogiri (1.19.4-x86_64-linux-musl) racc (~> 1.4) - oauth (1.1.5) - auth-sanitizer (~> 0.1, >= 0.1.3) + oauth (1.1.8) + anonymous_loader (~> 0.1, >= 0.1.3) + auth-sanitizer (~> 0.2, >= 0.2.3) base64 (~> 0.1) - cgi - oauth-tty (~> 1.0, >= 1.0.8) - snaky_hash (~> 2.0, >= 2.0.4) - version_gem (~> 1.1, >= 1.1.9) - oauth-tty (1.0.8) - auth-sanitizer (~> 0.1, >= 0.1.3) - cgi - version_gem (~> 1.1, >= 1.1.9) - oauth2 (1.4.11) - faraday (>= 0.17.3, < 3.0) - jwt (>= 1.0, < 3.0) - multi_json (~> 1.3) + oauth-tty (~> 1.0, >= 1.0.13) + snaky_hash (~> 2.0, >= 2.0.7) + version_gem (~> 1.1, >= 1.1.14) + oauth-tty (1.0.13) + anonymous_loader (~> 0.1, >= 0.1.3) + auth-sanitizer (~> 0.2, >= 0.2.3) + version_gem (~> 1.1, >= 1.1.14) + oauth2 (2.0.25) + anonymous_loader (~> 0.1, >= 0.1.3) + auth-sanitizer (~> 0.2, >= 0.2.3) + faraday (>= 0.17.3, < 4.0) + jwt (>= 1.0, < 4.0) + logger (~> 1.2) multi_xml (~> 0.5) rack (>= 1.2, < 4) + snaky_hash (~> 2.0, >= 2.0.7) + version_gem (~> 1.1, >= 1.1.14) octokit (10.0.0) faraday (>= 1, < 3) sawyer (~> 0.9) - oj (3.16.12) + oj (3.17.6) bigdecimal (>= 3.0) ostruct (>= 0.2) omniauth (2.1.2) @@ -446,25 +455,26 @@ GEM omniauth-facebook (10.0.0) bigdecimal omniauth-oauth2 (>= 1.2, < 3) - omniauth-github (2.0.0) + omniauth-github (2.0.1) omniauth (~> 2.0) - omniauth-oauth2 (~> 1.7.1) - omniauth-google-oauth2 (1.0.1) - jwt (>= 2.0) - oauth2 (~> 1.1) + omniauth-oauth2 (~> 1.8) + omniauth-google-oauth2 (1.2.3) + jwt (>= 2.9.2, < 4) + oauth2 (~> 2.0) omniauth (~> 2.0) - omniauth-oauth2 (~> 1.7.1) + omniauth-oauth2 (~> 1.8) omniauth-oauth (1.2.1) oauth omniauth (>= 1.0, < 3) rack (>= 1.6.2, < 4) - omniauth-oauth2 (1.7.3) - oauth2 (>= 1.4, < 3) - omniauth (>= 1.9, < 3) - omniauth-twitter (1.4.0) - omniauth-oauth (~> 1.1) + omniauth-oauth2 (1.9.0) + oauth2 (>= 2.0.2, < 3) + omniauth (~> 2.0) + omniauth-twitter (1.5.0) + cgi + omniauth-oauth (~> 1.2) rack - openssl (3.3.2) + openssl (4.0.2) openssl-signature_algorithm (1.3.0) openssl (> 2.0) optimist (3.2.1) @@ -472,16 +482,15 @@ GEM parallel (2.1.0) parallel_tests (5.7.0) parallel - parser (3.3.11.1) + parser (3.3.12.0) ast (~> 2.4.1) racc pastel (0.8.0) tty-color (~> 0.5) - pdf-reader (2.15.1) + pdf-reader (2.16.0) Ascii85 (>= 1.0, < 3.0, != 2.0.0) afm (>= 0.2.1, < 2) hashery (~> 2.0) - ruby-rc4 ttfunk pg (1.6.3) pg (1.6.3-aarch64-linux) @@ -493,11 +502,11 @@ GEM pitchfork (0.18.2) logger rack (>= 2.0) - playwright-ruby-client (1.60.0) + playwright-ruby-client (1.62.0) base64 concurrent-ruby (>= 1.1.6) mime-types (>= 3.0) - pp (0.6.3) + pp (0.6.4) prettyprint prettier_print (1.2.1) prettyprint (0.2.0) @@ -513,15 +522,12 @@ GEM reline (>= 0.6.0) pry-rails (0.3.11) pry (>= 0.13.0) - psych (5.4.0) - date - stringio public_suffix (7.0.5) puma (8.0.2) nio4r (~> 2.0) racc (1.8.1) - rack (2.2.23) - rack-mini-profiler (4.0.1) + rack (2.2.24) + rack-mini-profiler (5.0.0) rack (>= 1.2.0) rack-protection (3.2.0) base64 (>= 0.1.0) @@ -537,19 +543,19 @@ GEM activesupport (>= 5.0.0) minitest nokogiri (>= 1.6) - rails-html-sanitizer (1.7.0) - loofah (~> 2.25) + rails-html-sanitizer (1.7.1) + loofah (~> 2.25, >= 2.25.2) nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) rails_failover (2.3.0) activerecord (>= 6.1, < 9.0) concurrent-ruby railties (>= 6.1, < 9.0) - rails_multisite (7.0.0) - activerecord (>= 7.1) - railties (>= 7.1) - railties (8.0.5.1) - actionpack (= 8.0.5.1) - activesupport (= 8.0.5.1) + rails_multisite (9.0.0) + activerecord (>= 7.2) + railties (>= 7.2) + railties (8.1.3.1) + actionpack (= 8.1.3.1) + activesupport (= 8.1.3.1) irb (~> 1.13) rackup (>= 1.0.0) rake (>= 12.2) @@ -565,35 +571,37 @@ GEM ffi (~> 1.0) rb_sys (0.9.130) rake-compiler-dock (= 1.12.0) - rbs (4.0.2) + rbs (4.2.0) logger prism (>= 1.6.0) tsort - rbtrace (0.5.4) + rbtrace (0.5.5) ffi (>= 1.0.6) msgpack (>= 0.4.3) optimist (>= 3.0.0) - rchardet (1.10.2) - rdoc (7.2.0) + rdoc (8.0.0) erb - psych (>= 4.0.0) + prism (>= 1.6.0) + rbs (>= 4.0.0) tsort redcarpet (3.6.1) - redis (5.4.0) - redis-client (>= 0.22.0) - redis-client (0.30.0) + redis (6.0.0) + redis-client (= 0.30.1) + redis-client (0.30.1) connection_pool redis-namespace (1.11.0) redis (>= 4) regexp_parser (2.12.0) - reline (0.6.3) + reline (0.7.0) io-console (~> 0.5) request_store (1.7.0) rack (>= 1.4) + reverse_markdown (3.0.2) + nokogiri rexml (3.4.4) rinku (2.0.6) rotp (6.3.0) - rouge (5.0.0) + rouge (5.1.0) strscan (~> 3.1) rqrcode (3.2.0) chunky_png (~> 1.0) @@ -636,8 +644,8 @@ GEM rspec-core (>= 2.14) rtlcss (0.2.1) mini_racer (>= 0.6.3) - rubocop (1.86.1) - json (~> 2.3) + rubocop (1.91.0) + json (>= 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) parallel (>= 1.10) @@ -647,13 +655,13 @@ GEM rubocop-ast (>= 1.49.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.49.1) + rubocop-ast (1.50.0) parser (>= 3.3.7.2) prism (~> 1.7) - rubocop-capybara (2.23.0) + rubocop-capybara (3.0.0) lint_roller (~> 1.1) rubocop (~> 1.81) - rubocop-discourse (3.18.0) + rubocop-discourse (3.20.0) activesupport (>= 6.1) lint_roller (>= 1.1.0) rubocop-capybara (>= 2.23.0) @@ -667,20 +675,21 @@ GEM rubocop-factory_bot (2.28.0) lint_roller (~> 1.1) rubocop (~> 1.72, >= 1.72.1) - rubocop-rails (2.34.3) + rubocop-rails (2.37.0) activesupport (>= 4.2.0) lint_roller (~> 1.1) rack (>= 1.1) - rubocop (>= 1.75.0, < 2.0) + rubocop (>= 1.89.0, < 2.0) rubocop-ast (>= 1.44.0, < 2.0) - rubocop-rspec (3.9.0) + rubocop-rspec (3.10.2) lint_roller (~> 1.1) - rubocop (~> 1.81) + regexp_parser (>= 2.0) + rubocop (~> 1.86, >= 1.86.2) rubocop-rspec_rails (2.32.0) lint_roller (~> 1.1) rubocop (~> 1.72, >= 1.72.1) rubocop-rspec (~> 3.5) - ruby-lsp (0.26.9) + ruby-lsp (0.26.11) language_server-protocol (~> 3.17.0) prism (>= 1.2, < 2.0) rbs (>= 3, < 5) @@ -696,80 +705,80 @@ GEM ruby-readability (0.7.3) guess_html_encoding (>= 0.0.4) nokogiri (>= 1.6.0) + ruby-vips (2.3.0) + ffi (~> 1.12) + logger ruby2_keywords (0.0.5) - rubyzip (3.3.1) + rubyzip (3.6.0) samovar (2.5.1) console (~> 1.0) sanitize (7.0.0) crass (~> 1.0.2) nokogiri (>= 1.16.8) - sass-embedded (1.100.0) + sass-embedded (1.104.0) google-protobuf (~> 4.31) rake (>= 13) - sass-embedded (1.100.0-aarch64-linux-gnu) + sass-embedded (1.104.0-aarch64-linux-gnu) google-protobuf (~> 4.31) - sass-embedded (1.100.0-aarch64-linux-musl) + sass-embedded (1.104.0-aarch64-linux-musl) google-protobuf (~> 4.31) - sass-embedded (1.100.0-arm64-darwin) + sass-embedded (1.104.0-arm64-darwin) google-protobuf (~> 4.31) - sass-embedded (1.100.0-x86_64-darwin) + sass-embedded (1.104.0-x86_64-darwin) google-protobuf (~> 4.31) - sass-embedded (1.100.0-x86_64-linux-gnu) + sass-embedded (1.104.0-x86_64-linux-gnu) google-protobuf (~> 4.31) - sass-embedded (1.100.0-x86_64-linux-musl) + sass-embedded (1.104.0-x86_64-linux-musl) google-protobuf (~> 4.31) - sassc-embedded (1.80.8) + sassc-embedded (1.80.9) sass-embedded (~> 1.80) sawyer (0.9.3) addressable (>= 2.3.5) faraday (>= 0.17.3, < 3) securerandom (0.4.1) - shoulda-matchers (7.0.1) - activesupport (>= 7.1) + shoulda-matchers (8.0.1) + activesupport (>= 7.2) sidekiq (7.3.10) base64 connection_pool (>= 2.3.0, < 3) logger rack (>= 2.2.4, < 3.3) redis-client (>= 0.23.0, < 1) - simplecov (0.22.0) - docile (~> 1.1) - simplecov-html (~> 0.11) - simplecov_json_formatter (~> 0.1) - simplecov-html (0.13.2) - simplecov_json_formatter (0.1.4) - simpleidn (0.2.3) + simplecov (1.1.1) + simpleidn (0.3.0) smarter_json (1.2.6) bigdecimal - snaky_hash (2.0.4) + snaky_hash (2.0.7) hashie (>= 0.1.0, < 6) - version_gem (>= 1.1.8, < 3) - sqlite3 (2.9.5) + version_gem (~> 1.1, >= 1.1.14) + sqlite3 (2.9.6) mini_portile2 (~> 2.8.0) - sqlite3 (2.9.5-aarch64-linux-gnu) - sqlite3 (2.9.5-aarch64-linux-musl) - sqlite3 (2.9.5-arm64-darwin) - sqlite3 (2.9.5-x86_64-darwin) - sqlite3 (2.9.5-x86_64-linux-gnu) - sqlite3 (2.9.5-x86_64-linux-musl) + sqlite3 (2.9.6-aarch64-linux-gnu) + sqlite3 (2.9.6-aarch64-linux-musl) + sqlite3 (2.9.6-arm64-darwin) + sqlite3 (2.9.6-x86_64-darwin) + sqlite3 (2.9.6-x86_64-linux-gnu) + sqlite3 (2.9.6-x86_64-linux-musl) sshkey (3.0.0) ssrf_filter (1.5.0) stackprof (0.2.28) - stringio (3.2.0) - stripe (11.1.0) + stripe (19.6.2) + bigdecimal + logger strscan (3.1.8) syntax_tree (6.3.0) prettier_print (>= 1.2.0) - test-prof (1.6.1) + test-prof (1.6.3) + logger thor (1.5.0) - tiktoken_ruby (0.0.16) + tiktoken_ruby (0.0.17) rb_sys (~> 0.9) - tiktoken_ruby (0.0.16-aarch64-linux) - tiktoken_ruby (0.0.16-aarch64-linux-musl) - tiktoken_ruby (0.0.16-arm64-darwin) - tiktoken_ruby (0.0.16-x86_64-darwin) - tiktoken_ruby (0.0.16-x86_64-linux) - tiktoken_ruby (0.0.16-x86_64-linux-musl) + tiktoken_ruby (0.0.17-aarch64-linux) + tiktoken_ruby (0.0.17-aarch64-linux-musl) + tiktoken_ruby (0.0.17-arm64-darwin) + tiktoken_ruby (0.0.17-x86_64-darwin) + tiktoken_ruby (0.0.17-x86_64-linux) + tiktoken_ruby (0.0.17-x86_64-linux-musl) timeout (0.6.1) tokenizers (0.6.4) rb_sys @@ -794,7 +803,7 @@ GEM tty-screen (0.8.2) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - tzinfo-data (1.2026.2) + tzinfo-data (1.2026.3) tzinfo (>= 1.0.0) unf (0.2.0) unicode-display_width (3.2.0) @@ -803,11 +812,11 @@ GEM uniform_notifier (1.18.0) uri (1.1.1) useragent (0.16.11) - version_gem (1.1.13) - web-push (3.0.1) - jwt (~> 2.0) - openssl (~> 3.0) - webmock (3.26.2) + version_gem (1.1.15) + web-push (3.1.0) + jwt (~> 3.0) + openssl (>= 3.0) + webmock (3.26.4) addressable (>= 2.8.0) crack (>= 0.3.2) hashdiff (>= 0.4.0, < 2.0.0) @@ -816,12 +825,13 @@ GEM xpath (3.2.0) nokogiri (~> 1.8) yaml-lint (0.1.2) - yard (0.9.44) - zeitwerk (2.8.2) - zendesk_api (1.38.0.rc1) + yard (0.9.45) + zeitwerk (2.8.3) + zendesk_api (3.1.2) + base64 faraday (> 2.0.0) faraday-multipart - hashie (>= 3.5.2, < 6.0.0) + hashie (>= 3.5.2) inflection mini_mime multipart-post (~> 2.0) @@ -837,14 +847,14 @@ PLATFORMS DEPENDENCIES Ascii85 - actionmailer (~> 8.0.0) - actionpack (~> 8.0.0) - actionview (~> 8.0.0) + actionmailer (~> 8.1.0) + actionpack (~> 8.1.0) + actionview (~> 8.1.0) actionview_precompiler active_model_serializers (~> 0.8.3) - activemodel (~> 8.0.0) - activerecord (~> 8.0.0) - activesupport (~> 8.0.0) + activemodel (~> 8.1.0) + activerecord (~> 8.1.0) + activesupport (~> 8.1.0) addressable afm annotaterb @@ -853,6 +863,7 @@ DEPENDENCIES aws-sdk-s3 aws-sdk-sns aws-sdk-sts + benchmark better_errors bootsnap bullet @@ -875,6 +886,7 @@ DEPENDENCIES discourse_ai-tokenizers discourse_dev_assets discourse_math_bundle + discourse_voice_assets dry-initializer (~> 3.1) ed25519 email_reply_trimmer @@ -920,8 +932,8 @@ DEPENDENCIES mini_scheduler mini_sql mini_suffix - minio_runner mocha + msgpack multi_json multipart-post mustache @@ -951,15 +963,15 @@ DEPENDENCIES rails-dom-testing rails_failover rails_multisite - railties (~> 8.0.0) + railties (~> 8.1.0) raindrops rake rb-fsevent rbtrace - rchardet redcarpet redis redis-namespace + reverse_markdown (= 3.0.2) rinku rotp rqrcode @@ -978,6 +990,7 @@ DEPENDENCIES ruby-prof ruby-rc4 ruby-readability + ruby-vips (~> 2.3) rubyzip sanitize sassc-embedded @@ -1007,24 +1020,25 @@ DEPENDENCIES CHECKSUMS Ascii85 (2.0.1) sha256=15cb5d941808543cbb9e7e6aea3c8ec3877f154c3461e8b3673e97f7ecedbe5a - actionmailer (8.0.5.1) sha256=c3d2b3f96e1989ea25f51699786a97fcb2536eb7abfc2a667cb8f2376ec08403 - actionpack (8.0.5.1) sha256=a5595c9d824d68884ddc4d3965ab78c897760d3752e190df7efe897371caa1eb - actionview (8.0.5.1) sha256=472a108b9cc2295c4ac3ff09b028045e619875801f48c556f0085210b9cb1440 + actionmailer (8.1.3.1) sha256=88ea441b28ff02a0c6c006468892642a3d9942affce9d294e81a74504aa5c43c + actionpack (8.1.3.1) sha256=974cb7154548e81f470b1b0f247b99cb38e87825899dca58610596e2817723d0 + actionview (8.1.3.1) sha256=2da68b8414c47b43bfbed1ce69c5afe1c04f78c267aacb5660a4cab5ca12cfb6 actionview_precompiler (0.4.0) sha256=33b6bd6ec4c1b856e02fdf5f6512c9eb4a92ac1c0545e941b3e354b7d540ed1c active_model_serializers (0.8.4) sha256=7350e3d3b6a5946bbec033241d908013cc85ff4d584230e6aa074225547c754c - activejob (8.0.5.1) sha256=142407a21b6c3cbc6ddd92ca111ac18ea5c40298eb94d81845cd897a072a6880 - activemodel (8.0.5.1) sha256=559be32aa9c40db7a3ee0aef926d4508a9ebd22f96f7276c11326d21a7dff4a4 - activerecord (8.0.5.1) sha256=9252968fce404d75eb17092498a440d472167f2f8deee32b4658d6552b1eeea7 - activesupport (8.0.5.1) sha256=329a4280c4fbcfcf338ae2cb9df28b0b14527929dba105e10b3604516d998710 + activejob (8.1.3.1) sha256=1c8dd275df930df40deecffec63d913a550a33fd94bd298f69721dd96939954a + activemodel (8.1.3.1) sha256=99cc02ce2faec371d14440949d85787ebd23a907c9baef0a9d4bcd4d21888f88 + activerecord (8.1.3.1) sha256=0a2fb6c28f4938f6b013a3a549bec0a7e37d535f3dc8990e804bcc3258c0403b + activesupport (8.1.3.1) sha256=85458765f25ea48b9019c46b6bb3fa5683197bf4280d9f06710a6e8d7a831376 addressable (2.9.0) sha256=7fdf6ac3660f7f4e867a0838be3f6cf722ace541dd97767fa42bc6cfa980c7af afm (1.0.0) sha256=5bd4d6f6241e7014ef090985ec6f4c3e9745f6de0828ddd58bc1efdd138f4545 annotaterb (4.20.0) sha256=871b2e898d1d60c23bdc59b72a5b840678a56355bf5f6fdeb8c79d317ff98bf7 + anonymous_loader (0.1.3) sha256=084a18e2439144d955447dc11dfc982f41fcd1583ad32d4d55151325dc44cb55 ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383 - auth-sanitizer (0.1.4) sha256=ded72221d4d3a7c91e34e8a87b21e6a42cbf7829697f140dcf49d542422faedc + auth-sanitizer (0.2.3) sha256=db10aac92cfbe4c64ab637eebcbe1d67395d1694798041362173370f59933e3c aws-eventstream (1.4.0) sha256=116bf85c436200d1060811e6f5d2d40c88f65448f2125bc77ffce5121e6e183b - aws-partitions (1.1134.0) sha256=28f5f6156777ac346904a79ce6cb3b14a521e3866fee12a0da86d7b500266d3e - aws-sdk-bedrockruntime (1.74.0) sha256=fc5eb0ab9485fc847bfcef058b8c50f2f7996d4a8266ce3562da2daa5bf1dea5 - aws-sdk-core (3.254.0) sha256=ee3e3220b8468a3c9e59daba18e6ec897bf5c7ce8adcc0670cfa2f1f092112fe + aws-partitions (1.1284.0) sha256=026432da13da430a31ba7c30c0c210b35fa7d738399977f033d4a5a354de58dc + aws-sdk-bedrockruntime (1.83.0) sha256=6e47a53f890fadd8e572335b933d13cd09530f8e63fc6c99fbb608c048936cb9 + aws-sdk-core (3.255.0) sha256=2bac7fbc8796e4e2eb8e6a6edebcb880d7023a922af97b15d2a8a26c9283343f aws-sdk-kms (1.99.0) sha256=ba292fc3ffd672532aae2601fe55ff424eee78da8e23c23ba6ce4037138275a8 aws-sdk-mediaconvert (1.165.0) sha256=d955a571cd8b0407c0778e1d0f2333a70bf9ab48e36c81da8c5b317db24001e4 aws-sdk-s3 (1.227.0) sha256=552b23bf9a37c7db4957e9291543e61c8de886cf31d1d45ea3b429df0feea939 @@ -1035,26 +1049,26 @@ CHECKSUMS benchmark (0.5.0) sha256=465df122341aedcb81a2a24b4d3bd19b6c67c1530713fd533f3ff034e419236c better_errors (2.10.1) sha256=f798f1bac93f3e775925b7fcb24cffbcf0bb62ee2210f5350f161a6b75fc0a73 bigdecimal (3.3.1) sha256=eaa01e228be54c4f9f53bf3cc34fe3d5e845c31963e7fcc5bedb05a4e7d52218 - bootsnap (1.24.5) sha256=36b677448524d279b470469aabd5dff4a980e3fa4931a0df68da4a500eb1b6c4 + bootsnap (1.25.0) sha256=41059e7d0f9cb4023a33465d095f64b913fc9d1b808d6524c307da945fbcffcf builder (3.3.0) sha256=497918d2f9dca528fdca4b88d84e4ef4387256d984b8154e9d5d3fe5a9c8835f - bullet (8.1.3) sha256=c8163c527324fe1180775be48719875726891622f0a73784658b2992acf3c7cb + bullet (8.2.0) sha256=921ed8cde81c939e4eda041345f44f0d0d72c6fbb63aec07d11e5bf653bbe473 capybara (3.40.0) sha256=42dba720578ea1ca65fd7a41d163dd368502c191804558f6e0f71b391054aeef - capybara-playwright-driver (0.5.9) sha256=4c17fed20817b7e1bde2cfc8186e7bf5cd72017ce1aa695e35130f8e600e7282 + capybara-playwright-driver (0.5.10) sha256=e48e572d72bc1043c644fab44985be0a1e75d7d6917dc298355581848982a2c3 cbor (0.5.10.3) sha256=c3aa1d0c7e9bbffe8de4bed554f588d7926c62276ffe2dd7fabb65bae801d28a certified (1.0.0) sha256=aa4cdf0e90e7ee96f6e0ce3daae39eaa8f0486124e0d92daf64d2105aeb9069c - cgi (0.5.1) sha256=e93fcafc69b8a934fe1e6146121fa35430efa8b4a4047c4893764067036f18e9 + cgi (0.5.2) sha256=61ca30298171190fd4fa0d8018e57ada456eae9b7a2b78526debf7f0a0e6f8bb chunky_png (1.4.0) sha256=89d5b31b55c0cf4da3cf89a2b4ebc3178d8abe8cbaf116a1dba95668502fdcfe coderay (1.1.3) sha256=dc530018a4684512f8f38143cd2a096c9f02a1fc2459edcfe534787a7fc77d4b colored2 (4.0.3) sha256=63e1038183976287efc43034f5cca17fb180b4deef207da8ba78d051cbce2b37 - concurrent-ruby (1.3.7) sha256=4412caec3a5ea2e5fdc52076724c071a81f2c0593d83b2ac8cbb8ca63b3151b0 + concurrent-ruby (1.3.8) sha256=b2f1be836e968ccc78ccfce277ea79c72a88633f22306782c16ff23fb415d1e1 connection_pool (2.5.5) sha256=e54ff92855753df1fd7c59fa04a398833355f27dd14c074f8c83a05f72a716ad - console (1.36.0) sha256=45599ea906cf80a73d8941f03abf873fe66a6a954e0bac5bc1c01e2cdc406f07 + console (1.37.0) sha256=8093b286c2595a063849c098594fee5155ecc7967d36f3aa8cbe7569c8f3efd7 cose (1.3.1) sha256=d5d4dbcd6b035d513edc4e1ab9bc10e9ce13b4011c96e3d1b8fe5e6413fd6de5 cppjieba_rb (0.4.4) sha256=319a7ab57b6ec28a8d1b223487ecd114432f1930d7740db2f99c1991e6c8faaf crack (1.0.1) sha256=ff4a10390cd31d66440b7524eb1841874db86201d5b70032028553130b6d4c7e - crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d + crass (1.0.7) sha256=94868719948664c89ddcaf0a37c65048413dfcb1c869470a5f7a7ceb5390b295 css_parser (3.0.0) sha256=eaf0e9283fd581d06e815235ceef4f0910c0b394c606355dbc69f93e84443885 - csv (3.3.5) sha256=6e5134ac3383ef728b7f02725d9872934f523cb40b961479f69cf3afa6c8e73f + csv (3.3.6) sha256=aba61e7e507a66f03d45cb1f3c4b6359861c3504038b422962875dce099e4456 date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) sha256=2e0b0ac6119f2207a6f8ac7d4a73ca8eb4e440f64da0a3136c30343146e952b6 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 @@ -1067,16 +1081,16 @@ CHECKSUMS discourse_ai-tokenizers (0.4.2) sha256=61c2f254582a3ae69255115b2b072904361003612b5b0f52aa64773817aae413 discourse_dev_assets (0.0.6) sha256=4dfe7946927aa3d61a4ba89b5aef39d6daaeb70e35d7125dc481806a5c0aea4e discourse_math_bundle (1.0.1) sha256=c7d82fa65c9680cab2f77daeba32c1b89e500faccd2269e050ab27d5e1bc8337 - docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e + discourse_voice_assets (0.1.0) sha256=67bfbc3e9eaa1805e71ac3c5e2172d8beefdecbfa7b956ed5426e7e057c10cc2 drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 dry-initializer (3.2.0) sha256=37d59798f912dc0a1efe14a4db4a9306989007b302dcd5f25d0a2a20c166c4e3 ed25519 (1.4.0) sha256=16e97f5198689a154247169f3453ef4cfd3f7a47481fde0ae33206cdfdcac506 - email_reply_trimmer (0.2.0) sha256=05843fa5ee1a2037235f1f3c876e922f613e2b4406fea5bb14212d1708d6c525 - erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 + email_reply_trimmer (0.4.0) sha256=cdb8e90649f0d3972c17392063af052e337d13902f5a33a04fac900d544f8f57 + erb (6.0.7) sha256=c5ca6dc25b0ef974a44dc8f59fe847577122483b1968a38dec305c60bf91ee92 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 - excon (1.5.0) sha256=c503ad1d0123bc8ab2a062ff3789dc891ec368cb9e13765ab88a9c58c8bb6d50 + excon (1.7.1) sha256=dd2d870eece1b5ce4e4f9efd938e67a69ccd8c003c3825b638b937e1082eaac2 exifr (1.5.1) sha256=ad87a5dbc92946fbf1d8ccd178d557d95d9168e8b3c5c5f381ea2bffcc312521 - extralite-bundle (2.14) sha256=906c6e61dba586d6a0857e96ba985eef458ecd1b5ee009c8495c2c92ce6f18f4 + extralite-bundle (3.0.1) sha256=49b9b6d459b194b44519d80936d6a98a9e54522e34a8a725fd4e81fdb3944aac fabrication (3.0.0) sha256=a6a0bfad9071348ad3cb1701df788524b888c0cdd044b988893e7509f7463be3 faker (3.5.3) sha256=b961482dc0bb15ccb9a98ea7878b925669e9ae8f5e59b607da540b768137d765 faraday (2.14.3) sha256=1882247e6766615c8220b4392bf1d27f6ebb63d8e28267587cef1fb0bf37f278 @@ -1096,15 +1110,15 @@ CHECKSUMS fiber-local (1.1.0) sha256=c885f94f210fb9b05737de65d511136ea602e00c5105953748aa0f8793489f06 fiber-storage (1.0.1) sha256=f48e5b6d8b0be96dac486332b55cee82240057065dc761c1ea692b2e719240e1 fspath (3.1.2) sha256=b5ac9bafb97e2c8f8f9e303cd98ebd484be76fe9aa588bc4d01c6d99e78c9d75 - globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 + globalid (1.4.0) sha256=037f12fbf1d9d7a014d501c2d5c77356fd4ddd96d7a7991d6700bba96706f427 goldiloader (6.0.0) sha256=613db1b28e9964291255a67a521f04d481b6afd6b9ca56ea1a612fd86e9a89c7 - google-protobuf (4.35.0) sha256=95346162c792ed78c9a28cbf2d937a53f706de6df36a27471582f63f03c30c0d - google-protobuf (4.35.0-aarch64-linux-gnu) sha256=2cabd61b420918aec1564f9f7414e455bf922d20c5f8139d62783df5558a7aea - google-protobuf (4.35.0-aarch64-linux-musl) sha256=f6b11f3420a4564f68e8233c95eac6924f6a727dfc2f81a56af2e09add551501 - google-protobuf (4.35.0-arm64-darwin) sha256=66ab26d3fc82b8950702e53ab16c198e3c0ea3f2a38aaaf1f32152da45593ac5 - google-protobuf (4.35.0-x86_64-darwin) sha256=05eb5c8bc9899135befff496fc0a3642e7ff3d0943f043841dcc456f5654fea0 - google-protobuf (4.35.0-x86_64-linux-gnu) sha256=999226f3b00cd9fddb1b26851d16060212fa1d90c406aaad47e574682b716059 - google-protobuf (4.35.0-x86_64-linux-musl) sha256=be0218520d77b2aee898b363514b03819f6f63f9c041ae0d0d79b4ce5247bffd + google-protobuf (4.36.1) sha256=893ac9d66b36b6ea50da5418f856bc7c2d2072099a578aeefc2d7757dcab6a77 + google-protobuf (4.36.1-aarch64-linux-gnu) sha256=3883fa1b0e99221f68f4a8511bc4fb1888897dcb6cc8bf2805c92c16fc99b499 + google-protobuf (4.36.1-aarch64-linux-musl) sha256=6da393554ecc96168ae6ddf663392bf8ce4e4fce7c18fda348882ce2e97d6a87 + google-protobuf (4.36.1-arm64-darwin) sha256=4d82184f4582dfa123f9793cd7a73beca9b0d3f0d3717948c4120b6cc0d50f2d + google-protobuf (4.36.1-x86_64-darwin) sha256=e92bf3c90c0a9c410cbe430cf366190b1b9b5b2b784f6195a43a178c2ef7e338 + google-protobuf (4.36.1-x86_64-linux-gnu) sha256=e735a3f3d6596b1010013c2030778bc030770e659106fe7e4ae0f07631b551cb + google-protobuf (4.36.1-x86_64-linux-musl) sha256=ae2712b7960e8b1f96d52fef8c2c0dc1cd230f2be13e48492dad0aa2a6a7cf03 guess_html_encoding (0.0.11) sha256=cab6468b945f38673fc41ad147fbbc89693b3c6c34b03b071e2ed669a603e098 hana (1.3.7) sha256=5425db42d651fea08859811c29d20446f16af196308162894db208cac5ce9b0d hashdiff (1.2.1) sha256=9c079dbc513dfc8833ab59c0c2d8f230fa28499cc5efb4b8dd276cf931457cd1 @@ -1118,17 +1132,17 @@ CHECKSUMS image_size (3.6.0) sha256=1b9c4196cb658bf503a887920543a3991e927a4b767a5c770fb9665bce0dcb28 in_threads (1.6.0) sha256=91a7e6138d279dc632f59b8a9a409e47148948e297c0f69c92f9a2479a182149 inflection (1.0.0) sha256=ceba9b26fc28b9af82e33e822d28f78a4312af75687efec81d5ef1062498d355 - io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc + io-console (0.9.2) sha256=efa74f891dd03c0939a931dfc6e74c2813d904763d456ea9762b0525e748db08 irb (1.18.0) sha256=de9454a0703a54704b9811a5ef31a60c86949fbf4013fcf244fabc7c775248e3 iso8601 (0.13.0) sha256=298c2b15b7be5fa95a1372813d36a2257656cd8e906dfbc1f5cb409851425aa2 jmespath (1.6.2) sha256=238d774a58723d6c090494c8879b5e9918c19485f7e840f2c1c7532cf84ebcb1 - json (2.19.9) sha256=9b9025b7cdddafa38d316eca0b2358488e42d417045c1b90d216a9fefe46b79a + json (2.21.2) sha256=1f1d3b7cf2b3ba1a69beca0bb6db13d5438b80bff3cd54cdaaa620b9b07c1c6a json-schema (6.2.0) sha256=e8bff46ed845a22c1ab2bd0d7eccf831c01fe23bb3920caa4c74db4306813666 json_completer (1.2.0) sha256=4665749172634eccb208c562eb59ea81dd7a612a1fa9a36df441ac473ff177b1 json_schemer (2.5.0) sha256=2f01fb4cce721a4e08dd068fc2030cffd0702a7f333f1ea2be6e8991f00ae396 - jwt (2.10.1) sha256=e6424ae1d813f63e761a04d6284e10e7ec531d6f701917fadcd0d9b2deaf1cc5 - landlock (0.4.1) sha256=95c9b119ff831fae35756ddcd5e9d5f99b9705be71f37a0972f86c825b78b14f - language_server-protocol (3.17.0.5) sha256=fd1e39a51a28bf3eec959379985a72e296e9f9acfce46f6a79d31ca8760803cc + jwt (3.2.0) sha256=5419b1fe37b1da0982bd07051f573a8b8789ab724c2aa7e785e4784a3ed217d7 + landlock (0.5.1) sha256=4c66c5ea238ce0fb4dbf0ea8697da3af01f396f86b34f1f5c323969bc524eba0 + language_server-protocol (3.17.0.6) sha256=5ef2c0c138f8267e1bc631d3328347d354f96724b0af22f2c79516120443b7f0 libv8-node (24.12.0.1) sha256=d93d23b861bfe5de3ba829e34a142402fb83b4c3592dd58d9ac4e027588d739a libv8-node (24.12.0.1-aarch64-linux) sha256=22bd0246cde85d70c88cf772727ac3677a20ac1d169105f82efe5f1f7c39f755 libv8-node (24.12.0.1-aarch64-linux-musl) sha256=791b5960f79525e87d1bd1e5f2bf3715ef2a38bac6c97f297853e98a8411ba89 @@ -1141,18 +1155,18 @@ CHECKSUMS listen (3.10.0) sha256=c6e182db62143aeccc2e1960033bebe7445309c7272061979bb098d03760c9d2 literate_randomizer (0.4.0) sha256=05073c9b383983b1ed7e26c40b963468e91bc86e663b3eeff3a4af91b84217b1 logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203 - lograge (0.14.0) sha256=42371a75823775f166f727639f5ddce73dd149452a55fc94b90c303213dc9ae1 + lograge (0.15.0) sha256=34072c1f50b95019dc185137f5fec1a6759f5a1b6d55c28163d0cba204e6df16 logstash-event (1.2.02) sha256=89a7dc60fac67070a5f60ba07409e541b09cb58906c391e90cb74b9f217467ae logster (2.21.0) sha256=5edc71ea98d5f89fe081556893f77b7c4d2617341dae7d421fc37539cfb13a02 - loofah (2.25.1) sha256=d436c73dbd0c1147b16c4a41db097942d217303e1f7728704b37e4df9f6d2e04 + loofah (2.25.2) sha256=2007f746959ac65552456e04b433e83deb22759ab38c838b4445c70e43425918 lru_redux (1.1.0) sha256=ee71d0ccab164c51de146c27b480a68b3631d5b4297b8ffe8eda1c72de87affb lz4-ruby (0.3.3) sha256=011be5ee230cfddc8308d4e2e0b05300c7bc755a887de799377ca6c5b6aede89 - mail (2.9.0) sha256=6fa6673ecd71c60c2d996260f9ee3dd387d4673b8169b502134659ece6d34941 + mail (2.9.1) sha256=06574eca475253d6c18145dd70af80d0eb970182d55053497c5f4d797ea160e8 markbridge (0.4.0) sha256=27645fd47489d2fd42068153fa471b7e5231dd8dabb31c1bf38c88aa37535b12 matrix (0.4.3) sha256=a0d5ab7ddcc1973ff690ab361b67f359acbb16958d1dc072b8b956a286564c5b maxminddb (0.1.22) sha256=50933be438fbed9dceabef4163eab41884bd8830d171fdb8f739bee769c4907e memory_profiler (1.1.0) sha256=79a17df7980a140c83c469785905409d3027ca614c42c086089d128b805aa8f8 - message_bus (4.5.2) sha256=f1381bce05d9560e5ea7dfa56e44dfdf0080bda0ac02f4011eb662bb7dd9e778 + message_bus (5.0.0) sha256=9bbb413b8103140885172db6d0674a2eb95c18c98faca0acfdc1126ec5a4c0cf messageformat-wrapper (1.1.0) sha256=ecea879626e412d1bc841c457dacfcbb1a62cf88ca83573e4ea34bb371f160bc method_source (1.1.0) sha256=181301c9c45b731b4769bc81e8860e72f9161ad7d66dd99103c9ab84f560f5c5 migrations-converters (0.0.1) @@ -1160,55 +1174,54 @@ CHECKSUMS migrations-importer (0.0.1) migrations-tooling (0.0.1) mime-types (3.7.0) sha256=dcebf61c246f08e15a4de34e386ebe8233791e868564a470c3fe77c00eed5e56 - mime-types-data (3.2026.0414) sha256=461c4c655373a44bd6c5fe54bcf5b7776026ea96e808144b1ec465c4b99148cc + mime-types-data (3.2026.0701) sha256=cd8811e1fb89d836499ba0582368a10ee74cef929ba956d1d5ddca045e6a730f mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef mini_portile2 (2.8.9) sha256=0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289 - mini_racer (0.22.0) sha256=52e4c1797bcb01be550d8317764ac5ca8aa96b37f8f72dec6e090db99847ae30 + mini_racer (0.22.1) sha256=c0a7baa4035fe57488bf9856bdafb657c99997cbe0441b1838cfd886fe21518a mini_scheduler (0.20.0) sha256=bd8948228bf4a48a603a8e20de850d16b68295413d8651c8c05288f4c6997b05 mini_sql (1.6.0) sha256=5296637f6a4af5bb43e06788037e9a2968ff9c8eb65928befcba8cb41f42d6ee mini_suffix (0.3.3) sha256=8d1d33f92f69a2247c9b7d27173235da90479d955cdb863b63a7f53843b722e7 - minio_runner (1.1.0) sha256=ebb2bedea253011fcd34ed3229706c9b453f0f363601dee7ce065e0163bdcf2f minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 mocha (3.1.0) sha256=75f42d69ebfb1f10b32489dff8f8431d37a418120ecdfc07afe3bc183d4e1d56 - msgpack (1.8.3) sha256=8bda4a6428d3244e50d6bd55854d354edbada88a4e1f4f5731a39a0f86bee6a1 - multi_json (1.20.1) sha256=2f3934e805cc45ef91b551a1f89d0e9191abd06a5e04a2ef09a6a036c452ca6d + msgpack (1.8.4) sha256=4411c22d350dd1c20250f7eada3cca2695438c2f769cf0782f0cd065d90a3e7b + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 multi_xml (0.9.1) sha256=7ce766b59c17241ed62976caeae1fae9b2431b263398c35396239a68c4a64e57 multipart-post (2.4.1) sha256=9872d03a8e552020ca096adadbf5e3cb1cd1cdd6acd3c161136b8a5737cdb4a8 - mustache (1.1.2) sha256=d420243400354da78ded2d81541b381ad8d94e8e9b95022d0d71d66f8ef36c00 + mustache (1.1.3) sha256=75bdfeaa17e4af168fae2c262867b2992087aef39d8580965cb90d37a7d093c2 net-http (0.9.1) sha256=25ba0b67c63e89df626ed8fac771d0ad24ad151a858af2cc8e6a716ca4336996 - net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d + net-imap (0.6.6) sha256=96aa4ee50df3060203e649efc341f53480b791d49e150f2fdebf68beb141a8df net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 - net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8 + net-protocol (0.3.0) sha256=ba310c3d4f1cad46bb1ab20336b06669b1ff8f7c568d9cb9342b32a718547472 net-smtp (0.5.1) sha256=ed96a0af63c524fceb4b29b0d352195c30d82dd916a42f03c62a3a70e5b70736 nio4r (2.7.5) sha256=6c90168e48fb5f8e768419c93abb94ba2b892a1d0602cb06eef16d8b7df1dca1 - nokogiri (1.19.3) sha256=78312cbac32a40c812780d9678221b79d51288eec00054c1a8d15f7ce05960e8 - nokogiri (1.19.3-aarch64-linux-gnu) sha256=46b89e5d7b9e844c2ee360794240c6ea2a4e6fa0c5892a4ed487db621224b639 - nokogiri (1.19.3-aarch64-linux-musl) sha256=8392dfdcd21be7a94dbbe9ccc138dea01b97b24cb2dc02a114ca98bfb1d9a0b7 - nokogiri (1.19.3-arm64-darwin) sha256=71b9bd424b1b7abc18b05052a1a3cfd3627abdca62be280854cc411791357e42 - nokogiri (1.19.3-x86_64-darwin) sha256=77f3fba57d46c53ab31e62fc6c28f705109d1bf6264356c76f132b2be5728d4d - nokogiri (1.19.3-x86_64-linux-gnu) sha256=2f5078620fe12e83669b5b17311b32532a8153d02eee7ad06948b926d6080976 - nokogiri (1.19.3-x86_64-linux-musl) sha256=248c906d2166eca5efb56d52fdee5f9a1f51d69a72e2b64fdac647b4ce39ea3f - oauth (1.1.5) sha256=0ec467908f5819a54d1659d33e8bb520e8475cc87a452d6ecfaa5db351999cca - oauth-tty (1.0.8) sha256=d9a63b67af17c22517f868c59f12178e4ee19a367536d1a6dcb74d9d07a41e07 - oauth2 (1.4.11) sha256=6739fcc8872bc94f476b0cae3e8bd78a56d8364b1b79b0757794c25e152d5c10 + nokogiri (1.19.4) sha256=50c951611c92bca05c51411aef45f1cbc50f2821c4802758c5c6d34696533ab5 + nokogiri (1.19.4-aarch64-linux-gnu) sha256=1269fb644a6de405057a53dd5c762b1209b43ca7424f839454d3dbc677c31a8f + nokogiri (1.19.4-aarch64-linux-musl) sha256=35c65b9ce72b3bb03207bdbe7067915019dc18c1b9b59139684bd6690fdd01af + nokogiri (1.19.4-arm64-darwin) sha256=a46db9853286e6597b36ebc6953817d15acf3a299583eb3f89fdc6f91dd63527 + nokogiri (1.19.4-x86_64-darwin) sha256=7fd17057d3e1f00e9954a74b3cd76595d3d4a5ef233b7ed9599047c204f70551 + nokogiri (1.19.4-x86_64-linux-gnu) sha256=379fae440b28915e3f19d752ce2dcf8465ed2b2fbefd2a7ca0dd497bc981a06a + nokogiri (1.19.4-x86_64-linux-musl) sha256=17dfb7c1fa194ae02fbf7c51a7afc8d278045ab3fdacfd86f91d02d7b274470b + oauth (1.1.8) sha256=7bf0b774391af4f820a86ce2cc7fa38c3fad5121b5563592535cff4b2e16d50e + oauth-tty (1.0.13) sha256=71ad5f93ceea6fd21fe9a731dc02a4b892c5de9d77e0b303e81bd73f9daeb4a3 + oauth2 (2.0.25) sha256=2f736a2f93c2caa67c1b08dc3c9889bb907d62643f3183fefaa1723cba6a82ac octokit (10.0.0) sha256=82e99a539b7637b7e905e6d277bb0c1a4bed56735935cc33db6da7eae49a24e8 - oj (3.16.12) sha256=ad9fad6a06dabcf4cfe6a420690a4375377685c16eee0ae88e8d38a43ed7b556 + oj (3.17.6) sha256=f511257e01a12030c3ceb8023cd2e96fca924ea9c741f57ea366816f1fd8e68c omniauth (2.1.2) sha256=def03277298b8f8a5d3ff16cdb2eb5edb9bffed60ee7dda24cc0c89b3ae6a0ce omniauth-facebook (10.0.0) sha256=dfdc6cbada5387572d554784861546cf6382f9fa16c4731cbe5813e570fcb9e1 - omniauth-github (2.0.0) sha256=1ca26576125a97e27d3f8dc39cd98853d7382dd0fc04a40d3b9ec345ee378649 - omniauth-google-oauth2 (1.0.1) sha256=2ed7a4ac8d98ab824c95e0d6760784abf1248262b3ba2ab56ec7ebd7074d12a6 + omniauth-github (2.0.1) sha256=8ff8e70ac6d6db9d52485eef52cfa894938c941496e66b52b5e2773ade3ccad4 + omniauth-google-oauth2 (1.2.3) sha256=bdbab67e64e50b7902eee2dcfc2225575cefba15ab89a3b6e92c8947987c1da9 omniauth-oauth (1.2.1) sha256=25bf22c90234280fa825200490f03ff1ce7d76f1a4fbd6c882c6c5b169c58da8 - omniauth-oauth2 (1.7.3) sha256=3f5a8f99fa72e0f91d2abd7475ceb972a4ae67ed59e049f314c0c1bad81f4745 - omniauth-twitter (1.4.0) sha256=c5cc6c77cd767745ffa9ebbd5fbd694a3fa99d1d2d82a4d7def0bf3b6131b264 - openssl (3.3.2) sha256=7f4e01215dc9c4be1fca71d692406be3e6340b39c1f71a47fea9c497decd0f6c + omniauth-oauth2 (1.9.0) sha256=ed15f6d9d20991807ce114cc5b9c1453bce3645b64e51c68c90cff5ff153fee8 + omniauth-twitter (1.5.0) sha256=f7d488524113b2f654e1d7f722790dc03d92102cb7c947331ad2d68340a362e3 + openssl (4.0.2) sha256=1037ad2868ae58df9ad917891c0c0f9815a1172f6846d4bcdd508e4c2ee747c2 openssl-signature_algorithm (1.3.0) sha256=a3b40b5e8276162d4a6e50c7c97cdaf1446f9b2c3946a6fa2c14628e0c957e80 optimist (3.2.1) sha256=8cf8a0fd69f3aa24ab48885d3a666717c27bc3d9edd6e976e18b9d771e72e34e ostruct (0.6.3) sha256=95a2ed4a4bd1d190784e666b47b2d3f078e4a9efda2fccf18f84ddc6538ed912 parallel (2.1.0) sha256=b35258865c2e31134c5ecb708beaaf6772adf9d5efae28e93e99260877b09356 parallel_tests (5.7.0) sha256=3f1762c46ca2c223b8af8ef877217f9d76974e191bfa934f2580b58bcf1d005c - parser (3.3.11.1) sha256=d17ace7aabe3e72c3cc94043714be27cc6f852f104d81aa284c2281aecc65d54 + parser (3.3.12.0) sha256=21a6d7f755d5a24dfbdc6e6b772e4e879a52e7631a88bc5a3a134606052c9828 pastel (0.8.0) sha256=481da9fb7d2f6e6b1a08faf11fa10363172dc40fd47848f096ae21209f805a75 - pdf-reader (2.15.1) sha256=18c6a986a84a3117fa49f4279fc2de51f5d2399b71833df5d2bccd595c7068ce + pdf-reader (2.16.0) sha256=bf1b5564c085264d8279bde3cf1467778b75841494d20c0fe7da3dad475f3732 pg (1.6.3) sha256=1388d0563e13d2758c1089e35e973a3249e955c659592d10e5b77c468f628a99 pg (1.6.3-aarch64-linux) sha256=0698ad563e02383c27510b76bf7d4cd2de19cd1d16a5013f375dd473e4be72ea pg (1.6.3-aarch64-linux-musl) sha256=06a75f4ea04b05140146f2a10550b8e0d9f006a79cdaf8b5b130cde40e3ecc2c @@ -1217,8 +1230,8 @@ CHECKSUMS pg (1.6.3-x86_64-linux) sha256=5d9e188c8f7a0295d162b7b88a768d8452a899977d44f3274d1946d67920ae8d pg (1.6.3-x86_64-linux-musl) sha256=9c9c90d98c72f78eb04c0f55e9618fe55d1512128e411035fe229ff427864009 pitchfork (0.18.2) sha256=95d0b5a25792ebc94d627abd8a206652ff22acff1cc32ecd42c71669ead4ab94 - playwright-ruby-client (1.60.0) sha256=942242d6130e797b21213d9c49dc09d31235cab429a9edae73401ed112c94853 - pp (0.6.3) sha256=2951d514450b93ccfeb1df7d021cae0da16e0a7f95ee1e2273719669d0ab9df6 + playwright-ruby-client (1.62.0) sha256=44eb6051ab7987f68a1288a7db7892403e59680116739987729c5fecfdb55715 + pp (0.6.4) sha256=dfcb0fce700c41456265922884f9fe195d7fbb0674a3578e6c0f69588e82b570 prettier_print (1.2.1) sha256=a72838b5f23facff21f90a5423cdcdda19e4271092b41f4ea7f50b83929e6ff9 prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 @@ -1226,21 +1239,20 @@ CHECKSUMS propshaft (1.3.2) sha256=1d56a3e56a92c21bfc29caf07406b5386b00d4c47ddf357cf989a5a234b1389e pry (0.16.0) sha256=d76c69065698ed1f85e717bd33d7942c38a50868f6b0673c636192b3d1b6054e pry-rails (0.3.11) sha256=a69e28e24a34d75d1f60bcf241192a54253f8f7ef8a62cba1e75750a9653593d - psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 public_suffix (7.0.5) sha256=1a8bb08f1bbea19228d3bed6e5ed908d1cb4f7c2726d18bd9cadf60bc676f623 puma (8.0.2) sha256=c8ed871dfbbe66448ea9ffd46692342d9804d4071522b52b5331b7b6e7b686fb racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f - rack (2.2.23) sha256=a8fe9d7e07064770b8ec123663fded8a59ef7e2b6db5cda7173d45a5718ab69c - rack-mini-profiler (4.0.1) sha256=485810c23211f908196c896ea10cad72ed68780ee2998bec1f1dfd7558263d78 + rack (2.2.24) sha256=ef16526a0d871c43753452338c754040a664c8b41bf0dd7450b85f7772adca5f + rack-mini-profiler (5.0.0) sha256=99c5ba087fa91c8d9ba80a43f6b2213f1ebead6e863d49286170129d391302e1 rack-protection (3.2.0) sha256=3c74ba7fc59066453d61af9bcba5b6fe7a9b3dab6f445418d3b391d5ea8efbff rack-session (1.0.2) sha256=a02115e5420b4de036839b9811e3f7967d73446a554b42aa45106af335851d76 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (1.0.1) sha256=ba86604a28989fe1043bff20d819b360944ca08156406812dca6742b24b3c249 rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d - rails-html-sanitizer (1.7.0) sha256=28b145cceaf9cc214a9874feaa183c3acba036c9592b19886e0e45efc62b1e89 + rails-html-sanitizer (1.7.1) sha256=e797a7c9b01e567307e317c576b49ab4168017e63eea4dba9ce3cb587e2f22c2 rails_failover (2.3.0) sha256=eed6ea0674fd6f9f6b070ad297ad2ead121ecf9202920f6068b6a4f29d9491c9 - rails_multisite (7.0.0) sha256=7aacf364ed86d2bee73fb679cbfe6c343ce89067b9746b3d5857fffc57f036f2 - railties (8.0.5.1) sha256=da1958e1d9dab04691a2f8721b3ff7fab323715d37f103c19972dedfd644d5c7 + rails_multisite (9.0.0) sha256=2bc88f0405cb88d1055712095a11c4eb8ce1d4a36599d1226c6779946be495e6 + railties (8.1.3.1) sha256=2388a232579a00cefea4487de66c8553c3408c1300abdc6cf1799d86ffb04487 rainbow (3.1.1) sha256=039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a raindrops (0.20.1) sha256=aa0eb9ff6834f2d9e232ba688bd49cb30be893bc5a3452e74722c94c1fab4730 rake (13.4.2) sha256=cb825b2bd5f1f8e91ca37bddb4b9aaf345551b4731da62949be002fa89283701 @@ -1248,21 +1260,21 @@ CHECKSUMS rb-fsevent (0.11.2) sha256=43900b972e7301d6570f64b850a5aa67833ee7d87b458ee92805d56b7318aefe rb-inotify (0.11.1) sha256=a0a700441239b0ff18eb65e3866236cd78613d6b9f78fea1f9ac47a85e47be6e rb_sys (0.9.130) sha256=7d486d99c1da02635515deaf9860fc5aea90bb4ab2589b2deec7fdc7d3548615 - rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 - rbtrace (0.5.4) sha256=8279e40076530f0301e255d0669cfe0d7d31ef872d1ae475c486e5a1199b757b - rchardet (1.10.2) sha256=e041cb195f464dc10e49ab130f78c8b5956cd9a4f4f6df84e0c183b87c135f33 - rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + rbs (4.2.0) sha256=51f7b886dcc05bc09e10b901daa6a81829f6adc03101d6ca9ea4aac6103e0674 + rbtrace (0.5.5) sha256=ed0200ffeac4251f3464412e52f36cd64c473673c2739129e0b48c568672fe68 + rdoc (8.0.0) sha256=03bf8c08a9639658855a0cfd77c0abca8325c227693f7f33f82957811348c469 redcarpet (3.6.1) sha256=d444910e6aa55480c6bcdc0cdb057626e8a32c054c29e793fa642ba2f155f445 - redis (5.4.0) sha256=798900d869418a9fc3977f916578375b45c38247a556b61d58cba6bb02f7d06b - redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis (6.0.0) sha256=de71c10edd106986b759ec7ecdd08b63b9c0ee7414a0d0c1da73d31ba2bccda6 + redis-client (0.30.1) sha256=5151bc5c7bbfe48623732cdae3b900d8a22dc691cc7cdfacfb351ac55116522d redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb - reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + reline (0.7.0) sha256=5b012d8e55dbf9d450f12bde2cf7d15ff546ae80b3f8f3b30e570d431815583d request_store (1.7.0) sha256=e1b75d5346a315f452242a68c937ef8e48b215b9453a77a6c0acdca2934c88cb + reverse_markdown (3.0.2) sha256=818ebb92ce39dbb1a291690dd1ec9a6d62530d4725296b17e9c8f668f9a5b8af rexml (3.4.4) sha256=19e0a2c3425dfbf2d4fc1189747bdb2f849b6c5e74180401b15734bc97b5d142 rinku (2.0.6) sha256=8b60670e3143f3db2b37efa262971ce3619ec23092045498ef9f077d82828d7d rotp (6.3.0) sha256=75d40087e65ed0d8022c33055a6306c1c400d1c12261932533b5d6cbcd868854 - rouge (5.0.0) sha256=e2de9bba2f9cb88f8a73bca3643b560b2b398f32f91bf716f584477bc0175ebc + rouge (5.1.0) sha256=b77c632842ab7f5147940212f0345808cccfbce864fd5b631d7d12a35ac85452 rqrcode (3.2.0) sha256=64c1494ca6bb67d731330f38b50e3fd09eeab4f5dcd04b608e21218d1d0b9542 rqrcode_core (2.1.0) sha256=f303b85df89c1b8fc5ee8dc19808c9dc4330e6329b660d99d4a8cbb36ca13051 rrule (0.8.0) sha256=abb19a334efe441879012de9c2f5589372a20097a63a70f5ff9d3b0b4504a4f2 @@ -1277,67 +1289,65 @@ CHECKSUMS rss (0.3.3) sha256=37ef1ec4d691d67edbe92159079a4e89a0965e6a6b32246009ae3d734d12d1ab rswag-specs (2.17.0) sha256=a3b2bdf6df89f8741fe4a4ee47ceb1e77dc13e1c96bbe07352117d6e61afa9e3 rtlcss (0.2.1) sha256=213d5a00bf61267f93a7a516d699d77e1cc5f396743abb33c01e3f3243a7bf60 - rubocop (1.86.1) sha256=44415f3f01d01a21e01132248d2fd0867572475b566ca188a0a42133a08d4531 - rubocop-ast (1.49.1) sha256=4412f3ee70f6fe4546cc489548e0f6fcf76cafcfa80fa03af67098ffed755035 - rubocop-capybara (2.23.0) sha256=f9ea1ba3a7561ee8e88cf76fc378ce517ce5327155f305ee7b5c2500e5aee357 - rubocop-discourse (3.18.0) sha256=bdb31f13cbb1ed82443b5a53b36efbce3b52a77b7a0f3ee7b421ce81d937ce0b + rubocop (1.91.0) sha256=9c82b7bf391c5d7e3798c5b9996e22a1fe3bd7468e351dfdeb96140c058296d0 + rubocop-ast (1.50.0) sha256=b9ca88300da0803ee222ad20cdb30494c0a784eed06fdc35d254b06d662788db + rubocop-capybara (3.0.0) sha256=7a64655238acda7f8f3c87e37ac825a64c615a79c17c253f1a28270dc3768c4b + rubocop-discourse (3.20.0) sha256=47086bcf9b937e469398e82615fc4a6b86bd40df73bf85611a9109a83a1e9c70 rubocop-discourse-base (1.0.0) sha256=a4121f0f2a8e32c3259fee22106af9fd35372cbeac14b0c69673bdee79b472b7 rubocop-factory_bot (2.28.0) sha256=4b17fc02124444173317e131759d195b0d762844a71a29fe8139c1105d92f0cb - rubocop-rails (2.34.3) sha256=10d37989024865ecda8199f311f3faca990143fbac967de943f88aca11eb9ad2 - rubocop-rspec (3.9.0) sha256=8fa70a3619408237d789aeecfb9beef40576acc855173e60939d63332fdb55e2 + rubocop-rails (2.37.0) sha256=6e1645add5060e0328f8ddda0d820f55697c591394398bf14bb9dccb62f14b7e + rubocop-rspec (3.10.2) sha256=0b3e2ecc592cd10ecbf0095bb58d1e357905276e069643523cc19eb7495f65e2 rubocop-rspec_rails (2.32.0) sha256=4a0d641c72f6ebb957534f539d9d0a62c47abd8ce0d0aeee1ef4701e892a9100 - ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 + ruby-lsp (0.26.11) sha256=4cc8f1587237ff8c9031680b5491df901a82559eeaa1ae96863ffe700b32583d ruby-lsp-rails (0.4.8) sha256=f09d1f926d4063deeb2f3049311925c20dfe6c912371e3bcd04a265a865c44ae ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-prof (2.0.5) sha256=dbc3b5112089538ac33303145db0cbd77cbdcdbc05b09e44a967ff72a36d6c0e ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 ruby-rc4 (0.1.5) sha256=00cc40a39d20b53f5459e7ea006a92cf584e9bc275e2a6f7aa1515510e896c03 ruby-readability (0.7.3) sha256=bd213fab037118cc15d999e167a8ea2cc6b689dc78c033e78fb36a2a37efc241 + ruby-vips (2.3.0) sha256=e685ec02c13969912debbd98019e50492e12989282da5f37d05f5471442f5374 ruby2_keywords (0.0.5) sha256=ffd13740c573b7301cf7a2e61fc857b2a8e3d3aff32545d6f8300d8bae10e3ef - rubyzip (3.3.1) sha256=2ed92112c7c43ba2b2527f35e6d99d9c2c99270b640aad5227516436481b1e4e + rubyzip (3.6.0) sha256=268994d44d62282d1cfd99bf10eae48d7267199158ad7ea3e1fee2da9458b695 samovar (2.5.1) sha256=8a9fc41eb8868084f0321eb41678c485cfbc7d282fb306c0be67c3284b1d2394 sanitize (7.0.0) sha256=269d1b9d7326e69307723af5643ec032ff86ad616e72a3b36d301ac75a273984 - sass-embedded (1.100.0) sha256=b7d4831f304be5ba8717b2a1307644164b63dc158113a67f469e90578d3fc092 - sass-embedded (1.100.0-aarch64-linux-gnu) sha256=c13187f8eaae7e7e64246b18eb896534a84465a17198829ef65730db4662860e - sass-embedded (1.100.0-aarch64-linux-musl) sha256=1b0945a66cd4e40f505db73b1e790e2561e07e6d9fd04ef6ebbf279835666b3f - sass-embedded (1.100.0-arm64-darwin) sha256=d294b32c3b7bed293ad39bd392713c07f1df5454e65fa0f8d80dadbdba8a0cf4 - sass-embedded (1.100.0-x86_64-darwin) sha256=3db80c837a60712de3461d5aa1be43c7056a0584d7182a8ae7a8996d64ab46d3 - sass-embedded (1.100.0-x86_64-linux-gnu) sha256=58dd0a8a4f0dd78881b90d8b0e4d0eed042d54865b19b71384d91091ade93e18 - sass-embedded (1.100.0-x86_64-linux-musl) sha256=03dbee81bf93e770c725caf0c895e04c7b049ebef56b8a7002fcf21e6bedf7c5 - sassc-embedded (1.80.8) sha256=ea62825e4031cc8267e6befd492bcf8e29f11ccc18500f4e8ee9adb7feb6d563 + sass-embedded (1.104.0) sha256=308c7cc890de96d77556d515e5958ba2fcfbc69978496ea2b2f0565dd5869bfd + sass-embedded (1.104.0-aarch64-linux-gnu) sha256=99e2b95e8101928f8976c7a3f7cced5c5e4289ceb8aca0e1dedd9bb13645e417 + sass-embedded (1.104.0-aarch64-linux-musl) sha256=d54f9dc45e753d29a999021f24cfc126b49c61f14bcb8e96209a02288cde22c3 + sass-embedded (1.104.0-arm64-darwin) sha256=b1409415e06931b43c2a498fc430fe8ddbad9706be5bb3c4e20b60c14f56b122 + sass-embedded (1.104.0-x86_64-darwin) sha256=d463b65e6fefcae614352f7a4dcea61d399f35a1238822b38d88471cee954717 + sass-embedded (1.104.0-x86_64-linux-gnu) sha256=7aeaa07beff7db254836599f1524ac7b67216729613ebc57e3828b94345f0488 + sass-embedded (1.104.0-x86_64-linux-musl) sha256=bc14555f68aa7057e923d400726c1623bb603101eef6340962e4e80ee89e67ba + sassc-embedded (1.80.9) sha256=bf90ad875181548646c1dcc317f985471980a7f5a71a87103536a6d3810dfeaa sawyer (0.9.3) sha256=0d0f19298408047037638639fe62f4794483fb04320269169bd41af2bdcf5e41 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 - shoulda-matchers (7.0.1) sha256=b4bfd8744c10e0a36c8ac1a687f921ee7e25ed529e50488d61b79a8688749c77 + shoulda-matchers (8.0.1) sha256=5dbb46e5765b9da225111b085e0819e8c8a121ff94bba430a153eb1ea2c60288 sidekiq (7.3.10) sha256=781eb4f65ef36042534ad73d72f211283afb7fee82eec786ada4ed1972ef8e3c - simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 - simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 - simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 - simpleidn (0.2.3) sha256=08ce96f03fa1605286be22651ba0fc9c0b2d6272c9b27a260bc88be05b0d2c29 + simplecov (1.1.1) sha256=25825ef13f0b2e74694d769817dad6ab8e90131dabdaa666e522fea105521e78 + simpleidn (0.3.0) sha256=12ca730bed2f3db04d11e9bfd1bca3e11fb37f55b21eb2e9793fb5814bf54d03 smarter_json (1.2.6) sha256=6638a2d23954e26d268212b4c8f5b9871d31b72f3d169371cca1082c1a722b45 - snaky_hash (2.0.4) sha256=2b12758c57defa6796341a1620f84b1a23737421d8d7e2575d0550b53cc4fece - sqlite3 (2.9.5) sha256=04572973a3f943ad50a8adfffc8dd752a5f06e4c3db2026f71838fed8a982606 - sqlite3 (2.9.5-aarch64-linux-gnu) sha256=78075b6337d3d182c6d2b4691049ed45cd220826160c9ea18946bf6a1de200dc - sqlite3 (2.9.5-aarch64-linux-musl) sha256=18c801185deb4adc01ddb281e8f672a39e3d1729979ca91e39439cd3eac0402d - sqlite3 (2.9.5-arm64-darwin) sha256=d0cf444a70fc9395d513cfbcc1e6719e224aa645314e3824cb0474c721425aa2 - sqlite3 (2.9.5-x86_64-darwin) sha256=8e9caae38bd7ebb29cbeee3e7ab1d12dc2327d9a1b92c7fcf0dda05589627a81 - sqlite3 (2.9.5-x86_64-linux-gnu) sha256=233dbcb6714148dd23bc5aeb33e8efd6eac974969564ddd5794c23d5f52b231e - sqlite3 (2.9.5-x86_64-linux-musl) sha256=e7d3a7474e8af0f96150c21abc203fbab5437206bfcdf11deab7741c0ca516f2 + snaky_hash (2.0.7) sha256=7d02c70012a3f932e48860cd024577908300c9aa615e0cb9b450aaa749cbcb4d + sqlite3 (2.9.6) sha256=956fe606956420d04ac7157d3ace620c8caba2135b2e05c76e483493da24d08e + sqlite3 (2.9.6-aarch64-linux-gnu) sha256=d8b1f7d23efd7abac285775a9566562fc7debfef79d594e3a20354406fb7907c + sqlite3 (2.9.6-aarch64-linux-musl) sha256=3579e1c98cdc7ff5c3722847bb63ed4e1efb7ff675cb5e1e48ef2d4da5fb3bc9 + sqlite3 (2.9.6-arm64-darwin) sha256=849b5d7f795e60fe25076d62c72dd722beb45b3850b516ad978d60ee848ec15b + sqlite3 (2.9.6-x86_64-darwin) sha256=b5842fea77781c14da03fa7bc0feb82db03a69e135affcb6f5399cbd2797a5f3 + sqlite3 (2.9.6-x86_64-linux-gnu) sha256=613188ce02f614126ddbc38c5e217ccffd6306d0dcd9adca9764547aa890a634 + sqlite3 (2.9.6-x86_64-linux-musl) sha256=d493b11818a3573387a1d56e1ee8fa00da23a683a7a1cc063e7a0feeed843abf sshkey (3.0.0) sha256=655ba351d6e01a48dfe59d65530af8975c777b8cc57a061770de3228ff2d11cd ssrf_filter (1.5.0) sha256=e03dcdb9d1730d7f6710532a606b3543df2a448a0293ce04a2d995523c5a97f6 stackprof (0.2.28) sha256=4ec2ace02f386012b40ca20ef80c030ad711831f59511da12e83b34efb0f9a04 - stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 - stripe (11.1.0) sha256=a76e82cc7e4d2433803ca5fbe9453d019df376236f0b9fbcb7f36e6dd327f98d + stripe (19.6.2) sha256=9a614976a25aba0adbef9ce770c1e242b0e7fcb20d61924fed5e79e1e10dd49c strscan (3.1.8) sha256=aae2db611a225559f21ffbb71765c9a4e60fd262534a9ea84f4f11c7f32f679e syntax_tree (6.3.0) sha256=56e25a9692c798ec94c5442fe94c5e94af76bef91edc8bb02052cbdecf35f13d - test-prof (1.6.1) sha256=0332d9c39a7c118ed942b2db582f055d9f24964d150004ec6b964d2fa262499e + test-prof (1.6.3) sha256=027aea17612b2776069820e4209f6b446ece7ad6dc693f4aed0b742bcb3817a1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 - tiktoken_ruby (0.0.16) sha256=2bac3503f1830b11f5fbe64ea8b7696f0ba995a721fad2c75b3f76350ae1504d - tiktoken_ruby (0.0.16-aarch64-linux) sha256=014e5ba44b99158916ff57db61d2cb3fdbc6d176644d3f6bbf36a7d36ef9467d - tiktoken_ruby (0.0.16-aarch64-linux-musl) sha256=0519bb7eed1ebe0202c302103e9edf8754e4ea3029f63573c0d0a24649f701aa - tiktoken_ruby (0.0.16-arm64-darwin) sha256=3da6fe850bf920d08c7eb736673f50bc9d08e8f2e17d34904ad3185a73fc9da7 - tiktoken_ruby (0.0.16-x86_64-darwin) sha256=4776d9f6d2f00ec4386260f3ef379347fd2dc375361c750fef7e96b57364c5be - tiktoken_ruby (0.0.16-x86_64-linux) sha256=4d970b8e68a86972ec81799306116480b33a558c06bb4fe0092852280a4b76b2 - tiktoken_ruby (0.0.16-x86_64-linux-musl) sha256=6a0400a7aba9da6146b30af5d7e4375167c5e5a291853ce47768985916c4d183 + tiktoken_ruby (0.0.17) sha256=9e2a8bcd9eab75d8ba5a9aa75234a6134970c13243132d8b46da7f5f36ea27c3 + tiktoken_ruby (0.0.17-aarch64-linux) sha256=73c1b3065e3356274ff7f9f612b80531029d59c6474f6a73c8bae913cd3fd731 + tiktoken_ruby (0.0.17-aarch64-linux-musl) sha256=038e114be72b2cbd9db2e3555a9a153e0638183447cfde9b1561775b7c4119d4 + tiktoken_ruby (0.0.17-arm64-darwin) sha256=3e76e75218864f7315f83969533ddbe3eb0b927c357bd747acd156412ed6c2e9 + tiktoken_ruby (0.0.17-x86_64-darwin) sha256=da7152cee74943f83d066a425f289db6e116ff05b347735fb2fc1035323f5381 + tiktoken_ruby (0.0.17-x86_64-linux) sha256=c5bfe3067b0d0776028be2112a18f9031d69ed250427a575a4a0b51a0507906b + tiktoken_ruby (0.0.17-x86_64-linux-musl) sha256=d5dbae406a95a93cbf638f2a45aed9e71dea7eb987526df0474cf5db33b35de6 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tokenizers (0.6.4) sha256=7881f2afee7e605dec6be0c382d4bd138622b77263a67ca66f4ef3156e8e8f47 tokenizers (0.6.4-aarch64-linux) sha256=4898a86c726106967a929a318ffaacb7fa99a6cba5b50e3957f80151c0d7789a @@ -1354,23 +1364,23 @@ CHECKSUMS tty-reader (0.9.0) sha256=c62972c985c0b1566f0e56743b6a7882f979d3dc32ff491ed490a076f899c2b1 tty-screen (0.8.2) sha256=c090652115beae764336c28802d633f204fb84da93c6a968aa5d8e319e819b50 tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b - tzinfo-data (1.2026.2) sha256=7db0d3d3d53b8d7601fc183fccc8c6d056a3004e14eb59ea995bf6aec4ae10bc + tzinfo-data (1.2026.3) sha256=478fbc5356f13c1004cf8372b1336f3dad4055c96340fc4c881a3738da8cf7f9 unf (0.2.0) sha256=e6bcc2e101d80e3f9459753db747d5926aada1aaaf61e629e93359da9a5b04ab unicode-display_width (3.2.0) sha256=0cdd96b5681a5949cdbc2c55e7b420facae74c4aaf9a9815eee1087cb1853c42 unicode-emoji (4.2.0) sha256=519e69150f75652e40bf736106cfbc8f0f73aa3fb6a65afe62fefa7f80b0f80f uniform_notifier (1.18.0) sha256=4787785556f66f6418486da0f1d78b3239aaff98e2e7938fb05e2062b0ffce9d uri (1.1.1) sha256=379fa58d27ffb1387eaada68c749d1426738bd0f654d812fcc07e7568f5c57c6 useragent (0.16.11) sha256=700e6413ad4bb954bb63547fa098dddf7b0ebe75b40cc6f93b8d54255b173844 - version_gem (1.1.13) sha256=77f3035ac45877cd14610648fec2d23bd8c10fa13dfcf63a588825aa98587260 - web-push (3.0.1) sha256=5b4dd2f2bba3bd8951da6416492fe920a6f203d14d3080f943c5d01c0cc4b18d - webmock (3.26.2) sha256=774556f2ea6371846cca68c01769b2eac0d134492d21f6d0ab5dd643965a4c90 + version_gem (1.1.15) sha256=a73241587b29252e3567e0c818ded80730eb754d43b508f6ce4db22ca9ba27d0 + web-push (3.1.0) sha256=501ab00340c58fb70dabda59f28a86b3cccb0930c6f1f30721b2a5b24de7187d + webmock (3.26.4) sha256=8d8da206d217ebe6968cfb09c77f4533c23074e1432bad865f3994eacbaad50d webrick (1.9.2) sha256=beb4a15fc474defed24a3bda4ffd88a490d517c9e4e6118c3edce59e45864131 wisper (2.0.1) sha256=ce17bc5c3a166f241a2e6613848b025c8146fce2defba505920c1d1f3f88fae6 xpath (3.2.0) sha256=6dfda79d91bb3b949b947ecc5919f042ef2f399b904013eb3ef6d20dd3a4082e yaml-lint (0.1.2) sha256=e3960b171766ae187338a169815e99fe10fcb0d9c22b1c539e8d57e114324c8a - yard (0.9.44) sha256=eb087e9b631ccd887b049f303d489963945452d5e2a7eb49a5a74a7cf6887f28 - zeitwerk (2.8.2) sha256=7212a61311083c604184b1ea2574b9aa05cd14f855a0841c06985cabe9181d12 - zendesk_api (1.38.0.rc1) sha256=9ebe2575d223ed1c0651b2d10df6c010141cda49d524c38532b472f7e8bb3f7a + yard (0.9.45) sha256=52e211493f7cb8a3ebf7e104a25a1e73937a3103092545d34cb88fafebb3dc51 + zeitwerk (2.8.3) sha256=2c85125a8467ce069e20123d1e709a08955c9d29c118c25b46b7b7fafdbb92e5 + zendesk_api (3.1.2) sha256=3f726c133af8ed3518a9e7cfa9015a368617bd210754ed9173d984f12ddcec15 RUBY VERSION ruby 3.4.7p58 diff --git a/pkgs/servers/web-apps/discourse/rubyEnv/gemset.nix b/pkgs/servers/web-apps/discourse/rubyEnv/gemset.nix index 13be53ad0101..61d4903a63a4 100644 --- a/pkgs/servers/web-apps/discourse/rubyEnv/gemset.nix +++ b/pkgs/servers/web-apps/discourse/rubyEnv/gemset.nix @@ -12,10 +12,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "00w4q1p3gwmqgik2mz5bnxp57cpwjxm7i68nyljym28rdvwv7ln3"; + sha256 = "0g64lm550x0sx2ad5sgwmx19jg9acj98hih6q33a00pz50dl9sl8"; type = "gem"; }; - version = "8.0.5.1"; + version = "8.1.3.1"; }; actionpack = { dependencies = [ @@ -37,10 +37,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1sx1r9qp72gygvgr1qaj6w6pd5y8g2mnafadvi6qhs2dhafmqnd5"; + sha256 = "1l13fy0y55h5c5ccm7c94mwfhf6bk5xj83qv1d3izs288lavfk4p"; type = "gem"; }; - version = "8.0.5.1"; + version = "8.1.3.1"; }; actionview = { dependencies = [ @@ -58,10 +58,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0h0lrfwi0lh8y1bcaj0zh1srhqay0hlb02gzqd55qaf2kj5i0aj7"; + sha256 = "1dng2b5bbjm4c1bcpak7q9w4zh71mz2nkknipszl6yy42j28p9id"; type = "gem"; }; - version = "8.0.5.1"; + version = "8.1.3.1"; }; actionview_precompiler = { dependencies = [ "actionview" ]; @@ -94,10 +94,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1038583pm2fd8lcdi57bk01c99cfq4d13jljvmnvqg3c3fi0f90l"; + sha256 = "0jlm75lxj7bjd67jkgclzlrhlm9sj4ywdzngxq6z83ckvxsx538w"; type = "gem"; }; - version = "8.0.5.1"; + version = "8.1.3.1"; }; activemodel = { dependencies = [ "activesupport" ]; @@ -110,10 +110,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "197lvykj2v9j25n2gxwn5z9fpa888mnr5vqaxsivf3f4m4mf76sm"; + sha256 = "124gi0hlvkabkl5fzfn90ylj7gbyg22rv5208k8p3hxf5z705k4r"; type = "gem"; }; - version = "8.0.5.1"; + version = "8.1.3.1"; }; activerecord = { dependencies = [ @@ -130,20 +130,20 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "19zf3qmmbmjq8qmy7vld5xzicwnl82j9h9092zmpaka0rs7rcllj"; + sha256 = "0fs0q1c35k2bh079kj1xbx9pvqx7q2z4k9d32fqgcf29iz1bcbqa"; type = "gem"; }; - version = "8.0.5.1"; + version = "8.1.3.1"; }; activesupport = { dependencies = [ "base64" - "benchmark" "bigdecimal" "concurrent-ruby" "connection_pool" "drb" "i18n" + "json" "logger" "minitest" "securerandom" @@ -159,10 +159,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0447k5nm211n1ghhb8fv55wm450bigr9vjz2i8rwzkzvqj0456ij"; + sha256 = "0xhkhdx8svhaf439y398yixik0snzarnnsy43688p92yy9jqfic5"; type = "gem"; }; - version = "8.0.5.1"; + version = "8.1.3.1"; }; addressable = { dependencies = [ "public_suffix" ]; @@ -206,6 +206,17 @@ src: { }; version = "4.20.0"; }; + anonymous_loader = { + dependencies = [ "version_gem" ]; + groups = [ "default" ]; + platforms = [ ]; + source = { + remotes = [ "https://rubygems.org" ]; + sha256 = "0mfb8kf2a4qmam6jvlrsb38zqh9gk3y1vhbx8iaxji4i8gi1hjh8"; + type = "gem"; + }; + version = "0.1.3"; + }; Ascii85 = { groups = [ "default" ]; platforms = [ ]; @@ -236,10 +247,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1p5f5x145ma9rw6i8zv955wbyb54wqhppa786hgck9ykshhj5myy"; + sha256 = "0g1yjdchydvk44v4303rjhb5sfb73nzbrvipnr5cdr7v5k4sl46v"; type = "gem"; }; - version = "0.1.4"; + version = "0.2.3"; }; aws-eventstream = { groups = [ "default" ]; @@ -256,10 +267,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0gkd4q0bbmw6vah15vkghvij398l7g5yd7570ilk9b3pcwazdx98"; + sha256 = "1p2qvraa79fl6gq7g69r73bsfpxk231c0c3wp8qhlhys2gd34r02"; type = "gem"; }; - version = "1.1134.0"; + version = "1.1284.0"; }; aws-sdk-bedrockruntime = { dependencies = [ @@ -270,10 +281,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "19fyy5dslbfsc8swwrl299nrkxzja268n1ggzixq9z45jjmv0ppw"; + sha256 = "1fbcjd4c025nzfcnrz33iq7m62fd2cyr6nrkfbjxib8gi4zsaivf"; type = "gem"; }; - version = "1.74.0"; + version = "1.83.0"; }; aws-sdk-core = { dependencies = [ @@ -284,15 +295,16 @@ src: { "bigdecimal" "jmespath" "logger" + "rexml" ]; groups = [ "default" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1zhj444iybzs1ikw1p4arv3zayw9xkk1ifnsb6g3r2j6p0h34gpf"; + sha256 = "0grlhf96r8m8s8appy9aj8x05mw0p2ydwvkaivmy5r4nhyy7zb1b"; type = "gem"; }; - version = "3.254.0"; + version = "3.255.0"; }; aws-sdk-kms = { dependencies = [ @@ -463,10 +475,10 @@ src: { ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1i5nn4750jnsd3gs0ca9zbiq1aglvzasp6j6f2s7kli4hm27gdin"; + sha256 = "1kzzpigr9nh7qcj6b3c03ffzq4xrcighjpa66cx05d4w1xyrw1a1"; type = "gem"; }; - version = "1.24.5"; + version = "1.25.0"; }; builder = { groups = [ @@ -491,10 +503,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1jy7yfn94acbcn23g9zh48b8j9jphwcqgr2vfy013zi4fd93q5n8"; + sha256 = "0wz4pd9zcnqys43yqfmnzg37438d9zs4a4q4v979x4qwx36xh7lj"; type = "gem"; }; - version = "8.1.3"; + version = "8.2.0"; }; capybara = { dependencies = [ @@ -526,10 +538,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "10kj1rh8w3qk6mg6kap1gh0p5kgmgdp1ij6gwayy3dqp139gw5sc"; + sha256 = "1hx2ha4q90am6ncc4zcisvbpa7haps2lkd7s8k34645wf8nmg3p4"; type = "gem"; }; - version = "0.5.9"; + version = "0.5.10"; }; cbor = { groups = [ "default" ]; @@ -559,10 +571,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1s8qdw1nfh3njd47q154njlfyc2llcgi4ik13vz39adqd7yclgz9"; + sha256 = "1fzqwshg1xzbdm97havskfp6wifsgbjii00dzba0y6bih4lk1jk1"; type = "gem"; }; - version = "0.5.1"; + version = "0.5.2"; }; chunky_png = { groups = [ "default" ]; @@ -607,10 +619,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1c2i64xsd35vijnb50rxb70g508s0x674xi0qpyyb8jy7bncl4j4"; + sha256 = "1qfi2ns3zwkgq616fc127xiqhan7g7m7gqpwriwcr34nds1vxwdj"; type = "gem"; }; - version = "1.3.7"; + version = "1.3.8"; }; connection_pool = { groups = [ @@ -640,10 +652,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "01vg83f2q7n0q5dsq2sfjmm6mrizhyzkmw21i4ysg06g0slrwna5"; + sha256 = "1mzgyg46jxdyijmg6dkxjv3yqmaixr7mk66094w0cnjrqa3b54w0"; type = "gem"; }; - version = "1.36.0"; + version = "1.37.0"; }; cose = { dependencies = [ @@ -695,10 +707,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0pfl5c0pyqaparxaqxi6s4gfl21bdldwiawrc0aknyvflli60lfw"; + sha256 = "15djj19ynz3sbw54fsf8n7y3sha8a333f2mgvjfwhr46jhcqg1ll"; type = "gem"; }; - version = "1.0.6"; + version = "1.0.7"; }; css_parser = { dependencies = [ @@ -719,10 +731,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0gz7r2kazwwwyrwi95hbnhy54kwkfac5swh2gy5p5vw36fn38lbf"; + sha256 = "0mj4kq4wwpc7c8ll52q30hsir1jrcd5kq7yb8lyz0rksa1z1x9mb"; type = "gem"; }; - version = "3.3.5"; + version = "3.3.6"; }; date = { groups = [ @@ -878,18 +890,15 @@ src: { }; version = "1.0.1"; }; - docile = { - groups = [ - "default" - "test" - ]; + discourse_voice_assets = { + groups = [ "default" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "07pj4z3h8wk4fgdn6s62vw1lwvhj0ac0x10vfbdkr9xzk7krn5cn"; + sha256 = "1hhcq5by1rr6aknmdfd7pzngvvlb5lby5if33bkha65akqzbrgv7"; type = "gem"; }; - version = "1.4.1"; + version = "0.1.0"; }; drb = { groups = [ @@ -931,10 +940,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "09f5sq41fb912jxsbzh68hmkwq9gj9p8fg0zbwikf80sxsjkz105"; + sha256 = "0mwg9xa0v45c9yh36nigj09pscrf0npn681r2wn9glzh943fkf6d"; type = "gem"; }; - version = "0.2.0"; + version = "0.4.0"; }; erb = { groups = [ @@ -945,10 +954,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1ncmbdjf2bwmk0jf5cxywns9zbxyfiy4h4p3pzi7yddyjhv81qrq"; + sha256 = "14pfj6zn0p1hxj6s6s0r7d424wap8zl9zxf89nj79y8fbg16vjn5"; type = "gem"; }; - version = "6.0.4"; + version = "6.0.7"; }; erubi = { groups = [ @@ -977,10 +986,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0l3dpg45i74ap1d7c4wyrdlc67l9vj4kgzv2l2r8mg1304fss0y5"; + sha256 = "1hma5q4f2dxr72v2af1w026cv756cy797zcy9x7cxdg1xh78fbfx"; type = "gem"; }; - version = "1.5.0"; + version = "1.7.1"; }; exifr = { groups = [ "default" ]; @@ -1000,10 +1009,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1x0qdz794b2w9740kq2y3g6qwiggbscbm5kyhnhdd1m5vdhnwv4h"; + sha256 = "1b2ajjrzv0afzljsga1l5r9597lam7b3c2fq352v955ib7abdfa9"; type = "gem"; }; - version = "2.14"; + version = "3.0.1"; }; fabrication = { groups = [ @@ -1187,10 +1196,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "04gzhqvsm4z4l12r9dkac9a75ah45w186ydhl0i4andldsnkkih5"; + sha256 = "09zl0rkskfq0cwfrk9ypjvflvzanfg3xbhh1slaa1myry7xi4zq3"; type = "gem"; }; - version = "1.3.0"; + version = "1.4.0"; }; goldiloader = { dependencies = [ @@ -1215,10 +1224,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "038cqc1kzxl22m3jfspkdpg0dxskga9jvgwclb4pivcjqxi62d4m"; + sha256 = "0xvamgf5fxrdzkp8lmws15r20bbwpibgh62lv98fmdindgbcjfl9"; type = "gem"; }; - version = "4.35.0"; + version = "4.36.1"; }; guess_html_encoding = { groups = [ "default" ]; @@ -1377,10 +1386,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1k0lk3pwadm2myvpg893n8jshmrf2sigrd4ki15lymy7gixaxqyn"; + sha256 = "026v93kja19bfslnwi9xfq2dj4r89kkwdprim4whjg6h3n4lz9zg"; type = "gem"; }; - version = "0.8.2"; + version = "0.9.2"; }; irb = { dependencies = [ @@ -1432,10 +1441,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "16mp8vzgxa8nsa81np042za453j8b0ihpjkf666s7byxrnvjb44v"; + sha256 = "0shwgjqbj856mb6m9kgkpy08nhym2gdvc2yaprlimfmky9y3n78z"; type = "gem"; }; - version = "2.19.9"; + version = "2.21.2"; }; json-schema = { dependencies = [ @@ -1487,20 +1496,20 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1i8wmzgb5nfhvkx1f6bhdwfm7v772172imh439v3xxhkv3hllhp6"; + sha256 = "1mqps8z4ly74hpksfajcfamqk1wb79biy187pn10knmi6zzb26al"; type = "gem"; }; - version = "2.10.1"; + version = "3.2.0"; }; landlock = { groups = [ "default" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0kxig1dq4v7qf84pmwvipq2rg6zrsplxbp3dflssw7w3zwcv3jcm"; + sha256 = "187b4k2rp5i3qgsz2d3bz2bg60dgldynka0fpx6zpq4c4gmcarjc"; type = "gem"; }; - version = "0.4.1"; + version = "0.5.1"; }; language_server-protocol = { groups = [ @@ -1511,10 +1520,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1k0311vah76kg5m6zr7wmkwyk5p2f9d9hyckjpn3xgr83ajkj7px"; + sha256 = "1w5p8c2145lmqzr25bxh4ikzjm6k8y1k5lriqqdpw9pq730w1wjy"; type = "gem"; }; - version = "3.17.0.5"; + version = "3.17.0.6"; }; libv8-node = { groups = [ "default" ]; @@ -1612,10 +1621,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1qcsvh9k4c0cp6agqm9a8m4x2gg7vifryqr7yxkg2x9ph9silds2"; + sha256 = "05nzwq2a5jyhcf0w4mbd3dd9yxd6q7zgadsi33f1jl5ra0gjq1rl"; type = "gem"; }; - version = "0.14.0"; + version = "0.15.0"; }; logstash-event = { groups = [ "default" ]; @@ -1650,10 +1659,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "011fdngxzr1p9dq2hxqz7qq1glj2g44xnhaadjqlf48cplywfdnl"; + sha256 = "062r891hxis58j5q735kk9sj5srxx0rv813f8m95bilsjm3gf1r0"; type = "gem"; }; - version = "2.25.1"; + version = "2.25.2"; }; lru_redux = { groups = [ @@ -1700,10 +1709,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0ha9sgkfqna62c1basc17dkx91yk7ppgjq32k4nhrikirlz6g9kg"; + sha256 = "1s30l5z7jkazgi4m6l6mh80rgsyhh2pp1pa5h70xclsj8z54wmq6"; type = "gem"; }; - version = "2.9.0"; + version = "2.9.1"; }; markbridge = { groups = [ @@ -1759,15 +1768,18 @@ src: { version = "1.1.0"; }; message_bus = { - dependencies = [ "rack" ]; + dependencies = [ + "logger" + "rack" + ]; groups = [ "default" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0y77v5yvnqmn3q0z80mcl2yq006zvx26x9fzlxg0wmnr0p71nf7i"; + sha256 = "1ky0lk2nw4n1znna1b4gr4c5rf9f99kx1did2y2hh503h4xl3fwv"; type = "gem"; }; - version = "4.5.2"; + version = "5.0.0"; }; messageformat-wrapper = { dependencies = [ "mini_racer" ]; @@ -1794,9 +1806,11 @@ src: { dependencies = [ "activesupport" "colored2" + "discourse-emojis" "i18n" "markbridge" "migrations-core" + "mini_racer" "pg" "zeitwerk" ]; @@ -1890,10 +1904,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1k28j6ww8rf43r5i8278jvm2cq3pnzsvqm7yqpb4p93kadjlq726"; + sha256 = "03vkd9g09jnxsp8mdacvjbplrrqfl5l26n50kd4kdn49zghi326d"; type = "gem"; }; - version = "3.2026.0414"; + version = "3.2026.0701"; }; mini_mime = { groups = [ @@ -1925,14 +1939,17 @@ src: { }; mini_racer = { dependencies = [ "libv8-node" ]; - groups = [ "default" ]; + groups = [ + "default" + "migrations" + ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0c5f8ycbj389dvn2vxzq6xmsk2naqm57c5w31mavw0fbgdww3r2j"; + sha256 = "12ji47z8dn6g70c1ni70rfbrkjapnspvsmlqpy479raz0fjbm9y0"; type = "gem"; }; - version = "0.22.0"; + version = "0.22.1"; }; mini_scheduler = { dependencies = [ "sidekiq" ]; @@ -1966,16 +1983,6 @@ src: { }; version = "0.3.3"; }; - minio_runner = { - groups = [ "test" ]; - platforms = [ ]; - source = { - remotes = [ "https://rubygems.org" ]; - sha256 = "0bygpmih2ph6rvkxw09n6q7kyicvdiq2jcpd6k6iy0aklbgbxcpb"; - type = "gem"; - }; - version = "1.1.0"; - }; minitest = { dependencies = [ "drb" @@ -2021,20 +2028,20 @@ src: { ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "18g6ps30z6m365bly7sfialavnsf6m6qamdxsr84w96k51j4mnlb"; + sha256 = "0yry1bcnbl0c5xwg173n5y647596r8ydmsppa01c5l8d6lnw44a4"; type = "gem"; }; - version = "1.8.3"; + version = "1.8.4"; }; multi_json = { groups = [ "default" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0vfaab23d85617ps412ydb8ap4ci1sfzi8ainn8yyifc0pl38f9g"; + sha256 = "1040lr5y2phn7avdyam6zw6ikprlmk77biw3yhclsfwfh0qnl4p6"; type = "gem"; }; - version = "1.20.1"; + version = "1.21.1"; }; multi_xml = { dependencies = [ "bigdecimal" ]; @@ -2062,10 +2069,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "003cyf76zmki1lnh55cvir7dkn0s70dm909dxn6sfk9m00s2886l"; + sha256 = "1hlks2kkf3drbjb811cxyfp8f84rn9kjh9icms7idbz42ymgxgbm"; type = "gem"; }; - version = "1.1.2"; + version = "1.1.3"; }; net-http = { dependencies = [ "uri" ]; @@ -2087,10 +2094,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "03ga2h4i5hsk8pdlicyfvqfsbh55vrbikb0nkx9x7vx7fl6kdw19"; + sha256 = "1px886qvws5zvqphy5cysj8vg01lym0w7vs9wq1h41pk1pjlxaln"; type = "gem"; }; - version = "0.6.4.1"; + version = "0.6.6"; }; net-pop = { dependencies = [ "net-protocol" ]; @@ -2109,10 +2116,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1a32l4x73hz200cm587bc29q8q9az278syw3x6fkc9d1lv5y0wxa"; + sha256 = "0wklahcafcib6jwrr3angj7zzcb9csq3c0xj3axldb8w9wyhqcds"; type = "gem"; }; - version = "0.2.2"; + version = "0.3.0"; }; net-smtp = { dependencies = [ "net-protocol" ]; @@ -2151,16 +2158,16 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1s30b7h7qpyim30m8060xs415mbr3ci7i5hdg09chh1aqfx2qcbq"; + sha256 = "1d9safb4dly6qmc2g06444l0zifby52yy6j1a5fa1g4j3ihm3jah"; type = "gem"; }; - version = "1.19.3"; + version = "1.19.4"; }; oauth = { dependencies = [ + "anonymous_loader" "auth-sanitizer" "base64" - "cgi" "oauth-tty" "snaky_hash" "version_gem" @@ -2169,42 +2176,46 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1jlwk58v6pdarxp2sibsr1f4gs10nn5kxlsr2r6sa6aqiy86gi0f"; + sha256 = "03nm2qp4pzswaf93ammm458ssgwcldzwrqkcm0hgix0s75sbgw3v"; type = "gem"; }; - version = "1.1.5"; + version = "1.1.8"; }; oauth-tty = { dependencies = [ + "anonymous_loader" "auth-sanitizer" - "cgi" "version_gem" ]; groups = [ "default" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "01qylh3rskdpvjkd2dkm6sdf2klf2w99zib8z0bjbhhpmxkkp9nr"; + sha256 = "18xlmsfkzmqvx01v7q3pkpgcb4mqlh1dqcd7x4gx4vzars9mzbbi"; type = "gem"; }; - version = "1.0.8"; + version = "1.0.13"; }; oauth2 = { dependencies = [ + "anonymous_loader" + "auth-sanitizer" "faraday" "jwt" - "multi_json" + "logger" "multi_xml" "rack" + "snaky_hash" + "version_gem" ]; groups = [ "default" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "042w5lamxhllfxsv0y8v9cvdhmlasy5kxbhcdd3lzj9bhz4gqfb7"; + sha256 = "1b42dax3qwm1zbz86c9zcii7v45vi6c3rp083dyadjn2jcpnlwrg"; type = "gem"; }; - version = "1.4.11"; + version = "2.0.25"; }; octokit = { dependencies = [ @@ -2229,10 +2240,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0mmmswza8f4divl0mvkfq62pcdvm8c56j854wv7z9g6s0rmav7xd"; + sha256 = "1376v0gnz0b6ldzgahf7m5795jkgx793q0mqrv1k085105z2a4gm"; type = "gem"; }; - version = "3.16.12"; + version = "3.17.6"; }; omniauth = { dependencies = [ @@ -2272,10 +2283,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0jc66zp4bhwy7c6s817ws0nkimski3crrhwd7xyy55ss29v6b8hw"; + sha256 = "1m6a7kg3lxz2nm96prln2ja8r4wlm37m5vsy9199vnynqq5fgy4g"; type = "gem"; }; - version = "2.0.0"; + version = "2.0.1"; }; omniauth-google-oauth2 = { dependencies = [ @@ -2288,10 +2299,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "19hj9l3xgsy7dssjmfmkca129wdbhh3pdmp0jm685awqinna9mrf"; + sha256 = "1a8xgjc4g29cx6va72db2nxfyp2p4ligrp72xq17j2z5cizbdfmx"; type = "gem"; }; - version = "1.0.1"; + version = "1.2.3"; }; omniauth-oauth = { dependencies = [ @@ -2317,13 +2328,14 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0ia73zcbmhf02krlkq2rxmksx93jp777ax5x58fzkq3jzacqyniz"; + sha256 = "1s7yagqmzzqcr5l1rrb4bdjf7g2k2jf5pk0lw5y81489sbczc5gd"; type = "gem"; }; - version = "1.7.3"; + version = "1.9.0"; }; omniauth-twitter = { dependencies = [ + "cgi" "omniauth-oauth" "rack" ]; @@ -2331,20 +2343,20 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0r5j65hkpgzhvvbs90id3nfsjgsad6ymzggbm7zlaxvnrmvnrk65"; + sha256 = "1qv2ld087mnj38rlgjdp5h894gf01mwj5xypw5agdchk8598im7p"; type = "gem"; }; - version = "1.4.0"; + version = "1.5.0"; }; openssl = { groups = [ "default" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0v0grpg9gi59zr3imxy1745k9rp3dd095mkir8gvxi69blhh2kkz"; + sha256 = "1hj7wwp4r3jhvnyd8ik85wbs25cq1w61r28pv6ddyn5fd0lasdqh"; type = "gem"; }; - version = "3.3.2"; + version = "4.0.2"; }; openssl-signature_algorithm = { dependencies = [ "openssl" ]; @@ -2435,10 +2447,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0m2xqvn1la62hji1mn04y59giikww95p2hs0r4y2rrz3mdxcwyni"; + sha256 = "0a4q5h2hcihk79dbr20scgkm56l79qp7fsvfvkxlv8nmapvxg9i1"; type = "gem"; }; - version = "3.3.11.1"; + version = "3.3.12.0"; }; pastel = { dependencies = [ "tty-color" ]; @@ -2456,17 +2468,16 @@ src: { "Ascii85" "afm" "hashery" - "ruby-rc4" "ttfunk" ]; groups = [ "default" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1kk8f1f5kkdwsbskv0vikcwx5xaivv19y9zl97x1fcaam23akihq"; + sha256 = "0cipbx3ssgfsww7hrlll2j27b2vpcwaczqxxg614s9l5q1j5a6xz"; type = "gem"; }; - version = "2.15.1"; + version = "2.16.0"; }; pg = { groups = [ @@ -2508,10 +2519,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0ls8r49d27j0ffpfva99nk53a4nk17f4k71x44hpny8f2gb448ll"; + sha256 = "05apnpyyqpwwfa3rjwqn05l5jgj0j9wdp9w82a5gd1vrmd8n1ss4"; type = "gem"; }; - version = "1.60.0"; + version = "1.62.0"; }; pp = { dependencies = [ "prettyprint" ]; @@ -2523,10 +2534,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1xlxmg86k5kifci1xvlmgw56x88dmqf04zfzn7zcr4qb8ladal99"; + sha256 = "0w5mha75hs8gdj75g8vl0sxpyp8rzvwq8a4jcmi4ah8cf370zjyz"; type = "gem"; }; - version = "0.6.3"; + version = "0.6.4"; }; prettier_print = { groups = [ @@ -2622,24 +2633,6 @@ src: { }; version = "0.3.11"; }; - psych = { - dependencies = [ - "date" - "stringio" - ]; - groups = [ - "default" - "development" - "test" - ]; - platforms = [ ]; - source = { - remotes = [ "https://rubygems.org" ]; - sha256 = "1dx5bc3s1mb1i53np4cdkypg7ccygnvagr3hglyndbqilrljvxql"; - type = "gem"; - }; - version = "5.4.0"; - }; public_suffix = { groups = [ "default" @@ -2695,10 +2688,10 @@ src: { ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "175ni9qsai9x2ykwvdbd5dzfyncaxpyn6dhjxjw70iq60xz9vzm8"; + sha256 = "0pyammr7fpxqa1sdvw0vnk4699j081sqqcsj6isl67471mm545pg"; type = "gem"; }; - version = "2.2.23"; + version = "2.2.24"; }; rack-mini-profiler = { dependencies = [ "rack" ]; @@ -2706,10 +2699,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0y1x4rc7bz8x3zn8p6g21rw6ivbjml6a2vl9dhchiy8i6b110n28"; + sha256 = "1q822cwrs4khc4l4jgc6dsnvw7iz46rgchqam2dqs759gw4bmicr"; type = "gem"; }; - version = "4.0.1"; + version = "5.0.0"; }; rack-protection = { dependencies = [ @@ -2805,10 +2798,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "128y5g3fyi8fds41jasrr4va1jrs7hcamzklk1523k7rxb64bc98"; + sha256 = "1hi25xz5ijz3kjx4vsiywqbq05mlkas7di8pwc3p6mhyn34sg5z7"; type = "gem"; }; - version = "1.7.0"; + version = "1.7.1"; }; rails_failover = { dependencies = [ @@ -2834,10 +2827,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1winy1bzrzspb0ynnx5rcy8fhg1ldkzcnydn7zkvxll6xmjg7b3s"; + sha256 = "1rlmwimr8yb7dhid36b5lgaf337bqh8ml28jaw2x326b0l28zj1b"; type = "gem"; }; - version = "7.0.0"; + version = "9.0.0"; }; railties = { dependencies = [ @@ -2858,10 +2851,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1iym8kbdzpkjk70h7w9pbmqj7czsywzinwpqla8ldc6sv7hmh6fs"; + sha256 = "11s4n3zqd7bry5ndraq02f641hskhmnfcza8lkzcw04sawra5213"; type = "gem"; }; - version = "8.0.5.1"; + version = "8.1.3.1"; }; rainbow = { groups = [ @@ -2969,14 +2962,15 @@ src: { groups = [ "default" "development" + "test" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "09ggg2zk0qrh0mc3fa23xjbn2gzqxd0jfqj6qm6460ydcqg6fxdg"; + sha256 = "0x067q8cdam4kv5dc09iq2nzca8qm2kdl0dr22gc0ny0vj3bixsi"; type = "gem"; }; - version = "4.0.2"; + version = "4.2.0"; }; rbtrace = { dependencies = [ @@ -2995,25 +2989,16 @@ src: { ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0yvmkccs3rc6qisy86idhzpk2z8dzsf6dl2mw80h63skfq0f8yc2"; + sha256 = "0s7yfa35d35lw0lr2wy2fcv4fk6ndkrm4bj1chs1y9f4xbzh00pd"; type = "gem"; }; - version = "0.5.4"; - }; - rchardet = { - groups = [ "default" ]; - platforms = [ ]; - source = { - remotes = [ "https://rubygems.org" ]; - sha256 = "0csz2dybi0y1w22dzxpllkcnr5dmr1w0y4xb947c2ka6bwcwnhg0"; - type = "gem"; - }; - version = "1.10.2"; + version = "0.5.5"; }; rdoc = { dependencies = [ "erb" - "psych" + "prism" + "rbs" "tsort" ]; groups = [ @@ -3024,10 +3009,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "14iiyb4yi1chdzrynrk74xbhmikml3ixgdayjma3p700singfl46"; + sha256 = "0sf4909q2mr9z0rpygv94z12b0yamg07gz8cba2mi5k3m448rgq3"; type = "gem"; }; - version = "7.2.0"; + version = "8.0.0"; }; redcarpet = { groups = [ "generic_import" ]; @@ -3045,10 +3030,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0syhyw1bp9nbb0fvcmm58y1c6iav6xw6b4bzjz1rz2j1d7c012br"; + sha256 = "19ndpji1plvkvb0x180lfkpc1fb3ig8cszpcb6vqcs8hvl7c2wfy"; type = "gem"; }; - version = "5.4.0"; + version = "6.0.0"; }; redis-client = { dependencies = [ "connection_pool" ]; @@ -3056,10 +3041,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0xz4nl6jr8chzliw39s75mzfr7s7fyq8fh2m841im97h8bni2gvl"; + sha256 = "0baj2r8wa6imzfndyz6cj732v8nq02wy7nicfciqdr5zgdfbqlai"; type = "gem"; }; - version = "0.30.0"; + version = "0.30.1"; }; redis-namespace = { dependencies = [ "redis" ]; @@ -3096,10 +3081,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0d8q5c4nh2g9pp758kizh8sfrvngynrjlm0i1zn3cnsnfd4v160i"; + sha256 = "0gaq2lc463ap1srz7y5kh2p4dxazs7vjrpiby58d9yfvan72s0av"; type = "gem"; }; - version = "0.6.3"; + version = "0.7.0"; }; request_store = { dependencies = [ "rack" ]; @@ -3112,6 +3097,17 @@ src: { }; version = "1.7.0"; }; + reverse_markdown = { + dependencies = [ "nokogiri" ]; + groups = [ "default" ]; + platforms = [ ]; + source = { + remotes = [ "https://rubygems.org" ]; + sha256 = "1bxqlpwnixn8x4bnna958w6m6qkdkbnd23b9j6ib3nrrrs9bp3l1"; + type = "gem"; + }; + version = "3.0.2"; + }; rexml = { groups = [ "default" @@ -3161,10 +3157,10 @@ src: { ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1g2y2z07niw4ylbgf6zr6a7kjaqbaqxn98xwff58zf4w5yx9ppp2"; + sha256 = "0ljlr1da64kx3mimpzb4x2yczk08b0sg04h2ji3m2zxb88l66z5p"; type = "gem"; }; - version = "5.0.0"; + version = "5.1.0"; }; rqrcode = { dependencies = [ @@ -3399,10 +3395,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0ca5inh368d4l24a2v2nbd3p4xc6s0pqs91j27h226nh04zmyha4"; + sha256 = "1l4nh82hq54nxgyisdcf8vbkpzm149p9kff5k0vpwp8w76zvg0lw"; type = "gem"; }; - version = "1.86.1"; + version = "1.91.0"; }; rubocop-ast = { dependencies = [ @@ -3417,10 +3413,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0dahfpnzz63hyqxa03x8rypnrxzwyvh4i5a8ri34bzpnf3pg64j4"; + sha256 = "1nw84xk6vc2ls8sxqvyhxs2agh4l0jrws85d4bi3x0501lq8ijmr"; type = "gem"; }; - version = "1.49.1"; + version = "1.50.0"; }; rubocop-capybara = { dependencies = [ @@ -3435,10 +3431,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0mz3mvjh09awggp0bwsmf4rfaz2irrwc6vzpiklfh7jnlyiipspr"; + sha256 = "0jwcfv1hs9r838zjaz61g5d62k564p47mqw77j7pznmc7196ar3s"; type = "gem"; }; - version = "2.23.0"; + version = "3.0.0"; }; rubocop-discourse = { dependencies = [ @@ -3458,10 +3454,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "02yf6zcq3ki1nkkkw3vsgfkm4fyfzdpb6lss7d285vdirc9izcxx"; + sha256 = "0w4w3qxah2ci39hqbgvkvx0bv1kb9by1a9p8k29lczlkkg7nn227"; type = "gem"; }; - version = "3.18.0"; + version = "3.20.0"; }; rubocop-discourse-base = { dependencies = [ "rubocop" ]; @@ -3512,14 +3508,15 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1llsxc8wm2pq8glpv5mczd1h36fazbri3wwrh7dfqra80a4pklqh"; + sha256 = "0zjby5icpp5r9gqqnfcl2dcpqsam1y10vnnxz0l063h6snnla5kf"; type = "gem"; }; - version = "2.34.3"; + version = "2.37.0"; }; rubocop-rspec = { dependencies = [ "lint_roller" + "regexp_parser" "rubocop" ]; groups = [ @@ -3530,10 +3527,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1qjmvcpk6qwxjdh3w5smr2n7c1glxsdzpv5fi7bkg0j034v0m9wg"; + sha256 = "1qk5bx4vg7n17i9475h6dqkhay9m3s6vanq9y35hxl9cb762wghb"; type = "gem"; }; - version = "3.9.0"; + version = "3.10.2"; }; rubocop-rspec_rails = { dependencies = [ @@ -3564,10 +3561,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0aa1mg6bdl23wgrxd98wycq3963jfpnh9z0yh976p9q03h01r81k"; + sha256 = "0gaq685p1zizhsbax8gakraq46lhvy8m82v86688rzrpf9cg3j2c"; type = "gem"; }; - version = "0.26.9"; + version = "0.26.11"; }; ruby-lsp-rails = { dependencies = [ "ruby-lsp" ]; @@ -3650,6 +3647,20 @@ src: { }; version = "0.7.3"; }; + ruby-vips = { + dependencies = [ + "ffi" + "logger" + ]; + groups = [ "default" ]; + platforms = [ ]; + source = { + remotes = [ "https://rubygems.org" ]; + sha256 = "0x2k5x272m2zs0vmznl2jac14bj9a2g0365xxcnr2s9rq41fr1g6"; + type = "gem"; + }; + version = "2.3.0"; + }; ruby2_keywords = { groups = [ "default" @@ -3669,10 +3680,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0khy3d43cr2i4x9as2k41ckrjb4wkpcycdbzaara4fy4qw923n9f"; + sha256 = "15dnb2admqpyw6ipxbaqj4cnfwldwkm11gwrzlf2sa329pa99296"; type = "gem"; }; - version = "3.3.1"; + version = "3.6.0"; }; samovar = { dependencies = [ "console" ]; @@ -3711,10 +3722,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "14n07y6mg44y8rzsc4w12pf66jqn8iv318dj2y3vmrab60gq7m5p"; + sha256 = "1zcvhvamsmphnai6wjbqk73gpz52ifaya5fmarsxg5nyj347r31h"; type = "gem"; }; - version = "1.100.0"; + version = "1.104.0"; }; sassc-embedded = { dependencies = [ "sass-embedded" ]; @@ -3722,10 +3733,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0qymnvzbgbg9ir70yl0qrhfg2acfrwmlkzdywrkq5k1i81g84qpa"; + sha256 = "1apy1n0x79in6l88f6m7ynkq06a7hpwighywq538cm41a63sv45z"; type = "gem"; }; - version = "1.80.8"; + version = "1.80.9"; }; sawyer = { dependencies = [ @@ -3765,10 +3776,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0xwwfj48d6mpc66lhl4yabnjazpf47wqg9n1i9na7q0h9isdigxl"; + sha256 = "1202qsi1xsskl4qa9fwlzwhs3j783445w20v24js57avfvjldfsx"; type = "gem"; }; - version = "7.0.1"; + version = "8.0.1"; }; sidekiq = { dependencies = [ @@ -3788,55 +3799,24 @@ src: { version = "7.3.10"; }; simplecov = { - dependencies = [ - "docile" - "simplecov-html" - "simplecov_json_formatter" - ]; groups = [ "test" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "198kcbrjxhhzca19yrdcd6jjj9sb51aaic3b0sc3pwjghg3j49py"; + sha256 = "0y0ya82s3zi2wmkadnmb3l9r13mbsvd1g63n9mlp8bhb7zqmx0i5"; type = "gem"; }; - version = "0.22.0"; - }; - simplecov-html = { - groups = [ - "default" - "test" - ]; - platforms = [ ]; - source = { - remotes = [ "https://rubygems.org" ]; - sha256 = "0ikjfwydgs08nm3xzc4cn4b6z6rmcrj2imp84xcnimy2wxa8w2xx"; - type = "gem"; - }; - version = "0.13.2"; - }; - simplecov_json_formatter = { - groups = [ - "default" - "test" - ]; - platforms = [ ]; - source = { - remotes = [ "https://rubygems.org" ]; - sha256 = "0a5l0733hj7sk51j81ykfmlk2vd5vaijlq9d5fn165yyx3xii52j"; - type = "gem"; - }; - version = "0.1.4"; + version = "1.1.1"; }; simpleidn = { groups = [ "default" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0a9c1mdy12y81ck7mcn9f9i2s2wwzjh1nr92ps354q517zq9dkh8"; + sha256 = "00sdym5q3d9zg7lv47mjamzv67z1lfyd3gz9256v0g9gxl5p7jhj"; type = "gem"; }; - version = "0.2.3"; + version = "0.3.0"; }; smarter_json = { dependencies = [ "bigdecimal" ]; @@ -3858,10 +3838,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1kpyqhybal05bmby5myq45s768qs9gw205hs6jb6gynyay67a4ib"; + sha256 = "0kfbrd4sgajhnjwhqpk1mb4h10whfx2h5kb0i3j35yd3280cf0kx"; type = "gem"; }; - version = "2.0.4"; + version = "2.0.7"; }; sqlite3 = { dependencies = [ "mini_portile2" ]; @@ -3869,10 +3849,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "01i6k25fv3w3f5ph5cix9ipg19ajsy6zrzxdm18ashzrldrjjmq4"; + sha256 = "13nh4kd96d28dv3habjv2fiap30ccb73lz8mqx5d0834jl3fcvwm"; type = "gem"; }; - version = "2.9.5"; + version = "2.9.6"; }; sshkey = { groups = [ "default" ]; @@ -3911,29 +3891,19 @@ src: { }; version = "0.2.28"; }; - stringio = { - groups = [ - "default" - "development" - "test" - ]; - platforms = [ ]; - source = { - remotes = [ "https://rubygems.org" ]; - sha256 = "1q92y9627yisykyscv0bdsrrgyaajc2qr56dwlzx7ysgigjv4z63"; - type = "gem"; - }; - version = "3.2.0"; - }; stripe = { + dependencies = [ + "bigdecimal" + "logger" + ]; groups = [ "default" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "13gr4z9nsvpknyy9y2vg4dvg77817m2ykyx57j03692dgv684vm7"; + sha256 = "176l1phy2yayxm7r4q8dnbyfgc22wb0p1rwwxzdhmfjsl9v4jqcs"; type = "gem"; }; - version = "11.1.0"; + version = "19.6.2"; }; strscan = { groups = [ @@ -3970,14 +3940,15 @@ src: { version = "6.3.0"; }; test-prof = { + dependencies = [ "logger" ]; groups = [ "test" ]; platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "17j9cai2ykcndgn0800m9nb297sx0lpminxj8bcqw4bwkb1xjch3"; + sha256 = "188p735jnx0bxm53ysfwsrxcwvj4dfgj1r10k037c9rbc4bylyh2"; type = "gem"; }; - version = "1.6.1"; + version = "1.6.3"; }; thor = { groups = [ @@ -3999,10 +3970,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0kahw453axizbg3x5yi1lyasj2vgd6vshkp6zgsi22w3y41kbb1b"; + sha256 = "1hr7x8v5yzys8s5js4s36b0p0j8klqs559wsbaxdhxdbkv6qnaly"; type = "gem"; }; - version = "0.0.16"; + version = "0.0.17"; }; timeout = { groups = [ @@ -4136,10 +4107,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1g0hmv2axxjvk7m5ksql9q0a6mnhqv4cqgqqzh0pd39vsp9x7c3x"; + sha256 = "1ygpikd3hdqsi16gqh33r5al1b9xdwrv2wl3rw210g7iar9vr3s7"; type = "gem"; }; - version = "1.2026.2"; + version = "1.2026.3"; }; unf = { groups = [ "default" ]; @@ -4229,10 +4200,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0q3jb2cal9c8b0xgdz1xl47w3n1vsb1gwj06c4acsxsqqid07wvp"; + sha256 = "1l17paljrcjdrvv0ida39msync07v3g1ij70cwsjw999gdc42cm7"; type = "gem"; }; - version = "1.1.13"; + version = "1.1.15"; }; web-push = { dependencies = [ @@ -4243,10 +4214,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "13diqh61rl658gwq0c2ds41z59i0x4plj5k4v98qkgd3pgrd4kav"; + sha256 = "0z8qwx6v59dj443z7wf6604wpk5khs5g4nfsmc6vg3y5801v06jh"; type = "gem"; }; - version = "3.0.1"; + version = "3.1.0"; }; webmock = { dependencies = [ @@ -4258,10 +4229,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "142cbab47mjxmg8gc89d94sd3h7an9ligh38r9n88wb3xbr5cibp"; + sha256 = "03fmmb5ym51rby3asas3w5s31hik8mzwf2gvijbfdsqps83a53cd"; type = "gem"; }; - version = "3.26.2"; + version = "3.26.4"; }; webrick = { groups = [ @@ -4316,10 +4287,10 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0a3zi3v7qjm7lm4yp9z2sm959533k543sc4z0ixqik8wcfdpw27b"; + sha256 = "0lfwngmsz3xq9k9la9890cqpm4vk3rda4171yzms7f3w7x4i3qjj"; type = "gem"; }; - version = "0.9.44"; + version = "0.9.45"; }; zeitwerk = { groups = [ @@ -4331,13 +4302,14 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "04hx33lsnp4q0qf8982mz0acs1dap5s2bsmihi0n0g08249sc4kj"; + sha256 = "1rcjpgyzmdxp8rdw466156fmr588k9q1wg8j42g0dkk7hid1519c"; type = "gem"; }; - version = "2.8.2"; + version = "2.8.3"; }; zendesk_api = { dependencies = [ + "base64" "faraday" "faraday-multipart" "hashie" @@ -4349,9 +4321,9 @@ src: { platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0yizpglgfwml6a2w696m97d1q50hq3v0vldja431rv93s9sjbgly"; + sha256 = "05gcvhnz316rff8ysm0746yig1inb80skkz7m4c3bvgq789nqwiz"; type = "gem"; }; - version = "1.38.0.rc1"; + version = "3.1.2"; }; } diff --git a/pkgs/servers/web-apps/discourse/sass_embedded_vendored_dart_sass.patch b/pkgs/servers/web-apps/discourse/sass_embedded_vendored_dart_sass.patch index 8d7f55794fa4..eb18dc3380d0 100644 --- a/pkgs/servers/web-apps/discourse/sass_embedded_vendored_dart_sass.patch +++ b/pkgs/servers/web-apps/discourse/sass_embedded_vendored_dart_sass.patch @@ -1,21 +1,19 @@ diff --git a/ext/sass/Rakefile b/ext/sass/Rakefile -index d542efd..93f97cf 100644 +index a36b11a..93f97cf 100644 --- a/ext/sass/Rakefile +++ b/ext/sass/Rakefile -@@ -84,11 +84,18 @@ file File.absolute_path('node_modules/sass', ARCHDIR) do +@@ -84,10 +84,18 @@ file File.absolute_path('node_modules/sass', ARCHDIR) do end task 'dart-sass' => ( -- begin -- SassConfig.dart_sass +- if SassConfig.dart_support? - File.absolute_path('dart-sass/sass', ARCHDIR) -- rescue NotImplementedError -- File.absolute_path('node_modules/sass', ARCHDIR) + p ENV + if ENV.has_key?('DART_SASS_VENDORED') + mkdir_p ARCHDIR + cp_r ENV.fetch('DART_SASS_VENDORED'), File.absolute_path('dart-sass', ARCHDIR) -+ else + else +- File.absolute_path('node_modules/sass', ARCHDIR) + raise Errno::EINVAL, "no vendored SASS" + begin + SassConfig.dart_sass diff --git a/pkgs/servers/web-apps/discourse/voice-plugin-assets.patch b/pkgs/servers/web-apps/discourse/voice-plugin-assets.patch new file mode 100644 index 000000000000..51092bc9d6e4 --- /dev/null +++ b/pkgs/servers/web-apps/discourse/voice-plugin-assets.patch @@ -0,0 +1,38 @@ +diff --git a/plugins/voice/plugin.rb b/plugins/voice/plugin.rb +index a715e9364e0..29b7eeb3c72 100644 +--- a/plugins/voice/plugin.rb ++++ b/plugins/voice/plugin.rb +@@ -15,18 +15,22 @@ require "discourse_voice_assets" + # immutable, so the versioned URL is what busts caches on a gem bump. The + # client learns the current base path from the site serializer. + voice_javascripts_dir = File.join(__dir__, "public", "javascripts") +-FileUtils.mkdir_p(voice_javascripts_dir) +-Dir +- .children(voice_javascripts_dir) +- .each do |entry| +- if entry != DiscourseVoiceAssets::VERSION +- FileUtils.rm_rf(File.join(voice_javascripts_dir, entry)) +- end +- end +-Discourse::Utils.atomic_ln_s( +- DiscourseVoiceAssets.vendor_path, +- File.join(voice_javascripts_dir, DiscourseVoiceAssets::VERSION), ++unless File.symlink?( ++ File.join(voice_javascripts_dir, DiscourseVoiceAssets::VERSION) + ) ++ FileUtils.mkdir_p(voice_javascripts_dir) ++ Dir ++ .children(voice_javascripts_dir) ++ .each do |entry| ++ if entry != DiscourseVoiceAssets::VERSION ++ FileUtils.rm_rf(File.join(voice_javascripts_dir, entry)) ++ end ++ end ++ Discourse::Utils.atomic_ln_s( ++ DiscourseVoiceAssets.vendor_path, ++ File.join(voice_javascripts_dir, DiscourseVoiceAssets::VERSION), ++ ) ++end + + enabled_site_setting :voice_enabled + From f44e18178eeb48a6d2ef3b4ae5a63ac643635bf7 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 27 Sep 2026 22:15:37 +0000 Subject: [PATCH 40/65] nezha: 2.3.12 -> 2.3.14 (cherry picked from commit cf2bc81331aee8ab89ba3249b352d5700933bed8) --- pkgs/by-name/ne/nezha/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ne/nezha/package.nix b/pkgs/by-name/ne/nezha/package.nix index c4ef024a9cc2..44f2a377739b 100644 --- a/pkgs/by-name/ne/nezha/package.nix +++ b/pkgs/by-name/ne/nezha/package.nix @@ -49,13 +49,13 @@ let in buildGoModule (finalAttrs: { pname = "nezha"; - version = "2.3.12"; + version = "2.3.14"; src = fetchFromGitHub { owner = "nezhahq"; repo = "nezha"; tag = "v${finalAttrs.version}"; - hash = "sha256-XgTbDpfGYbpiFseJjwraDg3svyT0EpgvoY2dvLbtZtQ="; + hash = "sha256-xWJfTop9U3Ms5oeTD4Sdn6ZmESjrx5H9WnAn9KJq608="; }; proxyVendor = true; From f82741a210e3dd4fb951ac0ab9ca169abb6bdcc6 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 27 Sep 2026 20:17:58 +0000 Subject: [PATCH 41/65] pgschema: 1.13.0 -> 1.13.1 (cherry picked from commit b6dde7a2e72c8d107f80c57da55a6c8d20cd854e) --- pkgs/by-name/pg/pgschema/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/pg/pgschema/package.nix b/pkgs/by-name/pg/pgschema/package.nix index 46de161a458d..872ce1656046 100644 --- a/pkgs/by-name/pg/pgschema/package.nix +++ b/pkgs/by-name/pg/pgschema/package.nix @@ -10,14 +10,14 @@ buildGoModule (finalAttrs: { pname = "pgschema"; - version = "1.13.0"; + version = "1.13.1"; __structuredAttrs = true; src = fetchFromGitHub { owner = "pgplex"; repo = "pgschema"; tag = "v${finalAttrs.version}"; - hash = "sha256-w1MLl9NFAS+7a1CzS5IMQUw6BzL8sifNPdnStLySFVg="; + hash = "sha256-hSS+S16LidfSEaSJPkJiaDTdtjaJS1h3wORqpZYyT44="; }; # Adapted from $src/nix/pgschema.nix From 8d1f56db0ac8d3d2f1beff4f63e92b9bdfd59206 Mon Sep 17 00:00:00 2001 From: Vladislav Grechannik Date: Thu, 24 Sep 2026 16:59:41 +0200 Subject: [PATCH 42/65] element-desktop: 1.12.28 -> 1.12.29 Diff: https://github.com/element-hq/element-web/compare/v1.12.28...v1.12.29 Changelog: https://github.com/element-hq/element-web/blob/v1.12.29/CHANGELOG.md (cherry picked from commit e0cf42a68af9ffea7049594f6844d26d2bc26828) --- pkgs/by-name/el/element-desktop/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/el/element-desktop/package.nix b/pkgs/by-name/el/element-desktop/package.nix index f6c3dc15e8c4..da14b196ed93 100644 --- a/pkgs/by-name/el/element-desktop/package.nix +++ b/pkgs/by-name/el/element-desktop/package.nix @@ -30,13 +30,13 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "element-desktop"; - version = "1.12.28"; + version = "1.12.29"; src = fetchFromGitHub { owner = "element-hq"; repo = "element-web"; tag = "v${finalAttrs.version}"; - hash = "sha256-goP/f1Go7227R2euXu8aJrwHeUp84DQ+18ztyf4uXhM="; + hash = "sha256-0LiasFrVMnMX1Z4TcP+Eti58X7+ICksqKnerQKj2ayI="; }; pnpmDeps = fetchPnpmDeps { @@ -155,7 +155,7 @@ stdenv.mkDerivation (finalAttrs: { ''; # The desktop item properties should be kept in sync with data from upstream: - # https://github.com/element-hq/element-desktop/blob/develop/package.json + # https://github.com/element-hq/element-web/blob/develop/apps/desktop/package.json desktopItems = [ (makeDesktopItem { name = "element-desktop"; From 98bad87a363f389d55c2308063c72ae7a11eb671 Mon Sep 17 00:00:00 2001 From: Vladislav Grechannik Date: Thu, 24 Sep 2026 17:09:18 +0200 Subject: [PATCH 43/65] element-web: 1.12.28 -> 1.12.29 Diff: https://github.com/element-hq/element-web/compare/v1.12.28...v1.12.29 Changelog: https://github.com/element-hq/element-web/blob/v1.12.29/CHANGELOG.md (cherry picked from commit 3bf5a0f631e40a6304d619a1083d44c929e823b0) --- pkgs/by-name/el/element-web-unwrapped/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/el/element-web-unwrapped/package.nix b/pkgs/by-name/el/element-web-unwrapped/package.nix index c87da65129f2..d3885675af67 100644 --- a/pkgs/by-name/el/element-web-unwrapped/package.nix +++ b/pkgs/by-name/el/element-web-unwrapped/package.nix @@ -25,13 +25,13 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "element-web"; - version = "1.12.28"; + version = "1.12.29"; src = fetchFromGitHub { owner = "element-hq"; repo = "element-web"; tag = "v${finalAttrs.version}"; - hash = "sha256-goP/f1Go7227R2euXu8aJrwHeUp84DQ+18ztyf4uXhM="; + hash = "sha256-0LiasFrVMnMX1Z4TcP+Eti58X7+ICksqKnerQKj2ayI="; }; pnpmDeps = fetchPnpmDeps { From 57de3219e112e51f8615d7117616553dc4e7109b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 22 Sep 2026 18:41:39 +0000 Subject: [PATCH 44/65] mattermostLatest: 11.10.2 -> 11.11.0 (cherry picked from commit 36d55ca8372c56d38b476e3ec643b40ac399c3db) --- pkgs/by-name/ma/mattermostLatest/package.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/ma/mattermostLatest/package.nix b/pkgs/by-name/ma/mattermostLatest/package.nix index f2fe65c4dd78..ddc9e789ae92 100644 --- a/pkgs/by-name/ma/mattermostLatest/package.nix +++ b/pkgs/by-name/ma/mattermostLatest/package.nix @@ -15,10 +15,10 @@ mattermost.override ( # and make sure the version regex is up to date here. # Ensure you also check ../mattermost/package.nix for ESR releases. regex = "^v(11\\.[0-9]+\\.[0-9]+)$"; - version = "11.10.2"; - srcHash = "sha256-d4sOH9L2vawyiRLXIhZLzEqExiYbrdy/h0v4GZW7DNc="; - vendorHash = "sha256-k3JPDzrZzLeKb20o2aLZR/TX7dN7nhpQs6UZ5olvV94="; - npmDepsHash = "sha256-jDGUbBwxjZ50bbbnUJVMCzKJMlHYhUKy7Be9zsWjMqg="; + version = "11.11.0"; + srcHash = "sha256-QB7C3TCmrUgTUST6hUEIM143cUfiORyaYnP6I2t37b8="; + vendorHash = "sha256-FNZ6030d8Tro06ZlycN9lU9gd+7oxfuFciJOeLv+enQ="; + npmDepsHash = "sha256-5Bl+enzE3i8GBPjTtudvrOM9DjfNHL3CkMbNMXSH4AU="; autoUpdate = ./package.nix; }; } From fbc042c0acaf9eb6829579fe11bf0dfb215cd735 Mon Sep 17 00:00:00 2001 From: Victor Engmark Date: Sun, 27 Sep 2026 10:11:07 +0200 Subject: [PATCH 45/65] ci/github-script/docs-styleguide: Use more common spelling of "style guide" See [trend](https://trends.google.com/explore?q=styleguide%2Cstyle%2520guide&date=all&geo=Worldwide) for one indication that the new spelling is much more common. Conflicts not backported: doc/README.md doc/styleguide.md These files have diverged on master vs 26.05. Not-cherry-picked-because: only backporting CI changes from 795f334f0756efc2cc5d5da66edd20256291085b --- ci/github-script/reminders/docs-styleguide.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/github-script/reminders/docs-styleguide.md b/ci/github-script/reminders/docs-styleguide.md index d42fc5265e11..7947d5fac888 100644 --- a/ci/github-script/reminders/docs-styleguide.md +++ b/ci/github-script/reminders/docs-styleguide.md @@ -1,6 +1,6 @@ Thanks for contributing to the documentation -Make sure you follow the [documentation styleguide](https://github.com/NixOS/nixpkgs/blob/master/doc/styleguide.md), most notably: +Make sure you follow the [documentation style guide](https://github.com/NixOS/nixpkgs/blob/master/doc/styleguide.md), most notably: - Show, don't tell: lead with a minimal working example; explanation follows the code. - No meta-commentary: don't write "This section explains how to…", just do it. From c1c164010fc9c5f1e8764fd34263754549c579b7 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 28 Sep 2026 08:39:09 +0000 Subject: [PATCH 46/65] mago: 1.49.0 -> 1.50.0 (cherry picked from commit 02ebf54cdffcc23704951fc02a65f025e202f0fb) --- pkgs/by-name/ma/mago/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ma/mago/package.nix b/pkgs/by-name/ma/mago/package.nix index 310a885c7fc6..5d2602434467 100644 --- a/pkgs/by-name/ma/mago/package.nix +++ b/pkgs/by-name/ma/mago/package.nix @@ -11,17 +11,17 @@ rustPackages_1_97.rustPlatform.buildRustPackage (finalAttrs: { pname = "mago"; - version = "1.49.0"; + version = "1.50.0"; src = fetchFromGitHub { owner = "carthage-software"; repo = "mago"; tag = finalAttrs.version; - hash = "sha256-1DTVDv87OBtOEU6U53IWrTw7i2JN8TZJYAQepwc2ek8="; + hash = "sha256-Dk92uB9+y/E0l9Et2RbxH/u7rk5owyEYJbIFUWnko8I="; forceFetchGit = true; # Does not download all files otherwise }; - cargoHash = "sha256-yhMghVhY7TxFUYwbGVC5QwFyTAqakbYMq7jPSk88PIM="; + cargoHash = "sha256-oIxNpmw3q1DvBlaURUl8+AKud+gbGk8jD9Vw8utVRO4="; env = { # Get openssl-sys to use pkg-config From 0200d6620ed40dce839aa682153a99151cda0c1c Mon Sep 17 00:00:00 2001 From: emilylange Date: Mon, 28 Sep 2026 16:55:07 +0200 Subject: [PATCH 47/65] openbao: 2.6.2 -> 2.6.3 https://github.com/openbao/openbao/releases/tag/v2.6.3 Not-cherry-picked-because: openbao 2.7.x on master is a breaking change --- pkgs/by-name/op/openbao/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/op/openbao/package.nix b/pkgs/by-name/op/openbao/package.nix index f8f27f239081..ff3eab8d602a 100644 --- a/pkgs/by-name/op/openbao/package.nix +++ b/pkgs/by-name/op/openbao/package.nix @@ -14,16 +14,16 @@ buildGoModule (finalAttrs: { pname = "openbao"; - version = "2.6.2"; + version = "2.6.3"; src = fetchFromGitHub { owner = "openbao"; repo = "openbao"; tag = "v${finalAttrs.version}"; - hash = "sha256-iFOah7LkuiL4MGhi6ANpgCYDYQl33gF+F4agdKLEFTk="; + hash = "sha256-YqrwQQYfJzd3YaQx4ic7nE3/td/R+V0z32uxdL0oSIc="; }; - vendorHash = "sha256-gORWU9Yn+AX00mQD5uq9k7ksbkLVWv8W2N4IxEOsE88="; + vendorHash = "sha256-v2UbwSsH6jgxFmXcoSbynD/iB2+4JFw3B0lcztXfmcc="; proxyVendor = true; From 8770bf87c6a2115bb6848c65e99dda29070f7ad4 Mon Sep 17 00:00:00 2001 From: Marie Ramlow Date: Thu, 17 Sep 2026 09:54:32 +0200 Subject: [PATCH 48/65] masterpdfeditor: use archive.org as a fallback (cherry picked from commit 708985846395cc90229ddda705e3aa4c8f433484) --- pkgs/by-name/ma/masterpdfeditor/package.nix | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ma/masterpdfeditor/package.nix b/pkgs/by-name/ma/masterpdfeditor/package.nix index fa926431b0e1..d99af012fe54 100644 --- a/pkgs/by-name/ma/masterpdfeditor/package.nix +++ b/pkgs/by-name/ma/masterpdfeditor/package.nix @@ -21,11 +21,15 @@ stdenv.mkDerivation (finalAttrs: { src = let selectSystem = attrs: attrs.${stdenv.hostPlatform.system}; + makeUrls = url: [ + url + "https://web.archive.org/web/${url}" + ]; in fetchurl { - url = selectSystem { - x86_64-linux = "https://code-industry.net/public/master-pdf-editor-${finalAttrs.version}-qt5.x86_64-qt_include.tar.gz"; - aarch64-linux = "https://code-industry.net/public/master-pdf-editor-${finalAttrs.version}-qt5.arm64.tar.gz"; + urls = selectSystem { + x86_64-linux = makeUrls "https://code-industry.net/public/master-pdf-editor-${finalAttrs.version}-qt5.x86_64-qt_include.tar.gz"; + aarch64-linux = makeUrls "https://code-industry.net/public/master-pdf-editor-${finalAttrs.version}-qt5.arm64.tar.gz"; }; hash = selectSystem { x86_64-linux = "sha256-ksVuJyuImstESVwHUmOUv6aERosg6g5bSsRvPSf5EVM="; From 69e8b3f3e005159ee1a97b67a2dca78e28ff3e61 Mon Sep 17 00:00:00 2001 From: transcaffeine Date: Mon, 28 Sep 2026 17:28:23 +0200 Subject: [PATCH 49/65] victoriametrics: 1.152.0 -> 1.153.0 Release notes: https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.153.0 Full changelog: https://github.com/VictoriaMetrics/VictoriaMetrics/compare/v1.152.0...v1.153.0 (cherry picked from commit 7b95bdba78960f1abfc8e11f35fc0f4502f83e28) --- pkgs/by-name/vi/victoriametrics/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/vi/victoriametrics/package.nix b/pkgs/by-name/vi/victoriametrics/package.nix index 647399a8cad2..4bbb48639808 100644 --- a/pkgs/by-name/vi/victoriametrics/package.nix +++ b/pkgs/by-name/vi/victoriametrics/package.nix @@ -14,13 +14,13 @@ buildGo127Module (finalAttrs: { pname = "VictoriaMetrics"; - version = "1.152.0"; + version = "1.153.0"; src = fetchFromGitHub { owner = "VictoriaMetrics"; repo = "VictoriaMetrics"; tag = "v${finalAttrs.version}"; - hash = "sha256-3PDFQbVJhwyMUvA/ToXJKBOIN9xKoBGp/YjHntjwKr4="; + hash = "sha256-mp6BEoTsG0MJMOEUOVX0NcNlQRYNBKdGADTIlkWfexw="; }; vendorHash = null; From f068ec77eef04375f1af28a81dd8535c38c0c735 Mon Sep 17 00:00:00 2001 From: Diogo Correia Date: Sat, 18 Jul 2026 14:48:59 +0100 Subject: [PATCH 50/65] nixos/tests/flaresolverr: fetch local webpage This ensures that the browser is started and working. (cherry picked from commit bd3f7f442916a6d61fe13cea0fb85946f60e1a2d) --- nixos/tests/flaresolverr.nix | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/nixos/tests/flaresolverr.nix b/nixos/tests/flaresolverr.nix index 19b95565bcb8..2b24951d5ed3 100644 --- a/nixos/tests/flaresolverr.nix +++ b/nixos/tests/flaresolverr.nix @@ -10,11 +10,30 @@ enable = true; port = 8888; }; + + services.nginx = { + enable = true; + virtualHosts.localhost = { + locations."/" = { + return = "200 'hello world'"; + extraConfig = '' + default_type text/plain; + ''; + }; + }; + }; }; - testScript = '' + testScript = /* python */ '' + import json + machine.wait_for_unit("flaresolverr.service") machine.wait_for_open_port(8888) machine.succeed("curl --fail http://localhost:8888/") + + res = machine.succeed("""curl --fail http://localhost:8888/v1 -X POST --json '{ "cmd": "request.get", "url": "http://localhost/", "maxTimeout": 10000 }'""") + res = json.loads(res) + response = res["solution"]["response"] + assert "hello world" in response, f"Could not find 'hello world' in response: {response}" ''; } From d81de7a2b4d254603cfc15272ebea26700da1130 Mon Sep 17 00:00:00 2001 From: liberodark Date: Mon, 14 Sep 2026 11:21:04 +0200 Subject: [PATCH 51/65] nixos/glpi-agent: fix cpu and memory reporting in inventory (cherry picked from commit 21cce0b93de70585e65ec47daa13bcd20dd1f303) --- nixos/modules/services/monitoring/glpi-agent.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nixos/modules/services/monitoring/glpi-agent.nix b/nixos/modules/services/monitoring/glpi-agent.nix index 4d0407e1a5f8..17845506b910 100644 --- a/nixos/modules/services/monitoring/glpi-agent.nix +++ b/nixos/modules/services/monitoring/glpi-agent.nix @@ -95,8 +95,8 @@ in DynamicUser = true; StateDirectory = "glpi-agent"; - CapabilityBoundingSet = [ "CAP_SYS_ADMIN" ]; - AmbientCapabilities = [ "CAP_SYS_ADMIN" ]; + CapabilityBoundingSet = [ "CAP_DAC_READ_SEARCH" ]; + AmbientCapabilities = [ "CAP_DAC_READ_SEARCH" ]; LimitCORE = 0; LimitNOFILE = 65535; @@ -104,7 +104,7 @@ in MemorySwapMax = 0; MemoryZSwapMax = 0; PrivateTmp = true; - ProcSubset = "pid"; + ProcSubset = "all"; ProtectClock = true; ProtectControlGroups = true; ProtectHome = true; From 48ca2bb29071bf171be1198ae40403a639974ebb Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 28 May 2026 04:28:46 +0000 Subject: [PATCH 52/65] cockpit-machines: 352 -> 353 (cherry picked from commit 1fa74cedc2e1ab45ad9e236aaba03cb13cea8b4e) --- pkgs/by-name/co/cockpit-machines/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-machines/package.nix b/pkgs/by-name/co/cockpit-machines/package.nix index 868a576c4620..d16e56df2a18 100644 --- a/pkgs/by-name/co/cockpit-machines/package.nix +++ b/pkgs/by-name/co/cockpit-machines/package.nix @@ -13,13 +13,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-machines"; - version = "352"; + version = "353"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-machines"; tag = finalAttrs.version; - hash = "sha256-wDDskuvGVq5MWvi+3+3OXpaswPvea8+NDcic70GiYkg="; + hash = "sha256-K4p2HDg1Wh1ORw3S2BeY0Kbpy+CEGyiCM623/6M4LpU="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From 40dac86c79d9d7ffdb73f1aa5d85c6abcac7b577 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 24 Jun 2026 07:04:46 +0000 Subject: [PATCH 53/65] cockpit-machines: 353 -> 354 (cherry picked from commit 303808fabace1adef98155213fa736ce3499c338) --- pkgs/by-name/co/cockpit-machines/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-machines/package.nix b/pkgs/by-name/co/cockpit-machines/package.nix index d16e56df2a18..b58acdbcee30 100644 --- a/pkgs/by-name/co/cockpit-machines/package.nix +++ b/pkgs/by-name/co/cockpit-machines/package.nix @@ -13,13 +13,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-machines"; - version = "353"; + version = "354"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-machines"; tag = finalAttrs.version; - hash = "sha256-K4p2HDg1Wh1ORw3S2BeY0Kbpy+CEGyiCM623/6M4LpU="; + hash = "sha256-r5gvs6/clRDV0VZKU1r6fjJSwHLuf9Pnhi0c60/9qkE="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From 14405850aba5bbc8184bb93a193331d0da438c97 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 8 Aug 2026 06:00:39 +0000 Subject: [PATCH 54/65] cockpit-machines: 354 -> 355 (cherry picked from commit 1e4d44f5c4738f8ee91702a8cd4bfc95c62632f5) --- pkgs/by-name/co/cockpit-machines/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-machines/package.nix b/pkgs/by-name/co/cockpit-machines/package.nix index b58acdbcee30..ced900d029a3 100644 --- a/pkgs/by-name/co/cockpit-machines/package.nix +++ b/pkgs/by-name/co/cockpit-machines/package.nix @@ -13,13 +13,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-machines"; - version = "354"; + version = "355"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-machines"; tag = finalAttrs.version; - hash = "sha256-r5gvs6/clRDV0VZKU1r6fjJSwHLuf9Pnhi0c60/9qkE="; + hash = "sha256-9NRpo9j0EDTWvJAPuAhr3H6Gigt7MdwYbdXZeGqHVGo="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From 55ee39626a2a6a76ad6facd7e824d94fe1f74ec8 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 26 Sep 2026 13:19:25 +0000 Subject: [PATCH 55/65] cockpit-machines: 355 -> 357 (cherry picked from commit cd7c88460db40f6ca6245d3515857090295ff015) --- pkgs/by-name/co/cockpit-machines/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-machines/package.nix b/pkgs/by-name/co/cockpit-machines/package.nix index ced900d029a3..56391614c881 100644 --- a/pkgs/by-name/co/cockpit-machines/package.nix +++ b/pkgs/by-name/co/cockpit-machines/package.nix @@ -13,13 +13,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-machines"; - version = "355"; + version = "357"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-machines"; tag = finalAttrs.version; - hash = "sha256-9NRpo9j0EDTWvJAPuAhr3H6Gigt7MdwYbdXZeGqHVGo="; + hash = "sha256-RuMmBqx+Fm+qHLxFct5Kc2zW98EBHQpK77zvCkAQ+24="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From 5e1965c7dfc9ac1f2f88a20a5adfed409b8fce50 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 6 Jun 2026 16:22:51 +0000 Subject: [PATCH 56/65] cockpit-files: 40 -> 41 (cherry picked from commit 95f66653f3b00c5a4a248601d9cb81ac0e1b3234) --- pkgs/by-name/co/cockpit-files/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-files/package.nix b/pkgs/by-name/co/cockpit-files/package.nix index 58bf2eff76a6..8239d5dbf066 100644 --- a/pkgs/by-name/co/cockpit-files/package.nix +++ b/pkgs/by-name/co/cockpit-files/package.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-files"; - version = "40"; + version = "41"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-files"; tag = finalAttrs.version; - hash = "sha256-Mofw8hn/+NtkqFqe2MDI+hp/MyTwXDteY/hv3GofIPs="; + hash = "sha256-qS9L0REWN8exXiy5ogYQNbuwaxuh8CiKaCUJHdkfSqQ="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From 978c02b65f13f04095780f886be8b8f00c909c2c Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 24 Jun 2026 07:05:25 +0000 Subject: [PATCH 57/65] cockpit-files: 41 -> 42 (cherry picked from commit 707cfed68ebd8304388c5a25ad14966936de4dd5) --- pkgs/by-name/co/cockpit-files/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-files/package.nix b/pkgs/by-name/co/cockpit-files/package.nix index 8239d5dbf066..60ad181b1230 100644 --- a/pkgs/by-name/co/cockpit-files/package.nix +++ b/pkgs/by-name/co/cockpit-files/package.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-files"; - version = "41"; + version = "42"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-files"; tag = finalAttrs.version; - hash = "sha256-qS9L0REWN8exXiy5ogYQNbuwaxuh8CiKaCUJHdkfSqQ="; + hash = "sha256-NfI6y60O5ctsPbwPcXgkwxpNYuZkF/2YXZOIcRZUc5c="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From 039411d4b9ca687fd99527e17e50675c0aca8b42 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 8 Aug 2026 06:01:07 +0000 Subject: [PATCH 58/65] cockpit-files: 42 -> 43 (cherry picked from commit 3675245e7b4aa8ce54cc1780847ca535a13779ef) --- pkgs/by-name/co/cockpit-files/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-files/package.nix b/pkgs/by-name/co/cockpit-files/package.nix index 60ad181b1230..e92e47bb9d53 100644 --- a/pkgs/by-name/co/cockpit-files/package.nix +++ b/pkgs/by-name/co/cockpit-files/package.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-files"; - version = "42"; + version = "43"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-files"; tag = finalAttrs.version; - hash = "sha256-NfI6y60O5ctsPbwPcXgkwxpNYuZkF/2YXZOIcRZUc5c="; + hash = "sha256-ex15Bs8hFlNnksTEQC3rxhpiKDpK6bY3r3o5wX9ad44="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From f7795b28d86a398b8de1dd2bc9529eebf2bbe33f Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 26 Sep 2026 13:19:49 +0000 Subject: [PATCH 59/65] cockpit-files: 43 -> 45 (cherry picked from commit 41ba158543cef46a68180d0943d87ceecda7e6a3) --- pkgs/by-name/co/cockpit-files/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-files/package.nix b/pkgs/by-name/co/cockpit-files/package.nix index e92e47bb9d53..faeb53aac5dc 100644 --- a/pkgs/by-name/co/cockpit-files/package.nix +++ b/pkgs/by-name/co/cockpit-files/package.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-files"; - version = "43"; + version = "45"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-files"; tag = finalAttrs.version; - hash = "sha256-ex15Bs8hFlNnksTEQC3rxhpiKDpK6bY3r3o5wX9ad44="; + hash = "sha256-+ubt2tROkxpuWMIwUD81EhBJyGfG1+a5QLf3G5P8G9Y="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From 87295a151ecf88bede13d5e6ca5ae2e1ceb17e59 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 28 May 2026 04:29:17 +0000 Subject: [PATCH 60/65] cockpit-podman: 125 -> 126 (cherry picked from commit 200267c91858d1cf9b0f1f7035850a0d6124c026) --- pkgs/by-name/co/cockpit-podman/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-podman/package.nix b/pkgs/by-name/co/cockpit-podman/package.nix index 275ea5eccf51..7e301bd5d9c9 100644 --- a/pkgs/by-name/co/cockpit-podman/package.nix +++ b/pkgs/by-name/co/cockpit-podman/package.nix @@ -12,13 +12,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-podman"; - version = "125"; + version = "126"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-podman"; tag = finalAttrs.version; - hash = "sha256-8YKqcm+IEhZwCPdNrMceAXdoBRS5xyRxrQM1FDNCANk="; + hash = "sha256-E8sFBiC7kcxkBhoDOL6ZDRYD2b2ZXZ8PN2oqA+rG6G4="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From c5eaf18c61c52f4906159fa5b008e300c1f5218c Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 6 Jun 2026 16:23:21 +0000 Subject: [PATCH 61/65] cockpit-podman: 126 -> 127 (cherry picked from commit 5028aec7a081371b243491e7e14bbc8d56758517) --- pkgs/by-name/co/cockpit-podman/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-podman/package.nix b/pkgs/by-name/co/cockpit-podman/package.nix index 7e301bd5d9c9..e14de81eaf25 100644 --- a/pkgs/by-name/co/cockpit-podman/package.nix +++ b/pkgs/by-name/co/cockpit-podman/package.nix @@ -12,13 +12,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-podman"; - version = "126"; + version = "127"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-podman"; tag = finalAttrs.version; - hash = "sha256-E8sFBiC7kcxkBhoDOL6ZDRYD2b2ZXZ8PN2oqA+rG6G4="; + hash = "sha256-dYwiHvpyzu03ceinPeEuTpnRx4OOmA9/UuIKJNxb1eY="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From 36b3b528de2e998eb85aac8edd4f0b18812f65af Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 24 Jun 2026 07:06:14 +0000 Subject: [PATCH 62/65] cockpit-podman: 127 -> 128 (cherry picked from commit 1e768f34cd39d208cc21830ad13792020f77a5e3) --- pkgs/by-name/co/cockpit-podman/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-podman/package.nix b/pkgs/by-name/co/cockpit-podman/package.nix index e14de81eaf25..7a5278395eed 100644 --- a/pkgs/by-name/co/cockpit-podman/package.nix +++ b/pkgs/by-name/co/cockpit-podman/package.nix @@ -12,13 +12,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-podman"; - version = "127"; + version = "128"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-podman"; tag = finalAttrs.version; - hash = "sha256-dYwiHvpyzu03ceinPeEuTpnRx4OOmA9/UuIKJNxb1eY="; + hash = "sha256-GlnIZGV5nk7o28EUs4H/IdZkgtHG0a9uwCTCS4rCP6c="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From acf8a301054fa9786372c3af7320ef5f84b45eea Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 8 Aug 2026 06:01:45 +0000 Subject: [PATCH 63/65] cockpit-podman: 128 -> 129 (cherry picked from commit f12022a2f49dcb3aa440ecc54af48c27de15747a) --- pkgs/by-name/co/cockpit-podman/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-podman/package.nix b/pkgs/by-name/co/cockpit-podman/package.nix index 7a5278395eed..dd679c46317c 100644 --- a/pkgs/by-name/co/cockpit-podman/package.nix +++ b/pkgs/by-name/co/cockpit-podman/package.nix @@ -12,13 +12,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-podman"; - version = "128"; + version = "129"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-podman"; tag = finalAttrs.version; - hash = "sha256-GlnIZGV5nk7o28EUs4H/IdZkgtHG0a9uwCTCS4rCP6c="; + hash = "sha256-NFEVwDrDgFQphSh7k56wjGsWJslkerJEQ6FFm5xJsfA="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From 9bc01ea3642b8149a28a710a602e05d66c890a00 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 26 Sep 2026 13:20:31 +0000 Subject: [PATCH 64/65] cockpit-podman: 129 -> 131 (cherry picked from commit fa6c4534eba85cfc9c4b4cc04448d618c896859b) --- pkgs/by-name/co/cockpit-podman/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/co/cockpit-podman/package.nix b/pkgs/by-name/co/cockpit-podman/package.nix index dd679c46317c..12f8387d5642 100644 --- a/pkgs/by-name/co/cockpit-podman/package.nix +++ b/pkgs/by-name/co/cockpit-podman/package.nix @@ -12,13 +12,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cockpit-podman"; - version = "129"; + version = "131"; src = fetchFromGitHub { owner = "cockpit-project"; repo = "cockpit-podman"; tag = finalAttrs.version; - hash = "sha256-NFEVwDrDgFQphSh7k56wjGsWJslkerJEQ6FFm5xJsfA="; + hash = "sha256-+djsTOaE8tY2pn5O7KWNHdtqEogDEPUETNeWt3bzdhU="; fetchSubmodules = true; postFetch = "cp $out/node_modules/.package-lock.json $out/package-lock.json"; From 55ca808a8945cd9a3a736dffb8d3460e5d496055 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 27 Sep 2026 10:54:12 +0000 Subject: [PATCH 65/65] poco: 1.15.3 -> 1.15.4 (cherry picked from commit 7bb21b40702b7db637776242aaccce21f0ffedce) --- pkgs/by-name/po/poco/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/po/poco/package.nix b/pkgs/by-name/po/poco/package.nix index bbcb46c704ed..f3af2b0bee0e 100644 --- a/pkgs/by-name/po/poco/package.nix +++ b/pkgs/by-name/po/poco/package.nix @@ -20,12 +20,12 @@ stdenv.mkDerivation rec { pname = "poco"; - version = "1.15.3"; + version = "1.15.4"; src = fetchFromGitHub { owner = "pocoproject"; repo = "poco"; - hash = "sha256-mUONqjbKHvdsTM6zk9/QLEr1lVV6f9I/shLW2B8iqMk="; + hash = "sha256-IpBwGwPY873EqWXOYFOBiuNrJBu1r+dBTOByHZ9Lnhg="; tag = "poco-${version}-release"; };