From c9f9061fded4f55c6bfc2999336e03d15e0f580b Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 17:34:55 +0000 Subject: [PATCH 01/95] =?UTF-8?q?evolution-data-server:=203.60.1=20?= =?UTF-8?q?=E2=86=92=203.60.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/evolution-data-server/-/compare/3.60.1...3.60.2 (cherry picked from commit e06b33e3b903b8a5314041a8f31d791b14a70f76) --- .../evolution-data-server/hardcode-gsettings.patch | 12 ++++++------ pkgs/by-name/ev/evolution-data-server/package.nix | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/by-name/ev/evolution-data-server/hardcode-gsettings.patch b/pkgs/by-name/ev/evolution-data-server/hardcode-gsettings.patch index 9a45269b21f9..c259dd0f1269 100644 --- a/pkgs/by-name/ev/evolution-data-server/hardcode-gsettings.patch +++ b/pkgs/by-name/ev/evolution-data-server/hardcode-gsettings.patch @@ -130,7 +130,7 @@ index 9d986d2..d63902a 100644 g_object_unref (settings); diff --git a/src/addressbook/libedata-book/e-book-meta-backend.c b/src/addressbook/libedata-book/e-book-meta-backend.c -index 60ff97f..8535dec 100644 +index c24a37a..e5cf57e 100644 --- a/src/addressbook/libedata-book/e-book-meta-backend.c +++ b/src/addressbook/libedata-book/e-book-meta-backend.c @@ -148,7 +148,18 @@ ebmb_is_power_saver_enabled (void) @@ -338,7 +338,7 @@ index 94f0769..8de758b 100644 g_clear_object (&settings); diff --git a/src/camel/camel-utils.c b/src/camel/camel-utils.c -index 2c0b6ef..b354332 100644 +index 3de034a..b6732ba 100644 --- a/src/camel/camel-utils.c +++ b/src/camel/camel-utils.c @@ -363,7 +363,19 @@ void @@ -363,10 +363,10 @@ index 2c0b6ef..b354332 100644 G_CALLBACK (mi_user_headers_settings_changed_cb), NULL); G_UNLOCK (mi_user_headers); diff --git a/src/camel/providers/imapx/camel-imapx-server.c b/src/camel/providers/imapx/camel-imapx-server.c -index e605049..9961fea 100644 +index e3f2391..374c72d 100644 --- a/src/camel/providers/imapx/camel-imapx-server.c +++ b/src/camel/providers/imapx/camel-imapx-server.c -@@ -5666,7 +5666,18 @@ camel_imapx_server_do_old_flags_update (CamelFolder *folder) +@@ -5682,7 +5682,18 @@ camel_imapx_server_do_old_flags_update (CamelFolder *folder) if (do_old_flags_update) { GSettings *eds_settings; @@ -507,10 +507,10 @@ index 3738359..f9ce2d9 100644 g_object_unref (settings); diff --git a/src/libedataserver/e-oauth2-service.c b/src/libedataserver/e-oauth2-service.c -index c999d4d..e9cf7c5 100644 +index 9f56da2..f82921a 100644 --- a/src/libedataserver/e-oauth2-service.c +++ b/src/libedataserver/e-oauth2-service.c -@@ -93,7 +93,18 @@ eos_default_guess_can_process (EOAuth2Service *service, +@@ -95,7 +95,18 @@ eos_default_guess_can_process (EOAuth2Service *service, name_len = strlen (name); hostname_len = strlen (hostname); diff --git a/pkgs/by-name/ev/evolution-data-server/package.nix b/pkgs/by-name/ev/evolution-data-server/package.nix index 4a686d1d2775..65178d7ce4cc 100644 --- a/pkgs/by-name/ev/evolution-data-server/package.nix +++ b/pkgs/by-name/ev/evolution-data-server/package.nix @@ -50,7 +50,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "evolution-data-server"; - version = "3.60.1"; + version = "3.60.2"; outputs = [ "out" @@ -59,7 +59,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnome/sources/evolution-data-server/${lib.versions.majorMinor finalAttrs.version}/evolution-data-server-${finalAttrs.version}.tar.xz"; - hash = "sha256-M/ktO4gi66BMMTeWwHeMu2Who4Ry6FftxfmIVMyps0w="; + hash = "sha256-IITb2sOWNxs2XVBMH/RYZrqNyi8SUuXaHT2cM6vcEoY="; }; patches = [ From fd82477190dbec446f3ae038b117c38b884c7859 Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 17:36:17 +0000 Subject: [PATCH 02/95] =?UTF-8?q?gdm:=2050.0=20=E2=86=92=2050.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/gdm/-/compare/50.0...50.1 (cherry picked from commit 99728d9ec3c9cce625edb0e447ecd1dbe1087eb3) --- pkgs/by-name/gd/gdm/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gd/gdm/package.nix b/pkgs/by-name/gd/gdm/package.nix index a84f733c3345..6495cdc457d8 100644 --- a/pkgs/by-name/gd/gdm/package.nix +++ b/pkgs/by-name/gd/gdm/package.nix @@ -44,7 +44,7 @@ in stdenv.mkDerivation (finalAttrs: { pname = "gdm"; - version = "50.0"; + version = "50.1"; outputs = [ "out" @@ -53,7 +53,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnome/sources/gdm/${lib.versions.major finalAttrs.version}/gdm-${finalAttrs.version}.tar.xz"; - hash = "sha256-ZG9T1o8tLRRxRv+uuFBH3ti4E9yxwQTY8Ow2ymCetb8="; + hash = "sha256-dwFZNzUSGSQQ9BK10MRnjsFXPxrks5yB/nWGH+iJAXQ="; }; mesonFlags = [ From e45a15826051f85b3511ddb6757c855e0892e121 Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 17:38:38 +0000 Subject: [PATCH 03/95] =?UTF-8?q?gnome-control-center:=2050.1=20=E2=86=92?= =?UTF-8?q?=2050.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/gnome-control-center/-/compare/50.1...50.2 (cherry picked from commit df9ee173ed727614d166cb33d0e01d3b26ce7723) --- pkgs/by-name/gn/gnome-control-center/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gn/gnome-control-center/package.nix b/pkgs/by-name/gn/gnome-control-center/package.nix index 6fdf165b7ec8..d4d1d2eeaa6e 100644 --- a/pkgs/by-name/gn/gnome-control-center/package.nix +++ b/pkgs/by-name/gn/gnome-control-center/package.nix @@ -77,11 +77,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "gnome-control-center"; - version = "50.1"; + version = "50.2"; src = fetchurl { url = "mirror://gnome/sources/gnome-control-center/${lib.versions.major finalAttrs.version}/gnome-control-center-${finalAttrs.version}.tar.xz"; - hash = "sha256-64MkkdCI5PdCbopZKxBCikWlc2wL/+IQXFHExow6Ud0="; + hash = "sha256-tWvriHuUMumAp1e5juydMdiWlev/tHkbPDvUeWI6kmE="; }; patches = [ From 5a438929e5dc8effaa5b8c93c6eaad5f08908cd8 Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 17:40:23 +0000 Subject: [PATCH 04/95] =?UTF-8?q?gnome-session:=2050.0=20=E2=86=92=2050.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/gnome-session/-/compare/50.0...50.1 (cherry picked from commit 9179733defecd874460759e58778c5dc65c0872a) --- pkgs/by-name/gn/gnome-session/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gn/gnome-session/package.nix b/pkgs/by-name/gn/gnome-session/package.nix index f1f41e7ea312..2ae9f47e8790 100644 --- a/pkgs/by-name/gn/gnome-session/package.nix +++ b/pkgs/by-name/gn/gnome-session/package.nix @@ -27,7 +27,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "gnome-session"; # Also bump ./ctl.nix when bumping major version. - version = "50.0"; + version = "50.1"; outputs = [ "out" @@ -36,7 +36,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnome/sources/gnome-session/${lib.versions.major finalAttrs.version}/gnome-session-${finalAttrs.version}.tar.xz"; - hash = "sha256-vncIzZ0mDhrBg4FTE9u2ILGHbq1bo5zn6i5tx629ckY="; + hash = "sha256-Yom2r6RNPkyZnOV2H/iywQujCfVflCXysT+YIIyB9vs="; }; patches = [ From ead9cf9d5317f01e3db091c8bba533ca5c3fd732 Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 17:41:28 +0000 Subject: [PATCH 05/95] =?UTF-8?q?gnome-shell:=2050.1=20=E2=86=92=2050.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/gnome-shell/-/compare/50.1...50.2 (cherry picked from commit 459d7086cab166218a4134ce3f45cfd9be18f6fa) --- pkgs/by-name/gn/gnome-shell/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gn/gnome-shell/package.nix b/pkgs/by-name/gn/gnome-shell/package.nix index bede5d2d751e..94315515d002 100644 --- a/pkgs/by-name/gn/gnome-shell/package.nix +++ b/pkgs/by-name/gn/gnome-shell/package.nix @@ -73,7 +73,7 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "gnome-shell"; - version = "50.1"; + version = "50.2"; outputs = [ "out" @@ -82,7 +82,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnome/sources/gnome-shell/${lib.versions.major finalAttrs.version}/gnome-shell-${finalAttrs.version}.tar.xz"; - hash = "sha256-G0d2AXLBTz9O3Rya/zZfTeRVg1F78PgN9NOsvU5MspQ="; + hash = "sha256-UyFUIOUO/dTQYRultZ4Qy0yJ+j9R4q3f2Vyt4GGgmik="; }; patches = [ From 3c2aa51e43a21f75ce9edc4f3d42f2f628cb987e Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 17:43:34 +0000 Subject: [PATCH 06/95] =?UTF-8?q?gnome-software:=2050.1=20=E2=86=92=2050.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/gnome-software/-/compare/50.1...50.2 (cherry picked from commit bcd725fed02f896637e0ed088e9c7b387d0454e7) --- pkgs/by-name/gn/gnome-software/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gn/gnome-software/package.nix b/pkgs/by-name/gn/gnome-software/package.nix index 52b81eec1fce..c89227c58930 100644 --- a/pkgs/by-name/gn/gnome-software/package.nix +++ b/pkgs/by-name/gn/gnome-software/package.nix @@ -48,11 +48,11 @@ in stdenv.mkDerivation (finalAttrs: { pname = "gnome-software"; - version = "50.1"; + version = "50.2"; src = fetchurl { url = "mirror://gnome/sources/gnome-software/${lib.versions.major finalAttrs.version}/gnome-software-${finalAttrs.version}.tar.xz"; - hash = "sha256-aWfu/sadUdNNIAWFye3+JPFRgD5J7ZKEo9dO2w5TQKg="; + hash = "sha256-ysroXVfkbRj0p8j+M0vzXIwY51uKZvrVbgzioA4c/j8="; }; patches = [ From 681017927c66ac7677d675c8e873c61902b656dd Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 17:44:23 +0000 Subject: [PATCH 07/95] =?UTF-8?q?gnome-text-editor:=2050.0=20=E2=86=92=205?= =?UTF-8?q?0.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/gnome-text-editor/-/compare/50.0...50.1 (cherry picked from commit f1407811b9b0e5e0b7b27dd19b8cd3f5bf99c4d4) --- pkgs/by-name/gn/gnome-text-editor/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gn/gnome-text-editor/package.nix b/pkgs/by-name/gn/gnome-text-editor/package.nix index ffafb849bb03..8c8fb7beaaaf 100644 --- a/pkgs/by-name/gn/gnome-text-editor/package.nix +++ b/pkgs/by-name/gn/gnome-text-editor/package.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "gnome-text-editor"; - version = "50.0"; + version = "50.1"; src = fetchurl { url = "mirror://gnome/sources/gnome-text-editor/${lib.versions.major finalAttrs.version}/gnome-text-editor-${finalAttrs.version}.tar.xz"; - hash = "sha256-ncKZ2k2qCFQjtdSNtZ8AIa1V50FDpcuKsuX/4Xln9Fs="; + hash = "sha256-9oA2sJ03j6qIO/6Tbkecb/NwJ8L/7RAdr5Et9wxR0OY="; }; nativeBuildInputs = [ From 2f25627e98341b60f9aac14383105979b7a27559 Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 17:45:19 +0000 Subject: [PATCH 08/95] =?UTF-8?q?gnome-user-docs:=2050.0=20=E2=86=92=2050.?= =?UTF-8?q?2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/gnome-user-docs/-/compare/50.0...50.2 (cherry picked from commit 391ebae7949f74f690b52fb159c116a95c930132) --- pkgs/by-name/gn/gnome-user-docs/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gn/gnome-user-docs/package.nix b/pkgs/by-name/gn/gnome-user-docs/package.nix index 246b3cd0420c..6327615c371b 100644 --- a/pkgs/by-name/gn/gnome-user-docs/package.nix +++ b/pkgs/by-name/gn/gnome-user-docs/package.nix @@ -11,11 +11,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "gnome-user-docs"; - version = "50.0"; + version = "50.2"; src = fetchurl { url = "mirror://gnome/sources/gnome-user-docs/${lib.versions.major finalAttrs.version}/gnome-user-docs-${finalAttrs.version}.tar.xz"; - hash = "sha256-6OIzJBhMfphcUE8F9tnGNCDJqdH2Tv3l2iqBEjYHL3g="; + hash = "sha256-g0hj2RYYmuE/clYr6B04FyMuE20NN+w3aBERH/oVlUI="; }; nativeBuildInputs = [ From 07598f9f5b4c80c23976e35eb3162d7f4ec7eb6f Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 17:46:43 +0000 Subject: [PATCH 09/95] =?UTF-8?q?gnome-user-share:=2048.2=20=E2=86=92=2048?= =?UTF-8?q?.3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/gnome-user-share/-/compare/48.2...48.3 (cherry picked from commit b8764a66a676abcdb5a42e35ef347be785cd5236) --- pkgs/by-name/gn/gnome-user-share/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gn/gnome-user-share/package.nix b/pkgs/by-name/gn/gnome-user-share/package.nix index 1cc81d060b58..e5043acb06d8 100644 --- a/pkgs/by-name/gn/gnome-user-share/package.nix +++ b/pkgs/by-name/gn/gnome-user-share/package.nix @@ -26,11 +26,11 @@ in stdenv.mkDerivation (finalAttrs: { pname = "gnome-user-share"; - version = "48.2"; + version = "48.3"; src = fetchurl { url = "mirror://gnome/sources/gnome-user-share/${lib.versions.major finalAttrs.version}/gnome-user-share-${finalAttrs.version}.tar.xz"; - hash = "sha256-Ayho1Ar4UIC6Thi6XatGwOZj7H5DiUnwgsgFeV9ivwY="; + hash = "sha256-oE1IP0mz92naj/Xi0/y/++rztsa3HYLSoqYju0seDdQ="; }; cargoDeps = rustPlatform.fetchCargoVendor { From 90cb46c1d3a10295542eafc28ad0c2f5e35ee57a Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 17:50:35 +0000 Subject: [PATCH 10/95] =?UTF-8?q?gupnp-av:=200.14.4=20=E2=86=92=200.14.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/gupnp-av/-/compare/gupnp-av-0.14.4...gupnp-av-0.14.5 (cherry picked from commit e20dab6b2ed0109bd9421019748187c63c7e749f) --- pkgs/by-name/gu/gupnp-av/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/gu/gupnp-av/package.nix b/pkgs/by-name/gu/gupnp-av/package.nix index 9ab6982ea828..22422a67b388 100644 --- a/pkgs/by-name/gu/gupnp-av/package.nix +++ b/pkgs/by-name/gu/gupnp-av/package.nix @@ -15,7 +15,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "gupnp-av"; - version = "0.14.4"; + version = "0.14.5"; outputs = [ "out" @@ -25,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnome/sources/gupnp-av/${lib.versions.majorMinor finalAttrs.version}/gupnp-av-${finalAttrs.version}.tar.xz"; - sha256 = "Idl0sydctdz1uKodmj/IDn7cpwaTX2+9AEx5eHE4+Mc="; + sha256 = "k5GPz1r1Kf2ls9LZ/Dt3zZPfiAZJObgvJJ9Vd9jeHAI="; }; strictDeps = true; From daab3ecb00ba400a797c28b51581ce890c3f27f6 Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 17:53:05 +0000 Subject: [PATCH 11/95] =?UTF-8?q?nautilus:=2050.1=20=E2=86=92=2050.2.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/nautilus/-/compare/50.1...50.2.2 (cherry picked from commit 250bde9c3c8e65a5a4570ba5512da5e4dd105f76) --- pkgs/by-name/na/nautilus/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/na/nautilus/package.nix b/pkgs/by-name/na/nautilus/package.nix index d535f9081431..d210135a1d87 100644 --- a/pkgs/by-name/na/nautilus/package.nix +++ b/pkgs/by-name/na/nautilus/package.nix @@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "nautilus"; - version = "50.1"; + version = "50.2.2"; outputs = [ "out" @@ -54,7 +54,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnome/sources/nautilus/${lib.versions.major finalAttrs.version}/nautilus-${finalAttrs.version}.tar.xz"; - hash = "sha256-1ieTuWWXcbZqa24FK1Iin4aN2+wTiKC2ae7wvSESEu4="; + hash = "sha256-4eKF7930LtMN2lsp9/jSQtq0vBQJqQVIY7NnutSzTVo="; }; patches = [ From 5c5d5d0e60d3a70d2ad994a322bf1552ad721ef2 Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 17:55:02 +0000 Subject: [PATCH 12/95] =?UTF-8?q?orca:=2050.1.2=20=E2=86=92=2050.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/orca/-/compare/50.1.2...50.2 (cherry picked from commit efec514c0b771e0d63f7e64670debbcc06481afb) --- pkgs/by-name/or/orca/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/or/orca/package.nix b/pkgs/by-name/or/orca/package.nix index 6cb77c9b2ed0..d666bd22a269 100644 --- a/pkgs/by-name/or/orca/package.nix +++ b/pkgs/by-name/or/orca/package.nix @@ -31,13 +31,13 @@ python3.pkgs.buildPythonApplication (finalAttrs: { pname = "orca"; - version = "50.1.2"; + version = "50.2"; pyproject = false; src = fetchurl { url = "mirror://gnome/sources/orca/${lib.versions.major finalAttrs.version}/orca-${finalAttrs.version}.tar.xz"; - hash = "sha256-hZK1PfhCOep13aqN7GeSyE0rmft7R6X9kCLGr4ymV6g="; + hash = "sha256-BxRCHN6OxLr0fxjktKErTlxKPP47FhVp4HD+A3cT/QQ="; }; patches = [ From d97283b0ed032e2334b1da79b726071b2d8a52c9 Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 18:07:12 +0000 Subject: [PATCH 13/95] =?UTF-8?q?papers:=2050.0=20=E2=86=92=2050.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/papers/-/compare/50.0...50.2 (cherry picked from commit 20aefa7228383ffb304beb3161da2a67be0d6d00) --- pkgs/by-name/pa/papers/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/pa/papers/package.nix b/pkgs/by-name/pa/papers/package.nix index c1a16e039543..2695ea244070 100644 --- a/pkgs/by-name/pa/papers/package.nix +++ b/pkgs/by-name/pa/papers/package.nix @@ -41,7 +41,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "papers"; - version = "50.0"; + version = "50.2"; outputs = [ "out" @@ -51,7 +51,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnome/sources/papers/${lib.versions.major finalAttrs.version}/papers-${finalAttrs.version}.tar.xz"; - hash = "sha256-MBsg60a8ZNbKcuo3F10o2orqT4YT5HG5TDGF5cTRvAU="; + hash = "sha256-rhvc8c1Hy1DJ2EdleEYH+Bxy3xfdbmrZM/6hQXPSufQ="; }; cargoDeps = rustPlatform.fetchCargoVendor { From c3d7311dd923760e591f17528710ab4775a320de Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 18:11:23 +0000 Subject: [PATCH 14/95] =?UTF-8?q?rygel:=2045.1=20=E2=86=92=2045.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/rygel/-/compare/45.1...45.2 (cherry picked from commit b196b6a6d6469cc442f53fce7f7e994c64fb6d61) --- pkgs/by-name/ry/rygel/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ry/rygel/package.nix b/pkgs/by-name/ry/rygel/package.nix index 53e2e425b73a..a22928d51c55 100644 --- a/pkgs/by-name/ry/rygel/package.nix +++ b/pkgs/by-name/ry/rygel/package.nix @@ -38,7 +38,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "rygel"; - version = "45.1"; + version = "45.2"; # TODO: split out lib outputs = [ @@ -48,7 +48,7 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnome/sources/rygel/${lib.versions.major finalAttrs.version}/rygel-${finalAttrs.version}.tar.xz"; - hash = "sha256-zzhuKA2Or5tmd6L0i6eEhMcqCVVNXFjFHNh/pZRWF8g="; + hash = "sha256-IOV7cLFahl133Dj594arxSxksRH+X5OKYsKNcS3xMx0="; }; patches = [ From 1583fa5634c28129ab58164b9dda906d9e3b0817 Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 18:12:10 +0000 Subject: [PATCH 15/95] =?UTF-8?q?sushi:=2050.rc.1=20=E2=86=92=2050.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/sushi/-/compare/50.rc.1...50.0 (cherry picked from commit 077ef53a6b2d5cc7c93cbd6f305124cc9379ce62) --- pkgs/by-name/su/sushi/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/su/sushi/package.nix b/pkgs/by-name/su/sushi/package.nix index 6bb8f31e72ed..714cf91381a0 100644 --- a/pkgs/by-name/su/sushi/package.nix +++ b/pkgs/by-name/su/sushi/package.nix @@ -26,11 +26,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "sushi"; - version = "50.rc.1"; + version = "50.0"; src = fetchurl { url = "mirror://gnome/sources/sushi/${lib.versions.major finalAttrs.version}/sushi-${finalAttrs.version}.tar.xz"; - hash = "sha256-l6efnH4IsLF2Am7Ux6BDXwYSxMENoz1H4rr6ucYpImM="; + hash = "sha256-qyUXeQjVzMWFaHaageubTzIwZ4bmxzYYGT6/YaEn7gA="; }; nativeBuildInputs = [ From 35e2a36161bf94ad7d40472b20140c4b94e2f9a4 Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Tue, 9 Jun 2026 18:13:11 +0000 Subject: [PATCH 16/95] =?UTF-8?q?yelp:=2049.0=20=E2=86=92=2049.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/yelp/-/compare/49.0...49.1 (cherry picked from commit 3a2d18f8682844c64313fc4ea05c94f58b020bea) --- pkgs/by-name/ye/yelp/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ye/yelp/package.nix b/pkgs/by-name/ye/yelp/package.nix index 197b9a79dff1..30b0cbce2796 100644 --- a/pkgs/by-name/ye/yelp/package.nix +++ b/pkgs/by-name/ye/yelp/package.nix @@ -24,11 +24,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "yelp"; - version = "49.0"; + version = "49.1"; src = fetchurl { url = "mirror://gnome/sources/yelp/${lib.versions.major finalAttrs.version}/yelp-${finalAttrs.version}.tar.xz"; - hash = "sha256-5mFOCx9Lpf57jRSb3UJnPwMGVvvc1zaumGBxkZfGNFc="; + hash = "sha256-Pj6U7y0slIfMUQYuOvv6FXjOvSnYDIQ1e21+5tz9inQ="; }; nativeBuildInputs = [ From c39d8ac0c571fa2fd7cc17a2c104bed4a4fbf6e8 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Mon, 15 Jun 2026 15:48:35 +0000 Subject: [PATCH 17/95] =?UTF-8?q?mutter:=2050.1=20=E2=86=92=2050.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://gitlab.gnome.org/GNOME/mutter/-/compare/50.1...50.2 (cherry picked from commit 9c40cf3a9fd2e893bb61f057b1f46b7888e2a1f9) --- pkgs/by-name/mu/mutter/package.nix | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/mu/mutter/package.nix b/pkgs/by-name/mu/mutter/package.nix index f56610f03041..e258f804ac7b 100644 --- a/pkgs/by-name/mu/mutter/package.nix +++ b/pkgs/by-name/mu/mutter/package.nix @@ -1,5 +1,6 @@ { fetchurl, + fetchpatch, runCommand, lib, stdenv, @@ -71,7 +72,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "mutter"; - version = "50.1"; + version = "50.2"; outputs = [ "out" @@ -82,9 +83,18 @@ stdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "mirror://gnome/sources/mutter/${lib.versions.major finalAttrs.version}/mutter-${finalAttrs.version}.tar.xz"; - hash = "sha256-k0RQLORz94h5Xya0X4uP9TwKNrhnRw1wWhGj7gkRAh4="; + hash = "sha256-/ejfinRlAMUfHJJbUeV8PdhwByM771Yweegx9Tv6O1Y="; }; + patches = [ + # mutter 50.2 spams logs, clutter_input_focus_set_cursor_location + # https://gitlab.gnome.org/GNOME/mutter/-/work_items/4840 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/mutter/-/commit/f1570318ec3e9a38615eb91708bb71628ab8bcfd.patch"; + hash = "sha256-73GI2DTgoEBUQGa7nTUIur/ZuDHgDu4SwjUWHBRCyuo="; + }) + ]; + mesonFlags = [ "-Degl_device=true" "-Dinstalled_tests=false" # TODO: enable these From 364ab857806ccb4e5986d12e1542b38d7c06a63c Mon Sep 17 00:00:00 2001 From: sophiebsw Date: Sun, 21 Jun 2026 15:48:47 -0700 Subject: [PATCH 18/95] maintainers: add sophiebsw (cherry picked from commit 77c8c84946b60ec082dd2317237065da933f6eb0) --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index a30acd7b9795..055ef818066f 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -25982,6 +25982,12 @@ githubId = 13762043; matrix = "@sophie:nue.soopy.moe"; }; + sophiebsw = { + name = "Sophia"; + email = "nixpkgs@drifter.dev"; + github = "sophiebsw"; + githubId = 4594464; + }; sophronesis = { email = "oleksandr.buzynnyi@gmail.com"; github = "sophronesis"; From ef475440c846d88cb72a7b2e458871aed03b9723 Mon Sep 17 00:00:00 2001 From: Henri Peurasaari Date: Mon, 8 Jun 2026 01:27:23 +0300 Subject: [PATCH 19/95] archon-lite: init at 9.3.85 Co-authored-by: sophiebsw Co-authored-by: hekazu (cherry picked from commit ea358ade83694da9492e8e83a7a0d93865df9d61) --- pkgs/by-name/ar/archon-lite/package.nix | 33 +++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 pkgs/by-name/ar/archon-lite/package.nix diff --git a/pkgs/by-name/ar/archon-lite/package.nix b/pkgs/by-name/ar/archon-lite/package.nix new file mode 100644 index 000000000000..3e340f2d8e22 --- /dev/null +++ b/pkgs/by-name/ar/archon-lite/package.nix @@ -0,0 +1,33 @@ +{ + lib, + appimageTools, + fetchurl, + nix-update-script, +}: +let + pname = "archon-lite"; + version = "9.3.85"; + src = fetchurl { + url = "https://github.com/RPGLogs/Uploaders-archon-lite/releases/download/v${version}/archon-lite-v${version}.AppImage"; + hash = "sha256-ooNvgbtV6HKgzRLgHZul92NLnEB8oX6fHL6iwfHajVA="; + }; +in +appimageTools.wrapType2 { + inherit pname version src; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Application for uploading MMORPG combat logs"; + homepage = "https://www.archon.gg/download"; + downloadPage = "https://github.com/RPGLogs/Uploaders-archon-lite/releases/tag/v${version}"; + license = lib.licenses.unfree; # no license listed + mainProgram = "archon-lite"; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ + hekazu + sophiebsw + ]; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + }; +} From 2a0c78cf3ec616f7bec88ad0bf4f8c765e24dcbf Mon Sep 17 00:00:00 2001 From: Ryan Omasta Date: Tue, 16 Jun 2026 18:34:21 -0600 Subject: [PATCH 20/95] eddie: fix path mismatch error (cherry picked from commit e3de906b81a090be0ae841ac5cd6a53e0c999f52) --- pkgs/by-name/ed/eddie/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/ed/eddie/package.nix b/pkgs/by-name/ed/eddie/package.nix index 977c49caeff9..0054a2a59c73 100644 --- a/pkgs/by-name/ed/eddie/package.nix +++ b/pkgs/by-name/ed/eddie/package.nix @@ -107,7 +107,7 @@ buildDotnetModule (finalAttrs: { cp src/Lib.Platform.Linux.Native/bin/libLib.Platform.Linux.Native.so $out/lib/eddie-ui cp src/App.Forms.Linux.Tray/bin/eddie-tray $out/lib/eddie-ui - ln -s $out/lib/eddie-ui/eddie-cli-elevated $out/lib/eddie/eddie-cli-elevated + cp $out/lib/eddie-ui/eddie-cli-elevated $out/lib/eddie/eddie-cli-elevated ln -s $out/lib/eddie-ui/libLib.Platform.Linux.Native.so $out/lib/eddie/Lib.Platform.Linux.Native.so cp -r src/App.Forms.Linux/bin/*/Release/* $out/lib/eddie-ui From a02b6baa5e3b1d4287b8d9c632bb7f1c4424252b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 18 Jun 2026 12:50:01 +0000 Subject: [PATCH 21/95] homebank: 5.10.1 -> 5.10.2 (cherry picked from commit 8c3117f6c5d6f09722890fc968c9d17607a68b4d) --- pkgs/by-name/ho/homebank/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ho/homebank/package.nix b/pkgs/by-name/ho/homebank/package.nix index de3635b82153..e7026b74bd4a 100644 --- a/pkgs/by-name/ho/homebank/package.nix +++ b/pkgs/by-name/ho/homebank/package.nix @@ -13,10 +13,10 @@ stdenv.mkDerivation (finalAttrs: { pname = "homebank"; - version = "5.10.1"; + version = "5.10.2"; src = fetchurl { url = "https://www.gethomebank.org/public/sources/homebank-${finalAttrs.version}.tar.gz"; - hash = "sha256-Z1EtMYjqRfkqb5Mm6CnBQq9a1QkwZwLzsEV6GrYR1Co="; + hash = "sha256-8L6v4H6iIVXI+OJneY1usF1uAV1WYLlvs0/eylprxMc="; }; nativeBuildInputs = [ From e24a6edb6f65fa8c41fee6ab17dab221d42d6af9 Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Wed, 17 Jun 2026 23:21:51 -0700 Subject: [PATCH 22/95] =?UTF-8?q?openafs:=201.8.15=20=E2=86=92=201.8.16?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Kaseorg (cherry picked from commit 167a0b78ea6ca7a573bd439a43be5b75804d77b0) --- pkgs/by-name/op/openafs/module.nix | 63 ------------------------------ pkgs/by-name/op/openafs/srcs.nix | 6 +-- 2 files changed, 3 insertions(+), 66 deletions(-) diff --git a/pkgs/by-name/op/openafs/module.nix b/pkgs/by-name/op/openafs/module.nix index 8c88b291b7bd..234498b7b3dc 100644 --- a/pkgs/by-name/op/openafs/module.nix +++ b/pkgs/by-name/op/openafs/module.nix @@ -28,69 +28,6 @@ stdenv.mkDerivation { inherit src; patches = [ - # Linux: Use get_tree_nodev - (fetchpatch { - url = "https://github.com/openafs/openafs/commit/c02a8f451b48766aa163e729abe40d145751b2dc.patch"; - hash = "sha256-9okSQLV4tW1wjoffQXPneZbu6tTRqrqVPbEOwZmaD+E="; - }) - # LINUX: Re-dirty folio on writepages recursion - (fetchpatch { - url = "https://github.com/openafs/openafs/commit/11849e96820eca64d91742a8c521614e1e99d9fa.patch"; - hash = "sha256-F2MOqEDaj4e0Xj1mvs7v61cutZY3cO22p9iIp2bLiRQ="; - }) - # Linux: Introduce LINUX_WRITE_CACHE_PAGES_USES_FOLIOS - (fetchpatch { - url = "https://github.com/openafs/openafs/commit/63a3503240c06187fa87514e5ea421cece483422.patch"; - hash = "sha256-ZWV8IZ8CeFQaEOamqKfkXuUccSxCRFNkZ7/kxKbEuis="; - }) - # Linux: Avoid write_cache_pages() for ->writepages() - (fetchpatch { - url = "https://gerrit.openafs.org/changes/16704/revisions/d465a07a98c2b0b2c23780571a8fe70c2584473a/patch"; - decode = "base64 -d"; - hash = "sha256-2FOf+o36gbTHm90RxtOI7iXcgb6rv9nh9rSjZzL5O7A="; - }) - # LINUX: Log warning on recursive folio writeback - (fetchpatch { - url = "https://gerrit.openafs.org/changes/16705/revisions/d66ca6372461840c6ecaaa46ec293640c8f22573/patch"; - decode = "base64 -d"; - hash = "sha256-A383wDMkwnGFatBDHUGV8FVqPMjzvhqUnIWrP2C+ym4="; - }) - # Linux: Move afs_root()/afs_fill_super() in osi_vfsops - (fetchpatch { - url = "https://gerrit.openafs.org/changes/16706/revisions/988c70859f1d402022e9342e28f0c5a954760a72/patch"; - decode = "base64 -d"; - hash = "sha256-JsZwGGa7dRT43RIUUY3hYCbbqPObd5bkDOHl9QK/MhE="; - }) - # Linux: Use sockaddr_unsized for socket->ops->bind - (fetchpatch { - url = "https://gerrit.openafs.org/changes/16707/revisions/e6069d6c35e848b5b388f4c47a2ecf0d72420198/patch"; - decode = "base64 -d"; - hash = "sha256-hTRaTqOc0njW/RIsNTrFZ5uWTrQq04Fuh/Sk7K2Q5e4="; - }) - # Linux: Pass 3rd parameter to filemap_alloc_folio() - (fetchpatch { - url = "https://gerrit.openafs.org/changes/16708/revisions/48d2184ec95418cada68b70919b0afd9888bb945/patch"; - decode = "base64 -d"; - hash = "sha256-CSGlXYkkLSHQoWK2xLpUYJDOUP/mlsxkTru2qdmbeQo="; - }) - # Linux: implement aops->migrate_folio - (fetchpatch { - url = "https://gerrit.openafs.org/changes/16709/revisions/2c51471aea08cc495a5d59fee6e651ba58c9d772/patch"; - decode = "base64 -d"; - hash = "sha256-TtcblVczSp8b1bfd0ajWjK2LffAkgYr2+KUL2nEe8hs="; - }) - # Linux: Use set_default_d_op() to set dentry ops - (fetchpatch { - url = "https://gerrit.openafs.org/changes/16729/revisions/6d0a2107fcab28fc4ba64d365133d171b75bd3dc/patch"; - decode = "base64 -d"; - hash = "sha256-OKxR5zzVKSXPzudPl5jc7koObisQMMqq/d9kfrMem/M="; - }) - # Linux: Use __getname()/__putname() to alloc name - (fetchpatch { - url = "https://gerrit.openafs.org/changes/16738/revisions/a1754489f382aabd087f14c325d13a36faa5bf5c/patch"; - decode = "base64 -d"; - hash = "sha256-JizLrwnujybCkcbDIltGfgVtCc5fL3ZxWvgVbI1kKto="; - }) ]; nativeBuildInputs = [ diff --git a/pkgs/by-name/op/openafs/srcs.nix b/pkgs/by-name/op/openafs/srcs.nix index 596198b13cfc..28de72ebe14d 100644 --- a/pkgs/by-name/op/openafs/srcs.nix +++ b/pkgs/by-name/op/openafs/srcs.nix @@ -1,16 +1,16 @@ { fetchurl }: rec { - version = "1.8.15"; + version = "1.8.16"; src = fetchurl { url = "https://www.openafs.org/dl/openafs/${version}/openafs-${version}-src.tar.bz2"; - hash = "sha256-MvEN0kG12LhG5CWrnL8nW1VroYgL9998RZzZ60kFg1U="; + hash = "sha256-7oEnaJdXy9lyOoU6EvrigcnenD6JSkvZAQf7b4UnBGk="; }; srcs = [ src (fetchurl { url = "https://www.openafs.org/dl/openafs/${version}/openafs-${version}-doc.tar.bz2"; - hash = "sha256-kAGRw3T0VdJ/XMqqFjV0Z7gzKbWeyZWEsMsBJ+7ijsE="; + hash = "sha256-F9fyLe5Ofs6Ri4MXlO63wOZmhZuY8FAh2P/aoAX5wiQ="; }) ]; } From 9f05bc5734159fe0310b544b8adb1088e9272e44 Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Wed, 17 Jun 2026 23:24:53 -0700 Subject: [PATCH 23/95] linuxPackages.openafs: Patch for Linux kernel 7.1 Signed-off-by: Anders Kaseorg (cherry picked from commit 1008c97051459df1098806565922bf8012d63330) --- pkgs/by-name/op/openafs/module.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkgs/by-name/op/openafs/module.nix b/pkgs/by-name/op/openafs/module.nix index 234498b7b3dc..d9c455f5db41 100644 --- a/pkgs/by-name/op/openafs/module.nix +++ b/pkgs/by-name/op/openafs/module.nix @@ -28,6 +28,16 @@ stdenv.mkDerivation { inherit src; patches = [ + # Linux: pagevec.h renamed to folio_batch.h + (fetchpatch { + url = "https://github.com/openafs/openafs/commit/d47c438aec49e417066a7bef00bd82078014f5ea.patch"; + hash = "sha256-LPURZovpl6KbigzP4mNjgHvPlXYKY5Pxh8sj9RT2W08="; + }) + # Linux: Add comment for d_alias configure test + (fetchpatch { + url = "https://github.com/openafs/openafs/commit/fd157926f08d10afe981d85654395bbf083ea7a3.patch"; + hash = "sha256-gJ+ylIEZwJcpTWc5hmIXS/QcxtICqjaEzZsl2QegjhY="; + }) ]; nativeBuildInputs = [ From 733951864f9e0cc6c007d267a8d53a5fbe36e620 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 26 May 2026 06:38:37 +0000 Subject: [PATCH 24/95] nono: 0.53.0 -> 0.57.0 (cherry picked from commit 2d8ef57585a50d43c067f05a83c171b432e71626) --- pkgs/by-name/no/nono/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/no/nono/package.nix b/pkgs/by-name/no/nono/package.nix index c4bf330111a5..e968c252c6c3 100644 --- a/pkgs/by-name/no/nono/package.nix +++ b/pkgs/by-name/no/nono/package.nix @@ -13,7 +13,7 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "nono"; - version = "0.53.0"; + version = "0.57.0"; __darwinAllowLocalNetworking = true; # required for tests @@ -21,9 +21,9 @@ rustPlatform.buildRustPackage (finalAttrs: { owner = "always-further"; repo = "nono"; tag = "v${finalAttrs.version}"; - hash = "sha256-jK3/NDNQkeeCKP2iMIJMCq9lrDZ9ksiEnHhFmrz+gew="; + hash = "sha256-EoxKq8aEfc0XoSm92mZgxc2Zoc9B7Oo6NAjcFOlSZfw="; }; - cargoHash = "sha256-OK2vlXYFdjMHqzVR6ZoRn7WEfAUVATGhk32JLoDED5c="; + cargoHash = "sha256-MBTUSNbOWOhrYL18+yPCg6Ydjym50JMuqTt/U0kQiL4="; nativeBuildInputs = [ pkg-config From bd6b44a59da2b1baef0d4c53e5d41c1500e0246e Mon Sep 17 00:00:00 2001 From: 06kellyjac Date: Wed, 3 Jun 2026 14:33:34 +0100 Subject: [PATCH 25/95] nono: 0.57.0 -> 0.61.1 Diff: https://github.com/always-further/nono/compare/v0.57.0...v0.61.1 Changelog: https://github.com/always-further/nono/blob/refs/tags/v0.61.1/CHANGELOG.md (cherry picked from commit 3d0d00e2e14f7fb489fa6ec8aab459a6288cb290) --- pkgs/by-name/no/nono/package.nix | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/no/nono/package.nix b/pkgs/by-name/no/nono/package.nix index e968c252c6c3..271b2e56ae4c 100644 --- a/pkgs/by-name/no/nono/package.nix +++ b/pkgs/by-name/no/nono/package.nix @@ -13,7 +13,7 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "nono"; - version = "0.57.0"; + version = "0.61.1"; __darwinAllowLocalNetworking = true; # required for tests @@ -21,9 +21,9 @@ rustPlatform.buildRustPackage (finalAttrs: { owner = "always-further"; repo = "nono"; tag = "v${finalAttrs.version}"; - hash = "sha256-EoxKq8aEfc0XoSm92mZgxc2Zoc9B7Oo6NAjcFOlSZfw="; + hash = "sha256-y5oMR5Vawf/1QUj3ACDdqAjKT+Q2gizRfKkal340EP8="; }; - cargoHash = "sha256-MBTUSNbOWOhrYL18+yPCg6Ydjym50JMuqTt/U0kQiL4="; + cargoHash = "sha256-Oy/IqAK5ml1vu0eee+pF5pRjzk0Na/Fb04e1Mx0d924="; nativeBuildInputs = [ pkg-config @@ -81,6 +81,16 @@ rustPlatform.buildRustPackage (finalAttrs: { # panics with "exact-path fallback must not recursively cover descendants" "capability_ext::tests::test_from_profile_allow_file_falls_back_to_exact_directory_when_present" + # nono-cli + # wants access to /var/folders + "sandbox_state::cap_file_validation_tests::test_acceptable_temp_roots_includes_var_folders_on_macos" + "sandbox_state::cap_file_validation_tests::test_validate_rejects_path_outside_temp" + # don't work inside of the /nix dir + # unsure why home is still under /nix with writableTmpDirAsHomeHook + "deprecated_override_deny_flag_emits_single_warning_on_stderr" + "deprecated_override_deny_flag_warning_is_emitted_once_for_multiple_uses" + "override_deny_alias_and_bypass_protection_merge_in_argv_order" + # env_vars # don't work inside of the /nix dir # unsure why home is still under /nix with writableTmpDirAsHomeHook From ee8e35d073a3e2b52c4bb8feb2d584b36c32568f Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 24 Jun 2026 15:00:18 +0200 Subject: [PATCH 26/95] python315: 3.15.0b2 -> 3.15.0b3 https://docs.python.org/3.15/whatsnew/changelog.html#python-3-15-0-beta-3 (cherry picked from commit 4361d1c65bb734dd20ca33df017c70ee26dbb38b) --- pkgs/development/interpreters/python/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix index 5ce6197655c6..53e73fa79c49 100644 --- a/pkgs/development/interpreters/python/default.nix +++ b/pkgs/development/interpreters/python/default.nix @@ -92,9 +92,9 @@ major = "3"; minor = "15"; patch = "0"; - suffix = "b2"; + suffix = "b3"; }; - hash = "sha256-0U9HSrZ56QvHNLAv9YRHtuyZqCGvYdb/DB2g+G40GnE="; + hash = "sha256-apNa4jSmfmVJiUNzsM/rg2EYLQOyFEIyiulZirdCISc="; inherit passthruFun; }; From 4b7e79918019668cb7d9620d943adcfdb56daff2 Mon Sep 17 00:00:00 2001 From: Ming-Chuan Date: Sun, 21 Jun 2026 20:00:16 -0700 Subject: [PATCH 27/95] krita: 6.0.1 -> 6.0.2.1 (cherry picked from commit 9c08d7e8992de790599ad6cd0e03c02c012412ba) --- pkgs/by-name/kr/krita-unwrapped/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/kr/krita-unwrapped/package.nix b/pkgs/by-name/kr/krita-unwrapped/package.nix index b2db245af594..039a958e02d6 100644 --- a/pkgs/by-name/kr/krita-unwrapped/package.nix +++ b/pkgs/by-name/kr/krita-unwrapped/package.nix @@ -37,10 +37,10 @@ stdenv.mkDerivation (finalAttrs: { pname = "krita-unwrapped"; - version = "6.0.1"; + version = "6.0.2.1"; src = fetchurl { url = "mirror://kde/stable/krita/${finalAttrs.version}/krita-${finalAttrs.version}.tar.gz"; - hash = "sha256-COddFMgFJh/IIovsFt70cF9unPsBkecb0EzEwOGChIo="; + hash = "sha256-Z1M8sRXewqWYe1r6fdTPjgREuQfNmTSc8dD7ZEVuQPg="; }; nativeBuildInputs = [ From 1ae521d958f100c3ffe557b6392a84c2e15389e8 Mon Sep 17 00:00:00 2001 From: Sam Cribbs Date: Sun, 21 Jun 2026 16:51:07 -0700 Subject: [PATCH 28/95] godot: set __structuredAttrs and strictDeps to true Assisted-by: GitHub Copilot (cherry picked from commit 8bcc5d47273de804357f02b12517a986cc0eee34) --- pkgs/development/tools/godot/common.nix | 4 +++- pkgs/development/tools/godot/export-templates-bin.nix | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/development/tools/godot/common.nix b/pkgs/development/tools/godot/common.nix index f2d068f68adc..424aef66a0c9 100644 --- a/pkgs/development/tools/godot/common.nix +++ b/pkgs/development/tools/godot/common.nix @@ -341,6 +341,8 @@ let ); attrs = finalAttrs: { + __structuredAttrs = true; + pname = "godot${suffix}"; inherit version; @@ -645,7 +647,7 @@ let # when building the mono editor, we need to build the assemblies # before generating the bundle + lib.optionalString stdenv.hostPlatform.isDarwin '' - scons $sconsFlags generate_bundle=yes + scons "''${sconsFlags[@]}" generate_bundle=yes '' ); diff --git a/pkgs/development/tools/godot/export-templates-bin.nix b/pkgs/development/tools/godot/export-templates-bin.nix index d6fe6890c281..642af51dc9e8 100644 --- a/pkgs/development/tools/godot/export-templates-bin.nix +++ b/pkgs/development/tools/godot/export-templates-bin.nix @@ -14,6 +14,8 @@ # https://docs.godotengine.org/en/stable/tutorials/export/exporting_projects.html#export-templates let self = stdenvNoCC.mkDerivation { + __structuredAttrs = true; + pname = "godot-export-templates${lib.optionalString withMono "-mono"}-bin"; version = version; @@ -26,6 +28,8 @@ let unzip ]; + strictDeps = true; + unpackPhase = '' runHook preUnpack unzip -q "$src" From 5a818d9adf589aa0d51fafb843f21e33ebfa294d Mon Sep 17 00:00:00 2001 From: Sam Cribbs Date: Thu, 18 Jun 2026 16:36:41 -0700 Subject: [PATCH 29/95] godot_4_7: init at 4.7-stable Assisted-by: GitHub Copilot (cherry picked from commit 4d2c1e88b4ba164376feca95858567d1fc8057d8) --- pkgs/development/tools/godot/4.7/default.nix | 11 + pkgs/development/tools/godot/4.7/deps.json | 1297 ++++++++++++++++++ pkgs/development/tools/godot/common.nix | 38 +- pkgs/development/tools/godot/default.nix | 4 + pkgs/top-level/all-packages.nix | 4 + 5 files changed, 1347 insertions(+), 7 deletions(-) create mode 100644 pkgs/development/tools/godot/4.7/default.nix create mode 100644 pkgs/development/tools/godot/4.7/deps.json diff --git a/pkgs/development/tools/godot/4.7/default.nix b/pkgs/development/tools/godot/4.7/default.nix new file mode 100644 index 000000000000..81ccf416ba37 --- /dev/null +++ b/pkgs/development/tools/godot/4.7/default.nix @@ -0,0 +1,11 @@ +{ + version = "4.7-stable"; + hash = "sha256-ur9bQ6DTUxeTRqFITAgjpyoOEHgYnjEAQY3sSNNtr0c="; + default = { + exportTemplatesHash = "sha256-lxRFncBxkHwPPV8X1gj69p582iEzH8XTnEUD/6Tpnuw="; + }; + mono = { + exportTemplatesHash = "sha256-TAKguZrZxbwkPC55RoYo2z34k1DZ24/JlZiPadEm4Gk="; + nugetDeps = ./deps.json; + }; +} diff --git a/pkgs/development/tools/godot/4.7/deps.json b/pkgs/development/tools/godot/4.7/deps.json new file mode 100644 index 000000000000..ca271739dfb7 --- /dev/null +++ b/pkgs/development/tools/godot/4.7/deps.json @@ -0,0 +1,1297 @@ +[ + { + "pname": "coverlet.collector", + "version": "6.0.4", + "hash": "sha256-ieiUl7G5pVKQ4V6rxhEe0ehep0/u1RBD3EAI63AQTI0=" + }, + { + "pname": "DiffPlex", + "version": "1.7.2", + "hash": "sha256-Vsn81duAmPIPkR40h5bEz7hgtF5Kt5nAAGhQZrQbqxE=" + }, + { + "pname": "Humanizer.Core", + "version": "2.14.1", + "hash": "sha256-EXvojddPu+9JKgOG9NSQgUTfWq1RpOYw7adxDPKDJ6o=" + }, + { + "pname": "Humanizer.Core", + "version": "2.2.0", + "hash": "sha256-5Q6oRaV8wHPONHreKvB74VjV2FW36mwC3n+05It5vyI=" + }, + { + "pname": "JetBrains.Annotations", + "version": "2019.1.3", + "hash": "sha256-gn2Z7yANT+2tnK+qbOA2PviRf1M1VtvamABGajgGC6E=" + }, + { + "pname": "JetBrains.Lifetimes", + "version": "2024.3.0", + "hash": "sha256-EkSiuJuLJSip+zw9RHdHSLRFOZuCWWWn2zUY3aIqV1s=" + }, + { + "pname": "JetBrains.RdFramework", + "version": "2024.3.0", + "hash": "sha256-JtaT4VWDEqMcZ2Sy3yBTCmBalJ5+Qy9Mf84ns7PE2WE=" + }, + { + "pname": "JetBrains.Rider.PathLocator", + "version": "1.0.12", + "hash": "sha256-4VmTLbDa+KzFCE/pywgzMijLvgwqt9/nSXvLGg4w17g=" + }, + { + "pname": "Microsoft.Bcl.AsyncInterfaces", + "version": "1.1.1", + "hash": "sha256-fAcX4sxE0veWM1CZBtXR/Unky+6sE33yrV7ohrWGKig=" + }, + { + "pname": "Microsoft.Bcl.AsyncInterfaces", + "version": "5.0.0", + "hash": "sha256-bpJjcJSUSZH0GeOXoZI12xUQOf2SRtxG7sZV0dWS5TI=" + }, + { + "pname": "Microsoft.Bcl.AsyncInterfaces", + "version": "7.0.0", + "hash": "sha256-1e031E26iraIqun84ad0fCIR4MJZ1hcQo4yFN+B7UfE=" + }, + { + "pname": "Microsoft.Bcl.Cryptography", + "version": "9.0.10", + "hash": "sha256-mQt77cIDoHaGi+dWmRGMmIcTln3qs+6v95HwinVYqEw=" + }, + { + "pname": "Microsoft.Build", + "version": "15.1.548", + "hash": "sha256-v6rTGfytT6QwXkp97T6vQurVi8oDzZmIOn3/cHYuC6s=" + }, + { + "pname": "Microsoft.Build.Framework", + "version": "15.1.548", + "hash": "sha256-0U6XANGftKOS9Owx1x8hOe5GOdqx2uwQwuAsVHw297g=" + }, + { + "pname": "Microsoft.Build.Locator", + "version": "1.2.6", + "hash": "sha256-Z5wzSnsGbbJe3nvj6kAAv6KhYMK1H3Mktn4ugflpzuY=" + }, + { + "pname": "Microsoft.Build.NoTargets", + "version": "3.7.56", + "hash": "sha256-eL1PHJ2+sAdV7nKeXt02w8xc0s6sVv29pFpDok8JZjE=" + }, + { + "pname": "Microsoft.CodeAnalysis.Analyzer.Testing", + "version": "1.1.2", + "hash": "sha256-NeOzfN/9WiX/GsZicQ+oDUuPrZgrxTcP8w7kszAKaaY=" + }, + { + "pname": "Microsoft.CodeAnalysis.Analyzers", + "version": "1.0.0", + "hash": "sha256-40uYDx51I8gbyvIaCgo8HIsCoe1NjzQ1sCPb96gpeOs=" + }, + { + "pname": "Microsoft.CodeAnalysis.Analyzers", + "version": "3.0.0", + "hash": "sha256-KDbCfsBWSJ5ohEXUKp1s1LX9xA2NPvXE/xVzj68EdC0=" + }, + { + "pname": "Microsoft.CodeAnalysis.Analyzers", + "version": "3.3.2", + "hash": "sha256-pDeaMqX7a01Hp1Qd9P/y/B2rEGAv2eIY0Ld/klBZW5g=" + }, + { + "pname": "Microsoft.CodeAnalysis.Analyzers", + "version": "3.3.4", + "hash": "sha256-qDzTfZBSCvAUu9gzq2k+LOvh6/eRvJ9++VCNck/ZpnE=" + }, + { + "pname": "Microsoft.CodeAnalysis.CodeFix.Testing", + "version": "1.1.2", + "hash": "sha256-6l7tvU19JoNf/OXxKWSeypB13y9PBto0DwqtmHUUGXo=" + }, + { + "pname": "Microsoft.CodeAnalysis.Common", + "version": "1.0.1", + "hash": "sha256-jjWtdrHSISgBF1m94P0DsVbQa4YxKnf2CWRWYHQLTG8=" + }, + { + "pname": "Microsoft.CodeAnalysis.Common", + "version": "3.11.0", + "hash": "sha256-lOW5q1kAAk+Wpweb9TaZ1LztWzAODt9yZKe6SN5rkV8=" + }, + { + "pname": "Microsoft.CodeAnalysis.Common", + "version": "3.8.0", + "hash": "sha256-3G9vSc/gHH7FWgOySLTut1+eEaf3H66qcPOvNPLOx4o=" + }, + { + "pname": "Microsoft.CodeAnalysis.Common", + "version": "4.11.0", + "hash": "sha256-cX/xgM0VmS+Bsu63KZk2ofjFOOy1mzI+CCVEY6kI+Qk=" + }, + { + "pname": "Microsoft.CodeAnalysis.Common", + "version": "4.8.0", + "hash": "sha256-3IEinVTZq6/aajMVA8XTRO3LTIEt0PuhGyITGJLtqz4=" + }, + { + "pname": "Microsoft.CodeAnalysis.CSharp", + "version": "3.11.0", + "hash": "sha256-AVFv1c6eMi5Jc6GXyL2P3WSs9YTOs3hPO7iGq9tZJsA=" + }, + { + "pname": "Microsoft.CodeAnalysis.CSharp", + "version": "4.11.0", + "hash": "sha256-E9jEOjp9g/CFecsc5/QfRKOPXMRpSw0Tf79XsRgL+Mk=" + }, + { + "pname": "Microsoft.CodeAnalysis.CSharp", + "version": "4.8.0", + "hash": "sha256-MmOnXJvd/ezs5UPcqyGLnbZz5m+VedpRfB+kFZeeqkU=" + }, + { + "pname": "Microsoft.CodeAnalysis.CSharp.Analyzer.Testing", + "version": "1.1.2", + "hash": "sha256-AT5AgpmG9yZ8EjFd23ZlWZwC0E7SvzNwe83yAayp3wA=" + }, + { + "pname": "Microsoft.CodeAnalysis.CSharp.Analyzer.Testing.XUnit", + "version": "1.1.2", + "hash": "sha256-zIjddo1+8ZRANO2aJNPCbtDhNyf6RO7gkkyrAuVLk70=" + }, + { + "pname": "Microsoft.CodeAnalysis.CSharp.CodeFix.Testing", + "version": "1.1.2", + "hash": "sha256-aJyBbJwbopYtAY8peCCNBHrqnV93WU+u4K2G2fTvOWQ=" + }, + { + "pname": "Microsoft.CodeAnalysis.CSharp.CodeFix.Testing.XUnit", + "version": "1.1.2", + "hash": "sha256-7VlXQyC/CbEnUY4UDIcAt48mgWSEzHZFXHc6FDhbEa4=" + }, + { + "pname": "Microsoft.CodeAnalysis.CSharp.SourceGenerators.Testing", + "version": "1.1.2", + "hash": "sha256-WkdcHsqrFQnXEkcuyWPIPybY25QDzpMEem9KflPwFn0=" + }, + { + "pname": "Microsoft.CodeAnalysis.CSharp.SourceGenerators.Testing.XUnit", + "version": "1.1.2", + "hash": "sha256-wYCDZopLucktDQpzACb/BTj+t4arpFuqUEAKxfjLk7U=" + }, + { + "pname": "Microsoft.CodeAnalysis.CSharp.Workspaces", + "version": "3.11.0", + "hash": "sha256-4WQgwOdmKbCMfT2c4K+5ZkErU3zkRboJO0ORHhnUvpo=" + }, + { + "pname": "Microsoft.CodeAnalysis.CSharp.Workspaces", + "version": "4.8.0", + "hash": "sha256-WNzc+6mKqzPviOI0WMdhKyrWs8u32bfGj2XwmfL7bwE=" + }, + { + "pname": "Microsoft.CodeAnalysis.SourceGenerators.Testing", + "version": "1.1.2", + "hash": "sha256-5npL4J8jxcBTmNBT9k3CNeGT0lIWfmWBVXwzEiqRypg=" + }, + { + "pname": "Microsoft.CodeAnalysis.Testing.Verifiers.XUnit", + "version": "1.1.2", + "hash": "sha256-lwRXcej7nA6sa/Ss4HwDBgiMG3NTBx9peiLxn4l0Wrk=" + }, + { + "pname": "Microsoft.CodeAnalysis.Workspaces.Common", + "version": "1.0.1", + "hash": "sha256-/SYPkq5LhOoEWi+rcBZDyQL2U0cQk2YrykNJODrRLVs=" + }, + { + "pname": "Microsoft.CodeAnalysis.Workspaces.Common", + "version": "3.11.0", + "hash": "sha256-mkJ/pkf7x7kQ2NngYl8yOlEwJIEjphL84KyUC5vEKh4=" + }, + { + "pname": "Microsoft.CodeAnalysis.Workspaces.Common", + "version": "3.8.0", + "hash": "sha256-3D7xV3V1WsUU9OMMEOj+z9GouCDKXSBC4Z/Szs/OcWE=" + }, + { + "pname": "Microsoft.CodeAnalysis.Workspaces.Common", + "version": "4.8.0", + "hash": "sha256-X8R4SpWVO/gpip5erVZf5jCCx8EX3VzIRtNrQiLDIoM=" + }, + { + "pname": "Microsoft.CodeCoverage", + "version": "18.0.0", + "hash": "sha256-1RNxheCYASMusDC48BXtaO3MhnInw15JVfjfLM1VMGA=" + }, + { + "pname": "Microsoft.Composition", + "version": "1.0.27", + "hash": "sha256-G/3p3zxOWC8HqLt7Ll5cqN7507F6N/G6G/HzKazQRdE=" + }, + { + "pname": "Microsoft.NET.Test.Sdk", + "version": "18.0.0", + "hash": "sha256-9iW+9mvMeZgDXwSoR08bnvRNsN4jT8OVWcjq3lcE+cs=" + }, + { + "pname": "Microsoft.NETCore.Platforms", + "version": "1.0.1", + "hash": "sha256-mZotlGZqtrqDSoBrZhsxFe6fuOv5/BIo0w2Z2x0zVAU=" + }, + { + "pname": "Microsoft.NETCore.Platforms", + "version": "1.1.0", + "hash": "sha256-FeM40ktcObQJk4nMYShB61H/E8B7tIKfl9ObJ0IOcCM=" + }, + { + "pname": "Microsoft.NETCore.Platforms", + "version": "2.0.0", + "hash": "sha256-IEvBk6wUXSdyCnkj6tHahOJv290tVVT8tyemYcR0Yro=" + }, + { + "pname": "Microsoft.NETCore.Platforms", + "version": "2.1.2", + "hash": "sha256-gYQQO7zsqG+OtN4ywYQyfsiggS2zmxw4+cPXlK+FB5Q=" + }, + { + "pname": "Microsoft.NETCore.Platforms", + "version": "5.0.0", + "hash": "sha256-LIcg1StDcQLPOABp4JRXIs837d7z0ia6+++3SF3jl1c=" + }, + { + "pname": "Microsoft.NETCore.Targets", + "version": "1.0.1", + "hash": "sha256-lxxw/Gy32xHi0fLgFWNj4YTFBSBkjx5l6ucmbTyf7V4=" + }, + { + "pname": "Microsoft.NETCore.Targets", + "version": "1.1.0", + "hash": "sha256-0AqQ2gMS8iNlYkrD+BxtIg7cXMnr9xZHtKAuN4bjfaQ=" + }, + { + "pname": "Microsoft.NETFramework.ReferenceAssemblies", + "version": "1.0.0", + "hash": "sha256-6faPQ4jaFY3OGGVk3lZKW+DEZaIOBZ/wHqbiDTsRR1k=" + }, + { + "pname": "Microsoft.NETFramework.ReferenceAssemblies.net461", + "version": "1.0.0", + "hash": "sha256-oS7sUMzKBkLmhggqbI6eBqb1OPAipH0TDTaDaBixcwM=" + }, + { + "pname": "Microsoft.TestPlatform.ObjectModel", + "version": "18.0.0", + "hash": "sha256-O/ivHdoIO+q1n0byJ9OZO4quOqACOD3K3Qm00wfhuZk=" + }, + { + "pname": "Microsoft.TestPlatform.TestHost", + "version": "18.0.0", + "hash": "sha256-qAIX2Rqxrnh1xaYRjCbkkvvMm407oyKihqyVjURX5wY=" + }, + { + "pname": "Microsoft.VisualStudio.Composition", + "version": "16.1.8", + "hash": "sha256-yFT4t3Uk31R5EPdAxxsTAmRuiv58MlYoYL4JT1ywlHQ=" + }, + { + "pname": "Microsoft.VisualStudio.Composition.NetFxAttributes", + "version": "16.1.8", + "hash": "sha256-FFemIG+m8RWUPo5W+kCHPh5Yn4fGS+tpjGiQTcT0sAE=" + }, + { + "pname": "Microsoft.VisualStudio.SolutionPersistence", + "version": "1.0.52", + "hash": "sha256-KZGPtOXe6Hv8RrkcsgoLKTRyaCScIpQEa2NhNB3iOXw=" + }, + { + "pname": "Microsoft.VisualStudio.Validation", + "version": "15.0.82", + "hash": "sha256-7JFaA/HZHVjsEtTh/iHDRLi5RcuA39KKvvCkuI4JQFc=" + }, + { + "pname": "Microsoft.Win32.Primitives", + "version": "4.0.1", + "hash": "sha256-B4t5El/ViBdxALMcpZulewc4j/3SIXf71HhJWhm4Ctk=" + }, + { + "pname": "Microsoft.Win32.Primitives", + "version": "4.3.0", + "hash": "sha256-mBNDmPXNTW54XLnPAUwBRvkIORFM7/j0D0I2SyQPDEg=" + }, + { + "pname": "Microsoft.Win32.Registry", + "version": "4.0.0", + "hash": "sha256-M/06F/Z2wTHCh4pZOgtCjUGLD1FJXEJKCmzOeFMl7uo=" + }, + { + "pname": "Microsoft.Win32.Registry", + "version": "5.0.0", + "hash": "sha256-9kylPGfKZc58yFqNKa77stomcoNnMeERXozWJzDcUIA=" + }, + { + "pname": "NETStandard.Library", + "version": "1.6.1", + "hash": "sha256-iNan1ix7RtncGWC9AjAZ2sk70DoxOsmEOgQ10fXm4Pw=" + }, + { + "pname": "NETStandard.Library", + "version": "2.0.3", + "hash": "sha256-Prh2RPebz/s8AzHb2sPHg3Jl8s31inv9k+Qxd293ybo=" + }, + { + "pname": "Newtonsoft.Json", + "version": "13.0.1", + "hash": "sha256-K2tSVW4n4beRPzPu3rlVaBEMdGvWSv/3Q1fxaDh4Mjo=" + }, + { + "pname": "Newtonsoft.Json", + "version": "13.0.3", + "hash": "sha256-hy/BieY4qxBWVVsDqqOPaLy1QobiIapkbrESm6v2PHc=" + }, + { + "pname": "NuGet.Common", + "version": "6.3.4", + "hash": "sha256-GDzEyx9/wdVOUAri94uoDjChmfDnBhI90nBfzoHarts=" + }, + { + "pname": "NuGet.Configuration", + "version": "6.3.4", + "hash": "sha256-qXIONIKcCIXJUmNJQs7MINQ18qIEUByTtW5xsORoZoc=" + }, + { + "pname": "NuGet.Frameworks", + "version": "6.12.1", + "hash": "sha256-GGpkbas+PNLx35vvr3nyAVz5lY/aeoMx6qjmT368Lpg=" + }, + { + "pname": "NuGet.Frameworks", + "version": "6.3.4", + "hash": "sha256-zqogus3HXQYSiqfnhVH2jd2VZXa+uTsmaw/uwD8dlgY=" + }, + { + "pname": "NuGet.Packaging", + "version": "6.3.4", + "hash": "sha256-1LKM5vgfNKn8v2LcqialwmcynACISR57q13n7I2lQbU=" + }, + { + "pname": "NuGet.Protocol", + "version": "6.3.4", + "hash": "sha256-j3L4bDzM+0/U4dm9q914DNpOzPpOPWhaolfOFKosdAQ=" + }, + { + "pname": "NuGet.Resolver", + "version": "6.3.4", + "hash": "sha256-rXYXgdJMtwne3skk4jMgqyZlwh3QCTX9hIHvvXafxUM=" + }, + { + "pname": "NuGet.Versioning", + "version": "6.3.4", + "hash": "sha256-6CMYVQeGfXu+xner3T3mgl/iQfXiYixoHizmrNA6bvQ=" + }, + { + "pname": "ReflectionAnalyzers", + "version": "0.1.22-dev", + "hash": "sha256-NA/pyCCzzIewVr6IfZtFQjR5lOBnBdSzYj5SzgsBFvw=" + }, + { + "pname": "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-LXUPLX3DJxsU1Pd3UwjO1PO9NM2elNEDXeu2Mu/vNps=" + }, + { + "pname": "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-qeSqaUI80+lqw5MK4vMpmO0CZaqrmYktwp6L+vQAb0I=" + }, + { + "pname": "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-SrHqT9wrCBsxILWtaJgGKd6Odmxm8/Mh7Kh0CUkZVzA=" + }, + { + "pname": "runtime.native.System", + "version": "4.0.0", + "hash": "sha256-bmaM0ovT4X4aqDJOR255Yda/u3fmHZskU++lMnsy894=" + }, + { + "pname": "runtime.native.System", + "version": "4.3.0", + "hash": "sha256-ZBZaodnjvLXATWpXXakFgcy6P+gjhshFXmglrL5xD5Y=" + }, + { + "pname": "runtime.native.System.IO.Compression", + "version": "4.1.0", + "hash": "sha256-085JrZxNEwIHdBWKKKFsh1JzpF0AblvrUsz5T8kH4jQ=" + }, + { + "pname": "runtime.native.System.IO.Compression", + "version": "4.3.0", + "hash": "sha256-DWnXs4vlKoU6WxxvCArTJupV6sX3iBbZh8SbqfHace8=" + }, + { + "pname": "runtime.native.System.Net.Http", + "version": "4.3.0", + "hash": "sha256-c556PyheRwpYhweBjSfIwEyZHnAUB8jWioyKEcp/2dg=" + }, + { + "pname": "runtime.native.System.Security.Cryptography.Apple", + "version": "4.3.0", + "hash": "sha256-2IhBv0i6pTcOyr8FFIyfPEaaCHUmJZ8DYwLUwJ+5waw=" + }, + { + "pname": "runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-Jy01KhtcCl2wjMpZWH+X3fhHcVn+SyllWFY8zWlz/6I=" + }, + { + "pname": "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-wyv00gdlqf8ckxEdV7E+Ql9hJIoPcmYEuyeWb5Oz3mM=" + }, + { + "pname": "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-zi+b4sCFrA9QBiSGDD7xPV27r3iHGlV99gpyVUjRmc4=" + }, + { + "pname": "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple", + "version": "4.3.0", + "hash": "sha256-serkd4A7F6eciPiPJtUyJyxzdAtupEcWIZQ9nptEzIM=" + }, + { + "pname": "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-gybQU6mPgaWV3rBG2dbH6tT3tBq8mgze3PROdsuWnX0=" + }, + { + "pname": "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-VsP72GVveWnGUvS/vjOQLv1U80H2K8nZ4fDAmI61Hm4=" + }, + { + "pname": "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-4yKGa/IrNCKuQ3zaDzILdNPD32bNdy6xr5gdJigyF5g=" + }, + { + "pname": "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-HmdJhhRsiVoOOCcUvAwdjpMRiyuSwdcgEv2j9hxi+Zc=" + }, + { + "pname": "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-pVFUKuPPIx0edQKjzRon3zKq8zhzHEzko/lc01V/jdw=" + }, + { + "pname": "System.AppContext", + "version": "4.1.0", + "hash": "sha256-v6YfyfrKmhww+EYHUq6cwYUMj00MQ6SOfJtcGVRlYzs=" + }, + { + "pname": "System.AppContext", + "version": "4.3.0", + "hash": "sha256-yg95LNQOwFlA1tWxXdQkVyJqT4AnoDc+ACmrNvzGiZg=" + }, + { + "pname": "System.Buffers", + "version": "4.3.0", + "hash": "sha256-XqZWb4Kd04960h4U9seivjKseGA/YEIpdplfHYHQ9jk=" + }, + { + "pname": "System.Buffers", + "version": "4.5.1", + "hash": "sha256-wws90sfi9M7kuCPWkv1CEYMJtCqx9QB/kj0ymlsNaxI=" + }, + { + "pname": "System.Collections", + "version": "4.0.11", + "hash": "sha256-puoFMkx4Z55C1XPxNw3np8nzNGjH+G24j43yTIsDRL0=" + }, + { + "pname": "System.Collections", + "version": "4.3.0", + "hash": "sha256-afY7VUtD6w/5mYqrce8kQrvDIfS2GXDINDh73IjxJKc=" + }, + { + "pname": "System.Collections.Concurrent", + "version": "4.0.12", + "hash": "sha256-zIEM7AB4SyE9u6G8+o+gCLLwkgi6+3rHQVPdn/dEwB8=" + }, + { + "pname": "System.Collections.Concurrent", + "version": "4.3.0", + "hash": "sha256-KMY5DfJnDeIsa13DpqvyN8NkReZEMAFnlmNglVoFIXI=" + }, + { + "pname": "System.Collections.Immutable", + "version": "1.1.36", + "hash": "sha256-x/UyLEyveCYI+JAWo9xallSPbl78dIVuW2pGqgTY/C0=" + }, + { + "pname": "System.Collections.Immutable", + "version": "1.2.0", + "hash": "sha256-FQ3l+ulbLSPhQ0JcQCC4D4SzjTnHsRqcOj56Ywy7pMo=" + }, + { + "pname": "System.Collections.Immutable", + "version": "5.0.0", + "hash": "sha256-GdwSIjLMM0uVfE56VUSLVNgpW0B//oCeSFj8/hSlbM8=" + }, + { + "pname": "System.Collections.Immutable", + "version": "7.0.0", + "hash": "sha256-9an2wbxue2qrtugYES9awshQg+KfJqajhnhs45kQIdk=" + }, + { + "pname": "System.Collections.Immutable", + "version": "8.0.0", + "hash": "sha256-F7OVjKNwpqbUh8lTidbqJWYi476nsq9n+6k0+QVRo3w=" + }, + { + "pname": "System.Collections.NonGeneric", + "version": "4.0.1", + "hash": "sha256-jdCVXmGOsJ+2F0xAagCkiMZ91SGAm9iOhO2u4ksmKaU=" + }, + { + "pname": "System.ComponentModel.Composition", + "version": "4.5.0", + "hash": "sha256-xxeZs1zIkhl2ZXU8CaOtCkMX1N290IK7bbHYeEKD0aQ=" + }, + { + "pname": "System.Composition", + "version": "1.0.31", + "hash": "sha256-wcQEG6MCRa1S03s3Yb3E3tfsIBZid99M7WDhcb48Qik=" + }, + { + "pname": "System.Composition", + "version": "7.0.0", + "hash": "sha256-YjhxuzuVdAzRBHNQy9y/1ES+ll3QtLcd2o+o8wIyMao=" + }, + { + "pname": "System.Composition.AttributedModel", + "version": "1.0.31", + "hash": "sha256-u+XnXfj6LQ3OXwrb9KqHRW4a/a9yHzLrJOXwDQ1a/sY=" + }, + { + "pname": "System.Composition.AttributedModel", + "version": "7.0.0", + "hash": "sha256-3s52Dyk2J66v/B4LLYFBMyXl0I8DFDshjE+sMjW4ubM=" + }, + { + "pname": "System.Composition.Convention", + "version": "1.0.31", + "hash": "sha256-GQWo1YDyQ3r2OMcKW+GbR3BbZNIAdwK79XAfinNj+AE=" + }, + { + "pname": "System.Composition.Convention", + "version": "7.0.0", + "hash": "sha256-N4MkkBXSQkcFKsEdcSe6zmyFyMmFOHmI2BNo3wWxftk=" + }, + { + "pname": "System.Composition.Hosting", + "version": "1.0.31", + "hash": "sha256-fg9BIY+zWtiEBIJefYP2lKHDYa4r/vtPTr3ZI8e0K7g=" + }, + { + "pname": "System.Composition.Hosting", + "version": "7.0.0", + "hash": "sha256-7liQGMaVKNZU1iWTIXvqf0SG8zPobRoLsW7q916XC3M=" + }, + { + "pname": "System.Composition.Runtime", + "version": "1.0.31", + "hash": "sha256-mqfxjAnVyE1YCgXMOcV34IWhYFnvXVKjMo9Y/d3yDuo=" + }, + { + "pname": "System.Composition.Runtime", + "version": "7.0.0", + "hash": "sha256-Oo1BxSGLETmdNcYvnkGdgm7JYAnQmv1jY0gL0j++Pd0=" + }, + { + "pname": "System.Composition.TypedParts", + "version": "1.0.31", + "hash": "sha256-w9ApcUJr7jYP4Vf5+efIIqoWmr5v9R56W4uC0n8KktQ=" + }, + { + "pname": "System.Composition.TypedParts", + "version": "7.0.0", + "hash": "sha256-6ZzNdk35qQG3ttiAi4OXrihla7LVP+y2fL3bx40/32s=" + }, + { + "pname": "System.Console", + "version": "4.0.0", + "hash": "sha256-jtZfT/TpJtLisV/y5Mk3IfCpE79zwhBYXtyGP9jC3Xo=" + }, + { + "pname": "System.Console", + "version": "4.3.0", + "hash": "sha256-Xh3PPBZr0pDbDaK8AEHbdGz7ePK6Yi1ZyRWI1JM6mbo=" + }, + { + "pname": "System.Diagnostics.Contracts", + "version": "4.0.1", + "hash": "sha256-Mq2MU+80m+zqhe92JazEIDi4rsgk8MHg3yjNYlObzXg=" + }, + { + "pname": "System.Diagnostics.Debug", + "version": "4.0.11", + "hash": "sha256-P+rSQJVoN6M56jQbs76kZ9G3mAWFdtF27P/RijN8sj4=" + }, + { + "pname": "System.Diagnostics.Debug", + "version": "4.3.0", + "hash": "sha256-fkA79SjPbSeiEcrbbUsb70u9B7wqbsdM9s1LnoKj0gM=" + }, + { + "pname": "System.Diagnostics.DiagnosticSource", + "version": "4.3.0", + "hash": "sha256-OFJRb0ygep0Z3yDBLwAgM/Tkfs4JCDtsNhwDH9cd1Xw=" + }, + { + "pname": "System.Diagnostics.FileVersionInfo", + "version": "4.0.0", + "hash": "sha256-Yy94jPhDXF2QHOF7qTmqKkn1048K9xkKryuBeDzsu+g=" + }, + { + "pname": "System.Diagnostics.Process", + "version": "4.1.0", + "hash": "sha256-OgW6ogQ+oYADYS0PHmwXdhrOKQJpqXlwzSvmfjTLNBg=" + }, + { + "pname": "System.Diagnostics.Tools", + "version": "4.3.0", + "hash": "sha256-gVOv1SK6Ape0FQhCVlNOd9cvQKBvMxRX9K0JPVi8w0Y=" + }, + { + "pname": "System.Diagnostics.TraceSource", + "version": "4.0.0", + "hash": "sha256-cCjdPU7ow91HGf1hBIOLJMQGO6pNmF+N+5/Z38XJh9U=" + }, + { + "pname": "System.Diagnostics.Tracing", + "version": "4.1.0", + "hash": "sha256-JA0jJcLbU3zh52ub3zweob2EVHvxOqiC6SCYHrY5WbQ=" + }, + { + "pname": "System.Diagnostics.Tracing", + "version": "4.3.0", + "hash": "sha256-hCETZpHHGVhPYvb4C0fh4zs+8zv4GPoixagkLZjpa9Q=" + }, + { + "pname": "System.Dynamic.Runtime", + "version": "4.0.11", + "hash": "sha256-qWqFVxuXioesVftv2RVJZOnmojUvRjb7cS3Oh3oTit4=" + }, + { + "pname": "System.Formats.Asn1", + "version": "5.0.0", + "hash": "sha256-9nL3dN4w/dZ49W1pCkTjRqZm6Dh0mMVExNungcBHrKs=" + }, + { + "pname": "System.Formats.Asn1", + "version": "9.0.10", + "hash": "sha256-hPvY9hKsDEbNyyzaaMImebYTQWLWD/AOjtru+a4NsIc=" + }, + { + "pname": "System.Globalization", + "version": "4.0.11", + "hash": "sha256-rbSgc2PIEc2c2rN6LK3qCREAX3DqA2Nq1WcLrZYsDBw=" + }, + { + "pname": "System.Globalization", + "version": "4.3.0", + "hash": "sha256-caL0pRmFSEsaoeZeWN5BTQtGrAtaQPwFi8YOZPZG5rI=" + }, + { + "pname": "System.Globalization.Calendars", + "version": "4.3.0", + "hash": "sha256-uNOD0EOVFgnS2fMKvMiEtI9aOw00+Pfy/H+qucAQlPc=" + }, + { + "pname": "System.Globalization.Extensions", + "version": "4.3.0", + "hash": "sha256-mmJWA27T0GRVuFP9/sj+4TrR4GJWrzNIk2PDrbr7RQk=" + }, + { + "pname": "System.IO", + "version": "4.1.0", + "hash": "sha256-V6oyQFwWb8NvGxAwvzWnhPxy9dKOfj/XBM3tEC5aHrw=" + }, + { + "pname": "System.IO", + "version": "4.3.0", + "hash": "sha256-ruynQHekFP5wPrDiVyhNiRIXeZ/I9NpjK5pU+HPDiRY=" + }, + { + "pname": "System.IO.Compression", + "version": "4.1.0", + "hash": "sha256-UT4KEfJNZOk7b4X0AqLFUsqfHu6myVH/BhbRKYc+1Uc=" + }, + { + "pname": "System.IO.Compression", + "version": "4.3.0", + "hash": "sha256-f5PrQlQgj5Xj2ZnHxXW8XiOivaBvfqDao9Sb6AVinyA=" + }, + { + "pname": "System.IO.Compression.ZipFile", + "version": "4.3.0", + "hash": "sha256-WQl+JgWs+GaRMeiahTFUbrhlXIHapzcpTFXbRvAtvvs=" + }, + { + "pname": "System.IO.FileSystem", + "version": "4.0.1", + "hash": "sha256-4VKXFgcGYCTWVXjAlniAVq0dO3o5s8KHylg2wg2/7k0=" + }, + { + "pname": "System.IO.FileSystem", + "version": "4.3.0", + "hash": "sha256-vNIYnvlayuVj0WfRfYKpDrhDptlhp1pN8CYmlVd2TXw=" + }, + { + "pname": "System.IO.FileSystem.Primitives", + "version": "4.0.1", + "hash": "sha256-IpigKMomqb6pmYWkrlf0ZdpILtRluX2cX5sOKVW0Feg=" + }, + { + "pname": "System.IO.FileSystem.Primitives", + "version": "4.3.0", + "hash": "sha256-LMnfg8Vwavs9cMnq9nNH8IWtAtSfk0/Fy4s4Rt9r1kg=" + }, + { + "pname": "System.IO.Pipelines", + "version": "5.0.1", + "hash": "sha256-2zT5uBiyYm+jLIoJppIKJttTtpcMNKxd7Li0QEVjbv8=" + }, + { + "pname": "System.IO.Pipelines", + "version": "7.0.0", + "hash": "sha256-W2181khfJUTxLqhuAVRhCa52xZ3+ePGOLIPwEN8WisY=" + }, + { + "pname": "System.IO.Pipes", + "version": "4.0.0", + "hash": "sha256-6qMAD6DCZ5c1wswLWi1msqwu8GwI8un1RzjpUhzbrjs=" + }, + { + "pname": "System.Linq", + "version": "4.1.0", + "hash": "sha256-ZQpFtYw5N1F1aX0jUK3Tw+XvM5tnlnshkTCNtfVA794=" + }, + { + "pname": "System.Linq", + "version": "4.3.0", + "hash": "sha256-R5uiSL3l6a3XrXSSL6jz+q/PcyVQzEAByiuXZNSqD/A=" + }, + { + "pname": "System.Linq.Expressions", + "version": "4.1.0", + "hash": "sha256-7zqB+FXgkvhtlBzpcZyd81xczWP0D3uWssyAGw3t7b4=" + }, + { + "pname": "System.Linq.Expressions", + "version": "4.3.0", + "hash": "sha256-+3pvhZY7rip8HCbfdULzjlC9FPZFpYoQxhkcuFm2wk8=" + }, + { + "pname": "System.Linq.Parallel", + "version": "4.0.1", + "hash": "sha256-TV1F3KYFipPmPnWFjX6hOZQNFsG2m729EdgPSFzqY0Q=" + }, + { + "pname": "System.Memory", + "version": "4.5.4", + "hash": "sha256-3sCEfzO4gj5CYGctl9ZXQRRhwAraMQfse7yzKoRe65E=" + }, + { + "pname": "System.Memory", + "version": "4.5.5", + "hash": "sha256-EPQ9o1Kin7KzGI5O3U3PUQAZTItSbk9h/i4rViN3WiI=" + }, + { + "pname": "System.Net.Http", + "version": "4.3.0", + "hash": "sha256-UoBB7WPDp2Bne/fwxKF0nE8grJ6FzTMXdT/jfsphj8Q=" + }, + { + "pname": "System.Net.Primitives", + "version": "4.0.11", + "hash": "sha256-2YSijNhCdw/ZU2yfH7vE+ReA8pgxRCXPnWr+ab36v4M=" + }, + { + "pname": "System.Net.Primitives", + "version": "4.3.0", + "hash": "sha256-MY7Z6vOtFMbEKaLW9nOSZeAjcWpwCtdO7/W1mkGZBzE=" + }, + { + "pname": "System.Net.Sockets", + "version": "4.1.0", + "hash": "sha256-muK7oXIX7ykqhXskuUt0KX6Hzg5VogJhUS0JiOB2BY0=" + }, + { + "pname": "System.Net.Sockets", + "version": "4.3.0", + "hash": "sha256-il7dr5VT/QWDg/0cuh+4Es2u8LY//+qqiY9BZmYxSus=" + }, + { + "pname": "System.Numerics.Vectors", + "version": "4.4.0", + "hash": "sha256-auXQK2flL/JpnB/rEcAcUm4vYMCYMEMiWOCAlIaqu2U=" + }, + { + "pname": "System.ObjectModel", + "version": "4.0.12", + "hash": "sha256-MudZ/KYcvYsn2cST3EE049mLikrNkmE7QoUoYKKby+s=" + }, + { + "pname": "System.ObjectModel", + "version": "4.3.0", + "hash": "sha256-gtmRkWP2Kwr3nHtDh0yYtce38z1wrGzb6fjm4v8wN6Q=" + }, + { + "pname": "System.Reflection", + "version": "4.1.0", + "hash": "sha256-idZHGH2Yl/hha1CM4VzLhsaR8Ljo/rV7TYe7mwRJSMs=" + }, + { + "pname": "System.Reflection", + "version": "4.3.0", + "hash": "sha256-NQSZRpZLvtPWDlvmMIdGxcVuyUnw92ZURo0hXsEshXY=" + }, + { + "pname": "System.Reflection.Emit", + "version": "4.0.1", + "hash": "sha256-F1MvYoQWHCY89/O4JBwswogitqVvKuVfILFqA7dmuHk=" + }, + { + "pname": "System.Reflection.Emit", + "version": "4.3.0", + "hash": "sha256-5LhkDmhy2FkSxulXR+bsTtMzdU3VyyuZzsxp7/DwyIU=" + }, + { + "pname": "System.Reflection.Emit.ILGeneration", + "version": "4.0.1", + "hash": "sha256-YG+eJBG5P+5adsHiw/lhJwvREnvdHw6CJyS8ZV4Ujd0=" + }, + { + "pname": "System.Reflection.Emit.ILGeneration", + "version": "4.3.0", + "hash": "sha256-mKRknEHNls4gkRwrEgi39B+vSaAz/Gt3IALtS98xNnA=" + }, + { + "pname": "System.Reflection.Emit.Lightweight", + "version": "4.0.1", + "hash": "sha256-uVvNOnL64CPqsgZP2OLqNmxdkZl6Q0fTmKmv9gcBi+g=" + }, + { + "pname": "System.Reflection.Emit.Lightweight", + "version": "4.3.0", + "hash": "sha256-rKx4a9yZKcajloSZHr4CKTVJ6Vjh95ni+zszPxWjh2I=" + }, + { + "pname": "System.Reflection.Extensions", + "version": "4.0.1", + "hash": "sha256-NsfmzM9G/sN3H8X2cdnheTGRsh7zbRzvegnjDzDH/FQ=" + }, + { + "pname": "System.Reflection.Extensions", + "version": "4.3.0", + "hash": "sha256-mMOCYzUenjd4rWIfq7zIX9PFYk/daUyF0A8l1hbydAk=" + }, + { + "pname": "System.Reflection.Metadata", + "version": "1.0.21", + "hash": "sha256-0yqDWxwaw57YQ5dl8qdo+2o6VvG8qKp4il093uWWAUs=" + }, + { + "pname": "System.Reflection.Metadata", + "version": "1.3.0", + "hash": "sha256-a/RQr++mSsziWaOTknicfIQX/zJrwPFExfhK6PM0tfg=" + }, + { + "pname": "System.Reflection.Metadata", + "version": "5.0.0", + "hash": "sha256-Wo+MiqhcP9dQ6NuFGrQTw6hpbJORFwp+TBNTq2yhGp8=" + }, + { + "pname": "System.Reflection.Metadata", + "version": "7.0.0", + "hash": "sha256-GwAKQhkhPBYTqmRdG9c9taqrKSKDwyUgOEhWLKxWNPI=" + }, + { + "pname": "System.Reflection.Metadata", + "version": "8.0.0", + "hash": "sha256-dQGC30JauIDWNWXMrSNOJncVa1umR1sijazYwUDdSIE=" + }, + { + "pname": "System.Reflection.Primitives", + "version": "4.0.1", + "hash": "sha256-SFSfpWEyCBMAOerrMCOiKnpT+UAWTvRcmoRquJR6Vq0=" + }, + { + "pname": "System.Reflection.Primitives", + "version": "4.3.0", + "hash": "sha256-5ogwWB4vlQTl3jjk1xjniG2ozbFIjZTL9ug0usZQuBM=" + }, + { + "pname": "System.Reflection.TypeExtensions", + "version": "4.1.0", + "hash": "sha256-R0YZowmFda+xzKNR4kKg7neFoE30KfZwp/IwfRSKVK4=" + }, + { + "pname": "System.Reflection.TypeExtensions", + "version": "4.3.0", + "hash": "sha256-4U4/XNQAnddgQIHIJq3P2T80hN0oPdU2uCeghsDTWng=" + }, + { + "pname": "System.Resources.ResourceManager", + "version": "4.0.1", + "hash": "sha256-cZ2/3/fczLjEpn6j3xkgQV9ouOVjy4Kisgw5xWw9kSw=" + }, + { + "pname": "System.Resources.ResourceManager", + "version": "4.3.0", + "hash": "sha256-idiOD93xbbrbwwSnD4mORA9RYi/D/U48eRUsn/WnWGo=" + }, + { + "pname": "System.Runtime", + "version": "4.1.0", + "hash": "sha256-FViNGM/4oWtlP6w0JC0vJU+k9efLKZ+yaXrnEeabDQo=" + }, + { + "pname": "System.Runtime", + "version": "4.3.0", + "hash": "sha256-51813WXpBIsuA6fUtE5XaRQjcWdQ2/lmEokJt97u0Rg=" + }, + { + "pname": "System.Runtime.CompilerServices.Unsafe", + "version": "4.5.3", + "hash": "sha256-lnZMUqRO4RYRUeSO8HSJ9yBHqFHLVbmenwHWkIU20ak=" + }, + { + "pname": "System.Runtime.CompilerServices.Unsafe", + "version": "4.7.1", + "hash": "sha256-UvyoDV8O0oY3HPG1GbA56YVdvwTGEfjYR5gW1O7IK4U=" + }, + { + "pname": "System.Runtime.CompilerServices.Unsafe", + "version": "5.0.0", + "hash": "sha256-neARSpLPUzPxEKhJRwoBzhPxK+cKIitLx7WBYncsYgo=" + }, + { + "pname": "System.Runtime.CompilerServices.Unsafe", + "version": "6.0.0", + "hash": "sha256-bEG1PnDp7uKYz/OgLOWs3RWwQSVYm+AnPwVmAmcgp2I=" + }, + { + "pname": "System.Runtime.Extensions", + "version": "4.1.0", + "hash": "sha256-X7DZ5CbPY7jHs20YZ7bmcXs9B5Mxptu/HnBUvUnNhGc=" + }, + { + "pname": "System.Runtime.Extensions", + "version": "4.3.0", + "hash": "sha256-wLDHmozr84v1W2zYCWYxxj0FR0JDYHSVRaRuDm0bd/o=" + }, + { + "pname": "System.Runtime.Handles", + "version": "4.0.1", + "hash": "sha256-j2QgVO9ZOjv7D1het98CoFpjoYgxjupuIhuBUmLLH7w=" + }, + { + "pname": "System.Runtime.Handles", + "version": "4.3.0", + "hash": "sha256-KJ5aXoGpB56Y6+iepBkdpx/AfaJDAitx4vrkLqR7gms=" + }, + { + "pname": "System.Runtime.InteropServices", + "version": "4.1.0", + "hash": "sha256-QceAYlJvkPRJc/+5jR+wQpNNI3aqGySWWSO30e/FfQY=" + }, + { + "pname": "System.Runtime.InteropServices", + "version": "4.3.0", + "hash": "sha256-8sDH+WUJfCR+7e4nfpftj/+lstEiZixWUBueR2zmHgI=" + }, + { + "pname": "System.Runtime.InteropServices.RuntimeInformation", + "version": "4.0.0", + "hash": "sha256-5j53amb76A3SPiE3B0llT2XPx058+CgE7OXL4bLalT4=" + }, + { + "pname": "System.Runtime.InteropServices.RuntimeInformation", + "version": "4.3.0", + "hash": "sha256-MYpl6/ZyC6hjmzWRIe+iDoldOMW1mfbwXsduAnXIKGA=" + }, + { + "pname": "System.Runtime.Loader", + "version": "4.0.0", + "hash": "sha256-gE5/ehU3Qq5phhSxGuPmSv1DFVQeiyl1/+YyrO+I7lI=" + }, + { + "pname": "System.Runtime.Numerics", + "version": "4.3.0", + "hash": "sha256-P5jHCgMbgFMYiONvzmaKFeOqcAIDPu/U8bOVrNPYKqc=" + }, + { + "pname": "System.Security.AccessControl", + "version": "4.5.0", + "hash": "sha256-AFsKPb/nTk2/mqH/PYpaoI8PLsiKKimaXf+7Mb5VfPM=" + }, + { + "pname": "System.Security.AccessControl", + "version": "5.0.0", + "hash": "sha256-ueSG+Yn82evxyGBnE49N4D+ngODDXgornlBtQ3Omw54=" + }, + { + "pname": "System.Security.Cryptography.Algorithms", + "version": "4.3.0", + "hash": "sha256-tAJvNSlczYBJ3Ed24Ae27a55tq/n4D3fubNQdwcKWA8=" + }, + { + "pname": "System.Security.Cryptography.Cng", + "version": "4.3.0", + "hash": "sha256-u17vy6wNhqok91SrVLno2M1EzLHZm6VMca85xbVChsw=" + }, + { + "pname": "System.Security.Cryptography.Cng", + "version": "5.0.0", + "hash": "sha256-nOJP3vdmQaYA07TI373OvZX6uWshETipvi5KpL7oExo=" + }, + { + "pname": "System.Security.Cryptography.Csp", + "version": "4.3.0", + "hash": "sha256-oefdTU/Z2PWU9nlat8uiRDGq/PGZoSPRgkML11pmvPQ=" + }, + { + "pname": "System.Security.Cryptography.Encoding", + "version": "4.3.0", + "hash": "sha256-Yuge89N6M+NcblcvXMeyHZ6kZDfwBv3LPMDiF8HhJss=" + }, + { + "pname": "System.Security.Cryptography.OpenSsl", + "version": "4.3.0", + "hash": "sha256-DL+D2sc2JrQiB4oAcUggTFyD8w3aLEjJfod5JPe+Oz4=" + }, + { + "pname": "System.Security.Cryptography.Pkcs", + "version": "9.0.10", + "hash": "sha256-Hgs2WRGyiDDc8HcQOoP4Yi0eM3N892AkvVUTLD1MQx8=" + }, + { + "pname": "System.Security.Cryptography.Primitives", + "version": "4.3.0", + "hash": "sha256-fnFi7B3SnVj5a+BbgXnbjnGNvWrCEU6Hp/wjsjWz318=" + }, + { + "pname": "System.Security.Cryptography.ProtectedData", + "version": "4.4.0", + "hash": "sha256-Ri53QmFX8I8UH0x4PikQ1ZA07ZSnBUXStd5rBfGWFOE=" + }, + { + "pname": "System.Security.Cryptography.X509Certificates", + "version": "4.3.0", + "hash": "sha256-MG3V/owDh273GCUPsGGraNwaVpcydupl3EtPXj6TVG0=" + }, + { + "pname": "System.Security.Permissions", + "version": "4.5.0", + "hash": "sha256-Fa6dX6Gyse1A/RBoin8cVaHQePbfBvp6jjWxUXPhXKQ=" + }, + { + "pname": "System.Security.Principal", + "version": "4.0.1", + "hash": "sha256-9wBgPnJfFOtrhKZ7wDXZ4q12GklQ49Ka02/9v7Frf9k=" + }, + { + "pname": "System.Security.Principal.Windows", + "version": "4.5.0", + "hash": "sha256-BkUYNguz0e4NJp1kkW7aJBn3dyH9STwB5N8XqnlCsmY=" + }, + { + "pname": "System.Security.Principal.Windows", + "version": "5.0.0", + "hash": "sha256-CBOQwl9veFkrKK2oU8JFFEiKIh/p+aJO+q9Tc2Q/89Y=" + }, + { + "pname": "System.Text.Encoding", + "version": "4.0.11", + "hash": "sha256-PEailOvG05CVgPTyKLtpAgRydlSHmtd5K0Y8GSHY2Lc=" + }, + { + "pname": "System.Text.Encoding", + "version": "4.3.0", + "hash": "sha256-GctHVGLZAa/rqkBNhsBGnsiWdKyv6VDubYpGkuOkBLg=" + }, + { + "pname": "System.Text.Encoding.CodePages", + "version": "4.5.1", + "hash": "sha256-PIhkv59IXjyiuefdhKxS9hQfEwO9YWRuNudpo53HQfw=" + }, + { + "pname": "System.Text.Encoding.CodePages", + "version": "7.0.0", + "hash": "sha256-eCKTVwumD051ZEcoJcDVRGnIGAsEvKpfH3ydKluHxmo=" + }, + { + "pname": "System.Text.Encoding.Extensions", + "version": "4.0.11", + "hash": "sha256-+kf7J3dEhgCbnCM5vHYlsTm5/R/Ud0Jr6elpHm922iI=" + }, + { + "pname": "System.Text.Encoding.Extensions", + "version": "4.3.0", + "hash": "sha256-vufHXg8QAKxHlujPHHcrtGwAqFmsCD6HKjfDAiHyAYc=" + }, + { + "pname": "System.Text.RegularExpressions", + "version": "4.1.0", + "hash": "sha256-x6OQN6MCN7S0fJ6EFTfv4rczdUWjwuWE9QQ0P6fbh9c=" + }, + { + "pname": "System.Text.RegularExpressions", + "version": "4.3.0", + "hash": "sha256-VLCk1D1kcN2wbAe3d0YQM/PqCsPHOuqlBY1yd2Yo+K0=" + }, + { + "pname": "System.Threading", + "version": "4.0.11", + "hash": "sha256-mob1Zv3qLQhQ1/xOLXZmYqpniNUMCfn02n8ZkaAhqac=" + }, + { + "pname": "System.Threading", + "version": "4.3.0", + "hash": "sha256-ZDQ3dR4pzVwmaqBg4hacZaVenQ/3yAF/uV7BXZXjiWc=" + }, + { + "pname": "System.Threading.Channels", + "version": "7.0.0", + "hash": "sha256-Cu0gjQsLIR8Yvh0B4cOPJSYVq10a+3F9pVz/C43CNeM=" + }, + { + "pname": "System.Threading.Overlapped", + "version": "4.0.1", + "hash": "sha256-CAWZlavcuBQHs+kaSX9CmkpHF7wC8rFrug3XPb5KJzo=" + }, + { + "pname": "System.Threading.Tasks", + "version": "4.0.11", + "hash": "sha256-5SLxzFg1df6bTm2t09xeI01wa5qQglqUwwJNlQPJIVs=" + }, + { + "pname": "System.Threading.Tasks", + "version": "4.3.0", + "hash": "sha256-Z5rXfJ1EXp3G32IKZGiZ6koMjRu0n8C1NGrwpdIen4w=" + }, + { + "pname": "System.Threading.Tasks.Dataflow", + "version": "4.6.0", + "hash": "sha256-YYrT3GRzVBdendxt8FUDCnOBJi0nw/CJ9VrzcPJWLSg=" + }, + { + "pname": "System.Threading.Tasks.Extensions", + "version": "4.0.0", + "hash": "sha256-+YdcPkMhZhRbMZHnfsDwpNbUkr31X7pQFGxXYcAPZbE=" + }, + { + "pname": "System.Threading.Tasks.Extensions", + "version": "4.3.0", + "hash": "sha256-X2hQ5j+fxcmnm88Le/kSavjiGOmkcumBGTZKBLvorPc=" + }, + { + "pname": "System.Threading.Tasks.Extensions", + "version": "4.5.4", + "hash": "sha256-owSpY8wHlsUXn5xrfYAiu847L6fAKethlvYx97Ri1ng=" + }, + { + "pname": "System.Threading.Thread", + "version": "4.0.0", + "hash": "sha256-7EtSJuKqcW107FYA5Ko9NFXEWUPIzNDtlfKaQV2pvb8=" + }, + { + "pname": "System.Threading.ThreadPool", + "version": "4.0.10", + "hash": "sha256-/fowWjM/0ZZFC1Rwu0i5N71iRxV2JOd3jQV2Jn0wuTk=" + }, + { + "pname": "System.Threading.Timer", + "version": "4.3.0", + "hash": "sha256-pmhslmhQhP32TWbBzoITLZ4BoORBqYk25OWbru04p9s=" + }, + { + "pname": "System.Xml.ReaderWriter", + "version": "4.0.11", + "hash": "sha256-haZAFFQ9Sl2DhfvEbdx2YRqKEoxNMU5STaqpMmXw0zA=" + }, + { + "pname": "System.Xml.ReaderWriter", + "version": "4.3.0", + "hash": "sha256-QQ8KgU0lu4F5Unh+TbechO//zaAGZ4MfgvW72Cn1hzA=" + }, + { + "pname": "System.Xml.XDocument", + "version": "4.3.0", + "hash": "sha256-rWtdcmcuElNOSzCehflyKwHkDRpiOhJJs8CeQ0l1CCI=" + }, + { + "pname": "System.Xml.XmlDocument", + "version": "4.0.1", + "hash": "sha256-gdoFrPo54v1LjkBF79f8EvtltVVjHz9ZI9kc5ve0GkY=" + }, + { + "pname": "System.Xml.XPath", + "version": "4.0.1", + "hash": "sha256-lQCoK2M51SGRuGjfiuIW26Y2goABY2RLE6cZ4816WDo=" + }, + { + "pname": "System.Xml.XPath.XmlDocument", + "version": "4.0.1", + "hash": "sha256-bK9AfAYrdSipdRbmo8Rk7394ku92UFNe2TEQF5+k/lA=" + }, + { + "pname": "xunit", + "version": "2.9.3", + "hash": "sha256-BPrpSbjlIB7PoH+ocCusqMDrMZgRQZSzeTeJzHK/I9c=" + }, + { + "pname": "xunit.abstractions", + "version": "2.0.3", + "hash": "sha256-0D1y/C34iARI96gb3bAOG8tcGPMjx+fMabTPpydGlAM=" + }, + { + "pname": "xunit.analyzers", + "version": "1.18.0", + "hash": "sha256-DOgamLnfi9Ua5IDm3JVm9MaOFbSSbmq5l8j2NPO3qd0=" + }, + { + "pname": "xunit.assert", + "version": "2.3.0", + "hash": "sha256-lN+NiUEQoHWmoamUjvsNt2PVhHXYeHJHjHRk1BTs6R8=" + }, + { + "pname": "xunit.assert", + "version": "2.9.3", + "hash": "sha256-vHYOde8bd10pOmr7iTAYNtPlqHzsJl4x3t1DDuYdDCA=" + }, + { + "pname": "xunit.core", + "version": "2.9.3", + "hash": "sha256-qkVQ8Jw/LZWmxirkPOwiry7bvZn3IuaRzu/sp2H8anw=" + }, + { + "pname": "xunit.extensibility.core", + "version": "2.9.3", + "hash": "sha256-mcpVX+m0R7F0ev9CaBnbai9gtu4GVcqijEuRqe89D0g=" + }, + { + "pname": "xunit.extensibility.execution", + "version": "2.9.3", + "hash": "sha256-2rxMs2Dt4cAcmOFMwP5Yd3RpP0BnmiL8cXlKysXY0jw=" + }, + { + "pname": "xunit.runner.visualstudio", + "version": "3.1.5", + "hash": "sha256-O5657884QGldszsEWQFCDRTXViFBmZ4GGC+4iU+usSQ=" + } +] diff --git a/pkgs/development/tools/godot/common.nix b/pkgs/development/tools/godot/common.nix index 424aef66a0c9..86eae65f33ac 100644 --- a/pkgs/development/tools/godot/common.nix +++ b/pkgs/development/tools/godot/common.nix @@ -99,7 +99,15 @@ let dottedVersion = lib.replaceStrings [ "-" ] [ "." ] version + lib.optionalString withMono ".mono"; - harfbuzz-icu = harfbuzz.override { withIcu = true; }; + harfbuzz-raster = harfbuzz.override { + withRaster = lib.versionAtLeast version "4.7"; + withCairo = lib.versionAtLeast version "4.7"; + }; + + harfbuzz-icu = harfbuzz-raster.override { + withIcu = true; + harfbuzz = harfbuzz-raster; + }; mkTarget = target: @@ -402,10 +410,16 @@ let dotnet restore modules/mono/editor/Godot.NET.Sdk/Godot.NET.Sdk.sln ''; - # darwin needs $HOME/.cache/clang/ModuleCache - preBuild = lib.optionalString stdenv.hostPlatform.isDarwin '' - export HOME=$(mktemp -d) - ''; + # Godot 4.7 with system HarfBuzz needs explicit raster linkage, but should be resolved with 4.7.1. + # See https://github.com/godotengine/godot/pull/120568 + preBuild = + lib.optionalString (!withBuiltins && lib.versionAtLeast version "4.7") '' + export NIX_LDFLAGS="$NIX_LDFLAGS -lharfbuzz-raster" + '' + # darwin needs $HOME/.cache/clang/ModuleCache. + + lib.optionalString stdenv.hostPlatform.isDarwin '' + export HOME=$(mktemp -d) + ''; # From: https://github.com/godotengine/godot/blob/4.2.2-stable/SConstruct sconsFlags = mkSconsFlagsFromAttrSet ( @@ -677,8 +691,18 @@ let --replace-fail "Godot Engine" "Godot Engine ${ lib.versions.majorMinor version + lib.optionalString withMono " (Mono)" }" - cp icon.svg "$out/share/icons/hicolor/scalable/apps/godot.svg" - cp icon.png "$out/share/icons/godot.png" + ${ + if lib.versionOlder version "4.7" then + '' + cp icon.svg "$out/share/icons/hicolor/scalable/apps/godot.svg" + cp icon.png "$out/share/icons/godot.png" + '' + else + '' + cp misc/logo/icon.svg "$out/share/icons/hicolor/scalable/apps/godot.svg" + cp misc/logo/icon.png "$out/share/icons/godot.png" + '' + } '' + lib.optionalString withMono '' cp -r bin/GodotSharp "$out"/libexec/ diff --git a/pkgs/development/tools/godot/default.nix b/pkgs/development/tools/godot/default.nix index 6e1277a8f2ec..de9d6cf563ff 100644 --- a/pkgs/development/tools/godot/default.nix +++ b/pkgs/development/tools/godot/default.nix @@ -61,6 +61,7 @@ rec { godotPackages_4_4 = mkGodotPackages "4.4"; godotPackages_4_5 = mkGodotPackages "4.5"; godotPackages_4_6 = mkGodotPackages "4.6"; + godotPackages_4_7 = mkGodotPackages "4.7"; godotPackages_4 = godotPackages_4_6; godotPackages = godotPackages_4; @@ -76,6 +77,9 @@ rec { godot_4_6 = godotPackages_4_6.godot; godot_4_6-mono = godotPackages_4_6.godot-mono; godot_4_6-export-templates-bin = godotPackages_4_6.export-templates-bin; + godot_4_7 = godotPackages_4_7.godot; + godot_4_7-mono = godotPackages_4_7.godot-mono; + godot_4_7-export-templates-bin = godotPackages_4_7.export-templates-bin; godot_4 = godotPackages_4.godot; godot_4-mono = godotPackages_4.godot-mono; godot_4-export-templates-bin = godotPackages_4.export-templates-bin; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a6bd7b793152..5280b6a5aa48 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2267,6 +2267,7 @@ with pkgs; godotPackages_4_4 godotPackages_4_5 godotPackages_4_6 + godotPackages_4_7 godotPackages_4 godotPackages godot_4_3 @@ -2281,6 +2282,9 @@ with pkgs; godot_4_6 godot_4_6-mono godot_4_6-export-templates-bin + godot_4_7 + godot_4_7-mono + godot_4_7-export-templates-bin godot_4 godot_4-mono godot_4-export-templates-bin From 5b86e51850c976818140345a7c9bb38616415e44 Mon Sep 17 00:00:00 2001 From: Kerstin Humm Date: Wed, 24 Jun 2026 16:54:01 +0200 Subject: [PATCH 30/95] mastodon: 4.6.0 -> 4.6.1 Changelog: https://github.com/mastodon/mastodon/releases/tag/v4.6.1 (cherry picked from commit 3f564a2083e9c3157e868dca23ecab6ace8052c8) --- pkgs/by-name/ma/mastodon/gemset.nix | 24 ++++++++++++------------ pkgs/by-name/ma/mastodon/source.nix | 4 ++-- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/pkgs/by-name/ma/mastodon/gemset.nix b/pkgs/by-name/ma/mastodon/gemset.nix index cf3922b1283d..9e0500f11092 100644 --- a/pkgs/by-name/ma/mastodon/gemset.nix +++ b/pkgs/by-name/ma/mastodon/gemset.nix @@ -671,10 +671,10 @@ platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "0pbgnd9iavcfxqgh7n77f788a4l6myc9qwgwzbkskvrl9mvgmyq4"; + sha256 = "1clkjg3n7c29c01cykjp6gbnvywjilfanzcrcrazhzf551ssndy6"; type = "gem"; }; - version = "8.3.1"; + version = "8.4.1"; }; childprocess = { dependencies = [ "logger" ]; @@ -741,10 +741,10 @@ platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1aymcakhzl83k77g2f2krz07bg1cbafbcd2ghvwr4lky3rz86mkb"; + sha256 = "1c2i64xsd35vijnb50rxb70g508s0x674xi0qpyyb8jy7bncl4j4"; type = "gem"; }; - version = "1.3.6"; + version = "1.3.7"; }; connection_pool = { groups = [ @@ -1192,10 +1192,10 @@ platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1b930ag8nh99v8n9645ac1wcah9fx0mclbp323q4i1ly9acvkk3k"; + sha256 = "0y7j6yzv07zggic6g0p2v1ivnvkzsbqjnfdl4215qqb6cxz290hq"; type = "gem"; }; - version = "2.14.2"; + version = "2.14.3"; }; faraday-follow_redirects = { dependencies = [ "faraday" ]; @@ -1647,10 +1647,10 @@ platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1994i044vdmzzkyr76g8rpl1fq1532wf0sb21xg5r1ilj5iphmr8"; + sha256 = "0mbjg75bsnpf3mr5ad3425wi2ps9r809gvr8n0n8lv2f3zgcapjh"; type = "gem"; }; - version = "1.14.8"; + version = "1.15.1"; }; i18n-tasks = { dependencies = [ @@ -2408,10 +2408,10 @@ platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "1s30b7h7qpyim30m8060xs415mbr3ci7i5hdg09chh1aqfx2qcbq"; + sha256 = "1d9safb4dly6qmc2g06444l0zifby52yy6j1a5fa1g4j3ihm3jah"; type = "gem"; }; - version = "1.19.3"; + version = "1.19.4"; }; omniauth = { dependencies = [ @@ -2943,10 +2943,10 @@ platforms = [ ]; source = { remotes = [ "https://rubygems.org" ]; - sha256 = "15j85zxs6c8ykis9770ii7m7rbbx5vxkqqk9shqicxamzd4wpafl"; + sha256 = "174v7f6wjkhygpp6dr0vbka03v0h5kxdfkgsilbyi0pf4ihz112y"; type = "gem"; }; - version = "2.14.26"; + version = "2.14.27"; }; parallel = { groups = [ diff --git a/pkgs/by-name/ma/mastodon/source.nix b/pkgs/by-name/ma/mastodon/source.nix index 8c130811aab0..00a99719379d 100644 --- a/pkgs/by-name/ma/mastodon/source.nix +++ b/pkgs/by-name/ma/mastodon/source.nix @@ -5,14 +5,14 @@ patches ? [ ], }: let - version = "4.6.0"; + version = "4.6.1"; in applyPatches { src = fetchFromGitHub { owner = "mastodon"; repo = "mastodon"; rev = "v${version}"; - hash = "sha256-+rvl0+/3Hn9QYKwYT0ZTlP+Ps7y+G+D2Dcu/fEhP79g="; + hash = "sha256-vnFmyLcIeiDHsVxh6BHFjolsGM0n2thOwt3MXrkjEx8="; passthru = { inherit version; yarnHash = "sha256-G1keSWDDpp0vBAOqQI8y8n7bmAeo9Hrdbo7R+cVZQwE="; From a3360ac07a5559f431d41cb645a75318d533af89 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 24 Jun 2026 13:10:11 +0000 Subject: [PATCH 31/95] spaceship-prompt: 4.22.3 -> 4.22.4 (cherry picked from commit 973c14ceea2fcc82ebbd93e2a9ea6174dded0ba0) --- pkgs/by-name/sp/spaceship-prompt/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sp/spaceship-prompt/package.nix b/pkgs/by-name/sp/spaceship-prompt/package.nix index e411a473be3c..fb404e7cbcbf 100644 --- a/pkgs/by-name/sp/spaceship-prompt/package.nix +++ b/pkgs/by-name/sp/spaceship-prompt/package.nix @@ -6,13 +6,13 @@ stdenvNoCC.mkDerivation rec { pname = "spaceship-prompt"; - version = "4.22.3"; + version = "4.22.4"; src = fetchFromGitHub { owner = "denysdovhan"; repo = "spaceship-prompt"; rev = "v${version}"; - sha256 = "sha256-v2D8+EwOV5gzzawjgn99WJnYjI9N6bxqbHtTTfNWBNo="; + sha256 = "sha256-BqdD6WwFW8Dtyyh81bQ66jZsJwq7Ck9kCwJpU9+xHtw="; }; strictDeps = true; From 0562da53597fb8c4f9e55d9627a84854ce024bdf Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 17 Jun 2026 19:25:00 +0000 Subject: [PATCH 32/95] mattermost: 11.7.3 -> 11.7.4 (cherry picked from commit 55bff6b391659a21aa818be51c919553521ba626) --- pkgs/by-name/ma/mattermost/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ma/mattermost/package.nix b/pkgs/by-name/ma/mattermost/package.nix index 7a7c62582070..d241c440c42a 100644 --- a/pkgs/by-name/ma/mattermost/package.nix +++ b/pkgs/by-name/ma/mattermost/package.nix @@ -27,10 +27,10 @@ # # Ensure you also check ../mattermostLatest/package.nix. regex = "^v(11\\.7\\.[0-9]+)$"; - version = "11.7.3"; - srcHash = "sha256-73WGxvdsDZ3v4UJGDDy+nAkT9DFMsGk29ruThwxoclw="; + version = "11.7.4"; + srcHash = "sha256-kO4ntGffvMis7JFZLMpnPdjotPiZ/kJcxeKoMjXAZ3U="; vendorHash = "sha256-XaXqQN20c3DhW2/L0zhTA8dLeRp4MyBxUKpiMVwp/7s="; - npmDepsHash = "sha256-MRH7canRhFtFppKi1eKMqr8JnWenw29689l2GSpXyFU="; + npmDepsHash = "sha256-lqgYZAGCjChGwBKACKKiMRzI2WP0ByanMMIVxo/h8t8="; }, ... }: From 5361ea3c007dceed7cbe76de159094f46dfad5d6 Mon Sep 17 00:00:00 2001 From: Cryolitia PukNgae Date: Wed, 10 Jun 2026 21:57:14 +0800 Subject: [PATCH 33/95] fbida: 2.14->2.15 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Gaétan Lepage (cherry picked from commit 75d56b55077450e0c9d56a5a09f8ecfbe0bd9273) --- pkgs/by-name/fb/fbida/package.nix | 108 ++++++++++++++++-------------- 1 file changed, 56 insertions(+), 52 deletions(-) diff --git a/pkgs/by-name/fb/fbida/package.nix b/pkgs/by-name/fb/fbida/package.nix index 36a76bf05353..f899ac7908e5 100644 --- a/pkgs/by-name/fb/fbida/package.nix +++ b/pkgs/by-name/fb/fbida/package.nix @@ -1,91 +1,95 @@ { lib, stdenv, - fetchurl, - libGL, - libjpeg, - libexif, - giflib, - libtiff, - libpng, - libwebp, - libdrm, + fetchFromGitLab, + hexdump, + meson, + ninja, + perl, pkg-config, - freetype, - fontconfig, - which, - imagemagick, - curl, - sane-backends, + giflib, + libdrm, + libexif, + libiconvReal, + libinput, + libtsm, + libwebp, + libxkbcommon, libxpm, - libepoxy, + libxt, + motif, pixman, poppler, - libgbm, - lirc, + udev, }: stdenv.mkDerivation (finalAttrs: { pname = "fbida"; - version = "2.14"; + version = "2.15-1"; - src = fetchurl { - url = "http://dl.bytesex.org/releases/fbida/fbida-${finalAttrs.version}.tar.gz"; - sha256 = "0f242mix20rgsqz1llibhsz4r2pbvx6k32rmky0zjvnbaqaw1dwm"; + __structuredAttrs = true; + strictDeps = true; + + src = fetchFromGitLab { + owner = "kraxel"; + repo = "fbida"; + tag = "fbida-${finalAttrs.version}"; + hash = "sha256-iwJkFynhz3SJ8MRjUsKtQAjPCBvST1ezsxTw2ZCXBag="; }; patches = [ - # Upstream patch to fix build on -fno-common toolchains. - (fetchurl { - name = "no-common.patch"; - url = "https://git.kraxel.org/cgit/fbida/patch/?id=1bb8a8aa29845378903f3c690e17c0867c820da2"; - sha256 = "0n5vqbp8wd87q60zfwdf22jirggzngypc02ha34gsj1rd6pvwahi"; - }) # Prevents using function declaration without explicit parameters. ./function-parameters.patch ]; nativeBuildInputs = [ + hexdump + meson + ninja + perl pkg-config - which ]; + buildInputs = [ - libGL - libexif - libjpeg - libpng giflib - freetype - fontconfig - libtiff - libwebp - imagemagick - curl - sane-backends libdrm + libexif + libiconvReal + libinput + libtsm + libwebp + libxkbcommon libxpm - libepoxy + libxt + motif pixman poppler - lirc - libgbm + udev ]; + patchPhase = '' + runHook prePatch + + patchShebangs scripts/*.pl + patchShebangs scripts/*.sh + + sed -i -E \ + -e '/^jpeg_run[[:space:]]*=.*$/d' \ + -e "/^jpeg_ver[[:space:]]*=.*$/c\\jpeg_ver = '62'" \ + meson.build + + runHook postPatch + ''; + makeFlags = [ - "prefix=$(out)" - "verbose=yes" - "STRIP=" - "JPEG_VER=62" + "HOST=nix" ]; - postPatch = '' - sed -e 's@ cpp\>@ gcc -E -@' -i GNUmakefile - sed -e 's@$(HAVE_LINUX_FB_H)@yes@' -i GNUmakefile - ''; - meta = { description = "Image viewing and manipulation programs including fbi, fbgs, ida, exiftran and thumbnail.cgi"; homepage = "https://www.kraxel.org/blog/linux/fbida/"; + downloadPage = "https://gitlab.com/kraxel/fbida/"; + changelog = "https://gitlab.com/kraxel/fbida/-/blob/${finalAttrs.src.tag}/Changes?ref_type=tags"; license = lib.licenses.gpl2; maintainers = with lib.maintainers; [ pSub ]; platforms = lib.platforms.linux; From b4b2dae6671adca867bbfb5c4264c7ad07c24653 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 24 Jun 2026 13:38:06 +0000 Subject: [PATCH 34/95] psi-plus: 1.5.2139 -> 1.5.2140 (cherry picked from commit 1f4df3cdf7dfc87b8ea590f96a26740dd6569d18) --- pkgs/by-name/ps/psi-plus/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ps/psi-plus/package.nix b/pkgs/by-name/ps/psi-plus/package.nix index e3bd2832f90e..884c83922c32 100644 --- a/pkgs/by-name/ps/psi-plus/package.nix +++ b/pkgs/by-name/ps/psi-plus/package.nix @@ -42,12 +42,12 @@ assert enablePsiMedia -> enablePlugins; stdenv.mkDerivation rec { pname = "psi-plus"; - version = "1.5.2139"; + version = "1.5.2140"; src = fetchFromGitHub { owner = "psi-plus"; repo = "psi-plus-snapshots"; tag = version; - hash = "sha256-wgR809rOtcKvim2gPm9MeiB67pU+EiRktpW5BCJqWs8="; + hash = "sha256-cXgjskHb7Rx4FB+DW/cTlsNtdyWgXN3sBh9WBBCgliA="; }; cmakeFlags = [ From be04fab4f22d3250feac44520879b66ae7cb9d3d Mon Sep 17 00:00:00 2001 From: George Macon Date: Wed, 24 Jun 2026 09:56:48 -0400 Subject: [PATCH 35/95] ci/treefmt: enable or-identifier rule All remaining unquoted uses of or as an identifier were removed in PR #475723, so this rule can now be enabled to prevent it from coming back. (cherry picked from commit 45e309e3a389d0e0ab83c180852f6396c11cbcdb) --- ci/treefmt.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/ci/treefmt.nix b/ci/treefmt.nix index 2d0a782c7ace..29419056dd77 100644 --- a/ci/treefmt.nix +++ b/ci/treefmt.nix @@ -118,8 +118,6 @@ "--ignore=sema-unused-def-lambda-witharg-arg" "--ignore=sema-unused-def-lambda-witharg-formal" "--ignore=sema-unused-def-let" - # Keep this rule, because we have `lib.or`. - "--ignore=or-identifier" # TODO: remove after outstanding prelude diagnostics issues are fixed: # https://github.com/nix-community/nixd/issues/761 # https://github.com/nix-community/nixd/issues/762 From d247ce0b6d1a469fe673f6f2c3d3be34c77a9720 Mon Sep 17 00:00:00 2001 From: Ryan Omasta Date: Wed, 24 Jun 2026 23:24:13 -0600 Subject: [PATCH 36/95] perl5Packages.ModuleCPANTSAnalyse: skip failing test (cherry picked from commit 0eaf2dd6bd7827463977f16a06aca7a017bd9d4c) --- pkgs/top-level/perl-packages.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index 3d328cff97a7..56b1538124da 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -22082,6 +22082,12 @@ with self; url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/Module-CPANTS-Analyse-1.02.tar.gz"; hash = "sha256-nhFzm5zQi6LXWllzfx+yl/RYA/KJBjxcdZv8eP1Rbns="; }; + + # Fails with 'symlinks not listed in MANIFEST is not ignored for a non-local distribution' + postPatch = '' + rm -f t/analyse/manifest.t + ''; + propagatedBuildInputs = [ ArchiveAnyLite ArrayDiff From b2267700e44e234d21c7bbee9f94ef7a0585f9ec Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Wed, 27 May 2026 10:37:56 +0200 Subject: [PATCH 37/95] claude-code: 2.1.148 -> 2.1.152 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md (cherry picked from commit a75b165fd4969cdbcc29468fe27c6942bc0d561c) --- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++++------------ 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index 4017c80574da..235daf2e9dd2 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.148", - "commit": "650a3d6e4b17f2fd01a8432a7691d9fb147adf8d", - "buildDate": "2026-05-21T23:11:38Z", + "version": "2.1.152", + "commit": "228d8c605defcb10a183db2dbf364a2d6c490c8b", + "buildDate": "2026-05-26T19:31:46Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "f4a1860d3d9b01653dde4183e2f1216ca9e0c1a404dd63caa4edf07c904102aa", - "size": 211584672 + "checksum": "43cb9361f7bc48c39214d5f125003b8de0ebde5cd6a1173e6b74fcdd10966d46", + "size": 214210080 }, "darwin-x64": { "binary": "claude", - "checksum": "7c52d8419cc22b8355c6309d4542df32b3f245d1a7c3329a30797244ef3c4629", - "size": 214082320 + "checksum": "e9ecf8da70518a4ff852baf36c9eac369762a4568ba3cd5078fa894303e39735", + "size": 216724240 }, "linux-arm64": { "binary": "claude", - "checksum": "b53c29b1fe003372636048c16d57a74f1ca2c57d8413dd5b14e2ca77710823ed", - "size": 236959368 + "checksum": "35ef2685c4f679b5c4610ef56b30a680b6d595b958b4fa5ec0bfa2852195f345", + "size": 239515272 }, "linux-x64": { "binary": "claude", - "checksum": "3b38836a1801a6397f8431c6a62b127ce47e3e9d103c1a700fca7f9c8ab5f8ac", - "size": 237037264 + "checksum": "5155bdca27f754aba0d2fe2f80336f5fd4793224561c234a723f0ccef654a8e8", + "size": 239650512 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "06b54aef9989ea379933239c3f2dbee254034523ff67f9a0c8ed31ac6982c077", - "size": 229814104 + "checksum": "b374ef7f8c59d10a04071f6c50ccd83008188b7db26589f4fb359ee435d49929", + "size": 232370008 }, "linux-x64-musl": { "binary": "claude", - "checksum": "ad0077c9ec67ec2eaeee8be7624cc2e55b9e012e1c19154e5b80ef0a47d0e360", - "size": 231431216 + "checksum": "d4cd1951ceb25ef2bed74cd9e0dc6dec4f1219f086a35a1433eb988443096e48", + "size": 234044464 }, "win32-x64": { "binary": "claude.exe", - "checksum": "1bb46bdb06ef092b0af29cafbfec6ab73251ea34562cfe1d3a5bdf67fe3a5f93", - "size": 232827552 + "checksum": "bbea6d550bdd765c3b9e3b1fa19a49d04dd16c1687e5b21f9e0974a18b867a73", + "size": 235329184 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "d86eeb4d84a2bbee253913843a4a507192a37512a2d918a4c91e3f583cb310a5", - "size": 228792992 + "checksum": "fd4711d17e9576fec0998c85a3726e43c26e7735e1f4552064310897acf1781b", + "size": 231294112 } } } From 1e30976d4bdef6adc980ee2c6655fa1fdc9358f4 Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Wed, 27 May 2026 10:37:56 +0200 Subject: [PATCH 38/95] vscode-extensions.anthropic.claude-code: 2.1.148 -> 2.1.152 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md (cherry picked from commit 593f9ef8e1227f1c71e535d8c60da08d5606ef76) --- .../extensions/anthropic.claude-code/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index f1fb3d074704..5047403c38a3 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-wFerIcpbXDL0p7DGh19jXuOZyUvbwq2EzlmnLf1fv5M="; + hash = "sha256-D9fCOrdx2lzkafxPJENKc8tZnO+03c7CR3w/3LAQOa8="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-ubMVyijSI5WWPSsq6wJCk9BABpli9Kgbgn5T+XP8aMA="; + hash = "sha256-E4VUFvsyp0sJ1I0dIRAgIfa09zyvZHzZvKCMq5H9sig="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-tEQTTcI7pFgJ6S4Lb2XTe5MXxHudyldzTsYpz5OWr5E="; + hash = "sha256-4k71rBIHOjmC9iJvaZlD6t36jqM6fclqM/yTWSoYrvs="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-WskmpZBwQt2mSQpvchI5Ca9ZOyN9srVPGHeMULIGRs8="; + hash = "sha256-08QK3qOhE6f+LaSL2qVZgecfO6/Lqw3WVCD1wABluho="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.148"; + version = "2.1.152"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); From 9fb22582c2babda0ea93836fa7da67e38aaecf7c Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Thu, 28 May 2026 08:51:07 +0200 Subject: [PATCH 39/95] claude-code: 2.1.152 -> 2.1.153 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md (cherry picked from commit 044d26494a2ab6efa5e4d0d32a6515e3b3ebd63c) --- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++++------------ 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index 235daf2e9dd2..7ce1171e504d 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.152", - "commit": "228d8c605defcb10a183db2dbf364a2d6c490c8b", - "buildDate": "2026-05-26T19:31:46Z", + "version": "2.1.153", + "commit": "6cfd211761f355dcebba152b66399d0416e445d2", + "buildDate": "2026-05-27T20:11:39Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "43cb9361f7bc48c39214d5f125003b8de0ebde5cd6a1173e6b74fcdd10966d46", - "size": 214210080 + "checksum": "449d9c89d7a63b1d427d912a7bd6e6f23f9a7b363866697c9fa9a0012546b254", + "size": 214457760 }, "darwin-x64": { "binary": "claude", - "checksum": "e9ecf8da70518a4ff852baf36c9eac369762a4568ba3cd5078fa894303e39735", - "size": 216724240 + "checksum": "4b90521c64b728caabe221737ce8a83d362ef0852eee7d789f014f7ff73ce97b", + "size": 216971920 }, "linux-arm64": { "binary": "claude", - "checksum": "35ef2685c4f679b5c4610ef56b30a680b6d595b958b4fa5ec0bfa2852195f345", - "size": 239515272 + "checksum": "6277fbbea72228a069e4719fc3e5fa36f16749247a2321c520dae93e83e92d9c", + "size": 239777416 }, "linux-x64": { "binary": "claude", - "checksum": "5155bdca27f754aba0d2fe2f80336f5fd4793224561c234a723f0ccef654a8e8", - "size": 239650512 + "checksum": "214f603f31942162dac9a65f18d43b3ac646ae215240fad481c4aad6c60f2e38", + "size": 239896272 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "b374ef7f8c59d10a04071f6c50ccd83008188b7db26589f4fb359ee435d49929", - "size": 232370008 + "checksum": "5071eceaedd2d4d6b085faa46e1a60befad432176a9ec39fd10c004564381308", + "size": 232632152 }, "linux-x64-musl": { "binary": "claude", - "checksum": "d4cd1951ceb25ef2bed74cd9e0dc6dec4f1219f086a35a1433eb988443096e48", - "size": 234044464 + "checksum": "fb2b406b244466db17b48e2864ec7c90b852ef3f404bbb1d9c9bf914efee39d1", + "size": 234290224 }, "win32-x64": { "binary": "claude.exe", - "checksum": "bbea6d550bdd765c3b9e3b1fa19a49d04dd16c1687e5b21f9e0974a18b867a73", - "size": 235329184 + "checksum": "8bda00dba0e8b44e67966a07ee32cf23032f7ebb90e77d4f82ab2e39b1118623", + "size": 235564192 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "fd4711d17e9576fec0998c85a3726e43c26e7735e1f4552064310897acf1781b", - "size": 231294112 + "checksum": "240240e32f10bc7d4124c1c5603313e243cabaae80e174e2c6eb27f5b1e1ebe9", + "size": 231529120 } } } From b2d1ea1d1a75bbb4a9cc39f58e3c1e5ba9c932d7 Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Thu, 28 May 2026 08:51:11 +0200 Subject: [PATCH 40/95] vscode-extensions.anthropic.claude-code: 2.1.152 -> 2.1.153 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md (cherry picked from commit 4447f9584caa6dcc97a0183b4b8a34f37d50dca2) --- .../extensions/anthropic.claude-code/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index 5047403c38a3..66a5d21930bd 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-D9fCOrdx2lzkafxPJENKc8tZnO+03c7CR3w/3LAQOa8="; + hash = "sha256-BOZu4SL/OObI7TCD5bPW3y2hl8TeXSjx/uIDObe5o3w="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-E4VUFvsyp0sJ1I0dIRAgIfa09zyvZHzZvKCMq5H9sig="; + hash = "sha256-k2QeQA3gXhfKGaLgPLJZJU4B0AxnWLZ7o1TdsZ4L+GY="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-4k71rBIHOjmC9iJvaZlD6t36jqM6fclqM/yTWSoYrvs="; + hash = "sha256-bgWoBk/NfRDVJjVBa98kE64OyWcnszQq43GS1kbyokU="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-08QK3qOhE6f+LaSL2qVZgecfO6/Lqw3WVCD1wABluho="; + hash = "sha256-m+UTIAPVi1ZsMPMhY/W2O4zRE0Hc97Xn/+XNy3bpk60="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.152"; + version = "2.1.153"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); From b4f7eec08e976792ae48cbbc8c997759c284c571 Mon Sep 17 00:00:00 2001 From: Austin Butler Date: Thu, 28 May 2026 11:33:28 -0700 Subject: [PATCH 41/95] claude-code: 2.1.153 -> 2.1.154 (cherry picked from commit 56c7284b7515c331285f687017943bc31d5148b5) --- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++++------------ 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index 7ce1171e504d..1494135a03eb 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.153", - "commit": "6cfd211761f355dcebba152b66399d0416e445d2", - "buildDate": "2026-05-27T20:11:39Z", + "version": "2.1.154", + "commit": "b84d2da9ada13121515426fc644786a303e9ac53", + "buildDate": "2026-05-28T12:36:02Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "449d9c89d7a63b1d427d912a7bd6e6f23f9a7b363866697c9fa9a0012546b254", - "size": 214457760 + "checksum": "bc9881b107d7be1743c64c8b72dd66798f5d0947dbc48ed0d77964c473661fd4", + "size": 214986144 }, "darwin-x64": { "binary": "claude", - "checksum": "4b90521c64b728caabe221737ce8a83d362ef0852eee7d789f014f7ff73ce97b", - "size": 216971920 + "checksum": "1608d93261879201dcf77dd32dc173efbeea715187d3542fd05afcf7d5b5ec4d", + "size": 217500304 }, "linux-arm64": { "binary": "claude", - "checksum": "6277fbbea72228a069e4719fc3e5fa36f16749247a2321c520dae93e83e92d9c", - "size": 239777416 + "checksum": "9f732de278f7adc61d29fd5b055ddaf1bae3bb26d75fe6e06a125602565777a8", + "size": 240301704 }, "linux-x64": { "binary": "claude", - "checksum": "214f603f31942162dac9a65f18d43b3ac646ae215240fad481c4aad6c60f2e38", - "size": 239896272 + "checksum": "67f6cab7e6c124010f62ac18f8078bc09e0db6a5b9e8ae874e9e73033c451793", + "size": 240420560 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "5071eceaedd2d4d6b085faa46e1a60befad432176a9ec39fd10c004564381308", - "size": 232632152 + "checksum": "5880876f031d5e904d107e23d9d32f717e0a30e903277970e17b82955d4c3650", + "size": 233156440 }, "linux-x64-musl": { "binary": "claude", - "checksum": "fb2b406b244466db17b48e2864ec7c90b852ef3f404bbb1d9c9bf914efee39d1", - "size": 234290224 + "checksum": "ee9b77191b949660b6ef09c42768baf04b881c963b77846e99450562a6e3ba70", + "size": 234814512 }, "win32-x64": { "binary": "claude.exe", - "checksum": "8bda00dba0e8b44e67966a07ee32cf23032f7ebb90e77d4f82ab2e39b1118623", - "size": 235564192 + "checksum": "0a4fd0248444c6f33d659c555dcf66c2ab4a1b2c6ae8c4126c7ecf11c547791a", + "size": 236073120 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "240240e32f10bc7d4124c1c5603313e243cabaae80e174e2c6eb27f5b1e1ebe9", - "size": 231529120 + "checksum": "5db6139981642c69fcb1c7ca17bba2eed22727dbdff43422d8a1d93761d86431", + "size": 232038560 } } } From 4a59da71eb9c5f24329d1a813b0974ed22efcfc1 Mon Sep 17 00:00:00 2001 From: Austin Butler Date: Thu, 28 May 2026 11:33:46 -0700 Subject: [PATCH 42/95] vscode-extensions.anthropic.claude-code: 2.1.153 -> 2.1.154 (cherry picked from commit 58cfb7533bd108e3c0b1d2065abfd77d9bfdb124) --- .../extensions/anthropic.claude-code/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index 66a5d21930bd..e2e9a63f5025 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-BOZu4SL/OObI7TCD5bPW3y2hl8TeXSjx/uIDObe5o3w="; + hash = "sha256-XfjNSoYIUEPgVI9deA9RDx2ur0oqIbDzvkYErfI0Fyw="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-k2QeQA3gXhfKGaLgPLJZJU4B0AxnWLZ7o1TdsZ4L+GY="; + hash = "sha256-/W5i1ODeA7YwsCb3gw0njQbf9WplsaZJZG84/czNxs4="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-bgWoBk/NfRDVJjVBa98kE64OyWcnszQq43GS1kbyokU="; + hash = "sha256-fNsrRK6kaqqHgUD2TdvFni7nZXrAPdkC1dR2qFKdNas="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-m+UTIAPVi1ZsMPMhY/W2O4zRE0Hc97Xn/+XNy3bpk60="; + hash = "sha256-4O/PZWXDHo+fcrNW7aDvUYc6x49k5CQNjy28KsgkpGM="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.153"; + version = "2.1.154"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); From de9ae84216ba3c468e09c61dd83900f903c7dfdc Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Fri, 29 May 2026 09:39:39 +0200 Subject: [PATCH 43/95] claude-code: 2.1.154 -> 2.1.156 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit 0f79289b97fa4508e9024ce3216ad905a1087549) --- pkgs/by-name/cl/claude-code/manifest.json | 26 +++++++++++------------ 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index 1494135a03eb..845d1ba03229 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.154", - "commit": "b84d2da9ada13121515426fc644786a303e9ac53", - "buildDate": "2026-05-28T12:36:02Z", + "version": "2.1.156", + "commit": "de3d672b5e8c35ae78d81c9dd83844d334ec63af", + "buildDate": "2026-05-28T18:38:44Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "bc9881b107d7be1743c64c8b72dd66798f5d0947dbc48ed0d77964c473661fd4", + "checksum": "9c1e8601031f5cbb3101e49dda22bf8ba31183692c705e267a6923585fa2ba09", "size": 214986144 }, "darwin-x64": { "binary": "claude", - "checksum": "1608d93261879201dcf77dd32dc173efbeea715187d3542fd05afcf7d5b5ec4d", + "checksum": "ccd608c694677324e24dec7d1253b51f887a7be838cdb75b22d5362c97351107", "size": 217500304 }, "linux-arm64": { "binary": "claude", - "checksum": "9f732de278f7adc61d29fd5b055ddaf1bae3bb26d75fe6e06a125602565777a8", + "checksum": "7ed95d0a93aeb40e2b98e234b760d9295b7044ef678c62db8d1f5e14bfd57878", "size": 240301704 }, "linux-x64": { "binary": "claude", - "checksum": "67f6cab7e6c124010f62ac18f8078bc09e0db6a5b9e8ae874e9e73033c451793", + "checksum": "6d83cd2264450c5e54fc988be1032c288cf418ee604294acfb8fc4ac28f5f7a3", "size": 240420560 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "5880876f031d5e904d107e23d9d32f717e0a30e903277970e17b82955d4c3650", + "checksum": "858aa70793d5ba6293ae64b0e351514040a6e1021e9b2bac7129a791216505ce", "size": 233156440 }, "linux-x64-musl": { "binary": "claude", - "checksum": "ee9b77191b949660b6ef09c42768baf04b881c963b77846e99450562a6e3ba70", + "checksum": "a594c2a56f7333816b85f53ed0501399b49bd44c05f25b315869b5b102ff34c3", "size": 234814512 }, "win32-x64": { "binary": "claude.exe", - "checksum": "0a4fd0248444c6f33d659c555dcf66c2ab4a1b2c6ae8c4126c7ecf11c547791a", - "size": 236073120 + "checksum": "188cc105e1caaed88f63ac2060283eb426ea17a69130810c10126b2c14f7dc7e", + "size": 236074144 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "5db6139981642c69fcb1c7ca17bba2eed22727dbdff43422d8a1d93761d86431", - "size": 232038560 + "checksum": "1e10b4fa9e8a4829cfdf77a9c55cfe0dd26c54f2afb4d3dd9d19ff9e99ca1887", + "size": 232039072 } } } From d7f50277f57de05fa3b537cb3137b28c13265c47 Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Fri, 29 May 2026 09:39:39 +0200 Subject: [PATCH 44/95] vscode-extensions.anthropic.claude-code: 2.1.154 -> 2.1.156 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit 6f5dc0cce504a80ddfce852d950c55dac35507b9) --- .../extensions/anthropic.claude-code/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index e2e9a63f5025..1596e6753fec 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-XfjNSoYIUEPgVI9deA9RDx2ur0oqIbDzvkYErfI0Fyw="; + hash = "sha256-cKQwDXdsaUI4pFF/DMa/8qLs9q3C1WwI47/otxKS+Ww="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-/W5i1ODeA7YwsCb3gw0njQbf9WplsaZJZG84/czNxs4="; + hash = "sha256-2hOK3Hl5GDspu0oU0w2kqH324nOafRsKEoRCk2N6Nmw="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-fNsrRK6kaqqHgUD2TdvFni7nZXrAPdkC1dR2qFKdNas="; + hash = "sha256-fw/WkYTeB7uh9ggEASmZIz636iuy0nDsIt/oU2DBfGo="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-4O/PZWXDHo+fcrNW7aDvUYc6x49k5CQNjy28KsgkpGM="; + hash = "sha256-YwUoK12QEMasKl7GOTfHOnDgkg/NNBZMA29sx674XBc="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.154"; + version = "2.1.156"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); From b7838f7593cebf7b04e708be6c6e2b3f0dd27c21 Mon Sep 17 00:00:00 2001 From: Marc Scholten Date: Sat, 30 May 2026 11:44:43 +0100 Subject: [PATCH 45/95] claude-code: 2.1.156 -> 2.1.158 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit e062a191667e1c067213959dad57d1c52b40edef) --- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++++------------ 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index 845d1ba03229..51f565fe996d 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.156", - "commit": "de3d672b5e8c35ae78d81c9dd83844d334ec63af", - "buildDate": "2026-05-28T18:38:44Z", + "version": "2.1.158", + "commit": "96d5f49347b9949c6a3e6287cbb62b8939b7e1c2", + "buildDate": "2026-05-29T23:34:41Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "9c1e8601031f5cbb3101e49dda22bf8ba31183692c705e267a6923585fa2ba09", - "size": 214986144 + "checksum": "536a0517fa64d48ddcbc8eb511a3d08027d47e06d148872332a8041d72c22768", + "size": 215233824 }, "darwin-x64": { "binary": "claude", - "checksum": "ccd608c694677324e24dec7d1253b51f887a7be838cdb75b22d5362c97351107", - "size": 217500304 + "checksum": "b7b33293702fb8e0a119b795d5af5178bd346fb46d4d7f161336d521f62d1451", + "size": 217747984 }, "linux-arm64": { "binary": "claude", - "checksum": "7ed95d0a93aeb40e2b98e234b760d9295b7044ef678c62db8d1f5e14bfd57878", - "size": 240301704 + "checksum": "98807675a3ed5b7b775f7eaa81eda32cba2810b97e9db9f6f98d7bd658cec00e", + "size": 240563848 }, "linux-x64": { "binary": "claude", - "checksum": "6d83cd2264450c5e54fc988be1032c288cf418ee604294acfb8fc4ac28f5f7a3", - "size": 240420560 + "checksum": "dd27008acd42700bac5762652ec83ff604bf9ae0786d4dde55d57a6866017fbe", + "size": 240666320 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "858aa70793d5ba6293ae64b0e351514040a6e1021e9b2bac7129a791216505ce", - "size": 233156440 + "checksum": "742329f43930cbb1122eb1fe7aca339cb3dfb67be83cd256867859fba1e79ce2", + "size": 233418584 }, "linux-x64-musl": { "binary": "claude", - "checksum": "a594c2a56f7333816b85f53ed0501399b49bd44c05f25b315869b5b102ff34c3", - "size": 234814512 + "checksum": "56d66c89bf8d3e8efdab965e1dcc840d993212b40a2e89c751567c4bc605beba", + "size": 235060272 }, "win32-x64": { "binary": "claude.exe", - "checksum": "188cc105e1caaed88f63ac2060283eb426ea17a69130810c10126b2c14f7dc7e", - "size": 236074144 + "checksum": "10fa305545b20baf6e074a086762bd252b89dfe7035848a5d41385503b1a6c74", + "size": 236306080 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "1e10b4fa9e8a4829cfdf77a9c55cfe0dd26c54f2afb4d3dd9d19ff9e99ca1887", - "size": 232039072 + "checksum": "9e0e303015eb3c9aba782b366b35194073ab8130ac6c091c2c46870798a20bdc", + "size": 232271008 } } } From 83f7e130870d6bc09a26cb5a7fd0c6618ac451ca Mon Sep 17 00:00:00 2001 From: Marc Scholten Date: Sat, 30 May 2026 11:45:06 +0100 Subject: [PATCH 46/95] vscode-extensions.anthropic.claude-code: 2.1.156 -> 2.1.158 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit 6a03e6089deeee22259d89ece3b941f70dcfd79e) --- .../extensions/anthropic.claude-code/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index 1596e6753fec..e5255aeb0f35 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-cKQwDXdsaUI4pFF/DMa/8qLs9q3C1WwI47/otxKS+Ww="; + hash = "sha256-fiPj/rkwNevJC2bTjRBkuhwdI3Sqgj3xsQB1yp6KxEM="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-2hOK3Hl5GDspu0oU0w2kqH324nOafRsKEoRCk2N6Nmw="; + hash = "sha256-NZy2I3cNZBM2oXUJ/mf56QW1edvcKu0HICAZq6VVF6U="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-fw/WkYTeB7uh9ggEASmZIz636iuy0nDsIt/oU2DBfGo="; + hash = "sha256-admTed1OpngSd2BY368AkOQGWnVLX7KM4icgx2uNJYE="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-YwUoK12QEMasKl7GOTfHOnDgkg/NNBZMA29sx674XBc="; + hash = "sha256-l39oH4LOgFrZ5598+YWvArIHrZHSz0NU9wOAMop7kNw="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.156"; + version = "2.1.158"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); From 2149b9169a4f50ec17285d8e583471b4fa1cb53a Mon Sep 17 00:00:00 2001 From: Maciej Wojterski Date: Sun, 31 May 2026 23:12:45 +0200 Subject: [PATCH 47/95] claude-code: use baseUrl from official install script (cherry picked from commit 1f9a45d327c783996acc4690e83ff661fe1cf1b5) --- pkgs/by-name/cl/claude-code/package.nix | 2 +- pkgs/by-name/cl/claude-code/update.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/package.nix b/pkgs/by-name/cl/claude-code/package.nix index 62b66ae13082..4576e279be3a 100644 --- a/pkgs/by-name/cl/claude-code/package.nix +++ b/pkgs/by-name/cl/claude-code/package.nix @@ -19,7 +19,7 @@ }: let stdenv = stdenvNoCC; - baseUrl = "https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases"; + baseUrl = "https://downloads.claude.ai/claude-code-releases"; manifest = lib.importJSON ./manifest.json; platformKey = "${stdenv.hostPlatform.node.platform}-${stdenv.hostPlatform.node.arch}"; platformManifestEntry = manifest.platforms.${platformKey}; diff --git a/pkgs/by-name/cl/claude-code/update.sh b/pkgs/by-name/cl/claude-code/update.sh index 1e2125a74625..fd0e340365a5 100755 --- a/pkgs/by-name/cl/claude-code/update.sh +++ b/pkgs/by-name/cl/claude-code/update.sh @@ -5,7 +5,7 @@ set -euo pipefail cd "$(dirname "${BASH_SOURCE[0]}")" -BASE_URL="https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases" +BASE_URL="https://downloads.claude.ai/claude-code-releases" VERSION="${1:-$(curl -fsSL "$BASE_URL/latest")}" From ffcf7a91401331d63b1678f4a57193209256fa63 Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Wed, 3 Jun 2026 08:19:48 +0200 Subject: [PATCH 48/95] claude-code: 2.1.158 -> 2.1.161 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit f6c5da47e3082310e4f0aac886e8cf6b41b1df52) --- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++++------------ 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index 51f565fe996d..b5739d67bef8 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.158", - "commit": "96d5f49347b9949c6a3e6287cbb62b8939b7e1c2", - "buildDate": "2026-05-29T23:34:41Z", + "version": "2.1.161", + "commit": "6a550aea7c747b1b0ddd8bb61dbe199c4ad41320", + "buildDate": "2026-06-02T01:55:49Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "536a0517fa64d48ddcbc8eb511a3d08027d47e06d148872332a8041d72c22768", - "size": 215233824 + "checksum": "5b4dc79eab05f9756c252c71deb339efa4429dffc1967dd8392cf87fcde4867f", + "size": 218040864 }, "darwin-x64": { "binary": "claude", - "checksum": "b7b33293702fb8e0a119b795d5af5178bd346fb46d4d7f161336d521f62d1451", - "size": 217747984 + "checksum": "6f874fecac8a951f5f1991dc1470bc85a5e24f2588859b89cca0f1b6b5592310", + "size": 220555024 }, "linux-arm64": { "binary": "claude", - "checksum": "98807675a3ed5b7b775f7eaa81eda32cba2810b97e9db9f6f98d7bd658cec00e", - "size": 240563848 + "checksum": "7dfa0a79a2fc9f332057cdc0302f808cba63df7b75e2ccb5a7c1ab62639804e3", + "size": 243316360 }, "linux-x64": { "binary": "claude", - "checksum": "dd27008acd42700bac5762652ec83ff604bf9ae0786d4dde55d57a6866017fbe", - "size": 240666320 + "checksum": "1f6a22f387a3bce496b6d869389a35dffb5a69c97d9831833f3bd6dc0e6c6c28", + "size": 243439312 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "742329f43930cbb1122eb1fe7aca339cb3dfb67be83cd256867859fba1e79ce2", - "size": 233418584 + "checksum": "8318d4039c60fbb21a53e81f93e46a3b1dcdb9b07462f6fee72d99c9d2b93f83", + "size": 236171096 }, "linux-x64-musl": { "binary": "claude", - "checksum": "56d66c89bf8d3e8efdab965e1dcc840d993212b40a2e89c751567c4bc605beba", - "size": 235060272 + "checksum": "f8e09e0b16502c277ca8a296245eb59f421e424763a99fd132551b701a713bcf", + "size": 237833264 }, "win32-x64": { "binary": "claude.exe", - "checksum": "10fa305545b20baf6e074a086762bd252b89dfe7035848a5d41385503b1a6c74", - "size": 236306080 + "checksum": "3b0b64caf3428fac3751bd1903c350870b34f9e7a4390ac7c2fdb3a711656a04", + "size": 239007904 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "9e0e303015eb3c9aba782b366b35194073ab8130ac6c091c2c46870798a20bdc", - "size": 232271008 + "checksum": "f4a7d910fc5a8b46afc14c36108c46c8b0deeb8f316c6b7e4ede77868ce70acf", + "size": 234972832 } } } From 152f8b3d5347db3d6742bd3ff5a9285f1750e4bf Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Wed, 3 Jun 2026 08:19:49 +0200 Subject: [PATCH 49/95] vscode-extensions.anthropic.claude-code: 2.1.158 -> 2.1.161 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit 0ec78cf1f12a11d05d5058da86e07480ffab1a47) --- .../extensions/anthropic.claude-code/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index e5255aeb0f35..78e354134f54 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-fiPj/rkwNevJC2bTjRBkuhwdI3Sqgj3xsQB1yp6KxEM="; + hash = "sha256-q5j8Ip/ew3oHGIakJm/CTeKcW4O9FR062f4rILXbQrQ="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-NZy2I3cNZBM2oXUJ/mf56QW1edvcKu0HICAZq6VVF6U="; + hash = "sha256-viZxHDA8SfsIVB5R9I/8SB8EEWRvt1kpZPDA4w0sD54="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-admTed1OpngSd2BY368AkOQGWnVLX7KM4icgx2uNJYE="; + hash = "sha256-kL0bab7BT45EEh17jKFVHqaMQEYkxLlsDKtK1deoS4M="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-l39oH4LOgFrZ5598+YWvArIHrZHSz0NU9wOAMop7kNw="; + hash = "sha256-fJW6fTGRWLBWB1yZ1pGb3p4KkFLhrDXqw+0wjOv71Vo="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.158"; + version = "2.1.161"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); From 6b08db382930d6410bd2e42dce569cd8c758f4d1 Mon Sep 17 00:00:00 2001 From: Sam Estep Date: Tue, 9 Jun 2026 13:48:25 -0400 Subject: [PATCH 50/95] claude-code: 2.1.161 -> 2.1.170 (cherry picked from commit 5900fe6cf8eca7dc124309029a50c7f80e90b6c9) --- .../anthropic.claude-code/default.nix | 10 ++--- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++---------- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index 78e354134f54..79722fb748ee 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-q5j8Ip/ew3oHGIakJm/CTeKcW4O9FR062f4rILXbQrQ="; + hash = "sha256-792UABRtJEpG4ipQsoiN1lkGeaNqHyg69Sv3g26BZBA="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-viZxHDA8SfsIVB5R9I/8SB8EEWRvt1kpZPDA4w0sD54="; + hash = "sha256-NDiCBtQ/BWPPOAbDs/ACZ68at0gAqJJMPBLCsILnBho="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-kL0bab7BT45EEh17jKFVHqaMQEYkxLlsDKtK1deoS4M="; + hash = "sha256-j81bcYqopNTAO/faiugARwAaVZ8s+1Atf8oHDTS8fR4="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-fJW6fTGRWLBWB1yZ1pGb3p4KkFLhrDXqw+0wjOv71Vo="; + hash = "sha256-Y6M110iwzKdzJoHb6zEKWyR4NyxyQtuvNJ4ucOrUYdY="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.161"; + version = "2.1.170"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index b5739d67bef8..a113b33e702d 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.161", - "commit": "6a550aea7c747b1b0ddd8bb61dbe199c4ad41320", - "buildDate": "2026-06-02T01:55:49Z", + "version": "2.1.170", + "commit": "1cda84def004ef3a8f569f8e8284a153a6b98c3a", + "buildDate": "2026-06-09T15:22:30Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "5b4dc79eab05f9756c252c71deb339efa4429dffc1967dd8392cf87fcde4867f", - "size": 218040864 + "checksum": "e903646d8b7a31882a80ecd27569a27d8ac57b3708745f349709632c84117fdf", + "size": 222102816 }, "darwin-x64": { "binary": "claude", - "checksum": "6f874fecac8a951f5f1991dc1470bc85a5e24f2588859b89cca0f1b6b5592310", - "size": 220555024 + "checksum": "914f23a70bbed5d9ae567e3e04b86206ed9971b371bc9baca3f79c8885bfddb4", + "size": 224616976 }, "linux-arm64": { "binary": "claude", - "checksum": "7dfa0a79a2fc9f332057cdc0302f808cba63df7b75e2ccb5a7c1ab62639804e3", - "size": 243316360 + "checksum": "1bb9d032440a75532f7dd4cafbc687f220aaf16c63eba17e192dfbec2f04bd25", + "size": 247379592 }, "linux-x64": { "binary": "claude", - "checksum": "1f6a22f387a3bce496b6d869389a35dffb5a69c97d9831833f3bd6dc0e6c6c28", - "size": 243439312 + "checksum": "849e007277a0442ab27570d3e3d6d43787507946590e8dd1947e5a39b7081f9e", + "size": 247469776 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "8318d4039c60fbb21a53e81f93e46a3b1dcdb9b07462f6fee72d99c9d2b93f83", - "size": 236171096 + "checksum": "73154fd674aaf233254edea8fbfb6a53d82d5297ae7546b998e36983def4dddc", + "size": 240234328 }, "linux-x64-musl": { "binary": "claude", - "checksum": "f8e09e0b16502c277ca8a296245eb59f421e424763a99fd132551b701a713bcf", - "size": 237833264 + "checksum": "5d19b7c91a03182ccb69da249f721684aebecfa4c52fe46b9205a81d8fc64a47", + "size": 241863728 }, "win32-x64": { "binary": "claude.exe", - "checksum": "3b0b64caf3428fac3751bd1903c350870b34f9e7a4390ac7c2fdb3a711656a04", - "size": 239007904 + "checksum": "193061508fe619abf534b2c9d48151f26971d1d5b8460ad75c0af4be3d3525fb", + "size": 242929824 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "f4a7d910fc5a8b46afc14c36108c46c8b0deeb8f316c6b7e4ede77868ce70acf", - "size": 234972832 + "checksum": "9abd330bcc191aecc877a8ee9da2b448852cfe3bda15e5e4608385ea1d9d1709", + "size": 238894240 } } } From 71f7797da670f5a48543fbbc4912de449b1549b1 Mon Sep 17 00:00:00 2001 From: Sam Estep Date: Wed, 10 Jun 2026 17:34:30 -0400 Subject: [PATCH 51/95] claude-code: 2.1.170 -> 2.1.172 (cherry picked from commit 7237443b6aa0b87b224384b9b0d585dfe8e33527) --- .../anthropic.claude-code/default.nix | 10 ++--- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++---------- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index 79722fb748ee..d5e75c2183e3 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-792UABRtJEpG4ipQsoiN1lkGeaNqHyg69Sv3g26BZBA="; + hash = "sha256-R3ab2IeY9QnDhZFk52/05pIv4A+sZU3kJ9Jn5uLRa4Y="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-NDiCBtQ/BWPPOAbDs/ACZ68at0gAqJJMPBLCsILnBho="; + hash = "sha256-AE6zS8bJ4vec+P36NkxWYQ1tmcJG2WsFkv75+gRlrxA="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-j81bcYqopNTAO/faiugARwAaVZ8s+1Atf8oHDTS8fR4="; + hash = "sha256-n1qV1Lrl65HSDthMc5/7hLppeNBO6067Z+Rf5+kxfnA="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-Y6M110iwzKdzJoHb6zEKWyR4NyxyQtuvNJ4ucOrUYdY="; + hash = "sha256-g+lkUYym43o8cEFseWCrcSUUTx296u8DS9JvnU1dBLU="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.170"; + version = "2.1.172"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index a113b33e702d..5521b16d66fc 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.170", - "commit": "1cda84def004ef3a8f569f8e8284a153a6b98c3a", - "buildDate": "2026-06-09T15:22:30Z", + "version": "2.1.172", + "commit": "1b719ca2781a2dccc4a769b66bc35b4a60509ad7", + "buildDate": "2026-06-10T16:38:17Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "e903646d8b7a31882a80ecd27569a27d8ac57b3708745f349709632c84117fdf", - "size": 222102816 + "checksum": "3c31f345575bf6f261c7e19981f6491bb93eeb0ffb499e95033610a7184831ce", + "size": 223390752 }, "darwin-x64": { "binary": "claude", - "checksum": "914f23a70bbed5d9ae567e3e04b86206ed9971b371bc9baca3f79c8885bfddb4", - "size": 224616976 + "checksum": "c507f98750c5230e4247f7eadff38e4db04c006904f85379e31c5d5e82e1c384", + "size": 225892528 }, "linux-arm64": { "binary": "claude", - "checksum": "1bb9d032440a75532f7dd4cafbc687f220aaf16c63eba17e192dfbec2f04bd25", - "size": 247379592 + "checksum": "4ef0d735bd4180c3bffc381f6dc38df979229a8637d294be751c6043d93d12e1", + "size": 248624776 }, "linux-x64": { "binary": "claude", - "checksum": "849e007277a0442ab27570d3e3d6d43787507946590e8dd1947e5a39b7081f9e", - "size": 247469776 + "checksum": "c0915dd1691d569aeebc7978b12e029718323685ec0dd4b5c6a453108d6be1f7", + "size": 248743632 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "73154fd674aaf233254edea8fbfb6a53d82d5297ae7546b998e36983def4dddc", - "size": 240234328 + "checksum": "6b10aad4270348175206bd2475f82ef3c56007dfb55d7b90f1950dfa8fb9eb40", + "size": 241479512 }, "linux-x64-musl": { "binary": "claude", - "checksum": "5d19b7c91a03182ccb69da249f721684aebecfa4c52fe46b9205a81d8fc64a47", - "size": 241863728 + "checksum": "58f2c60711f95e51d86d1af5b915cbdd0458710f1830b7c26d59b78f1ad1f861", + "size": 243153968 }, "win32-x64": { "binary": "claude.exe", - "checksum": "193061508fe619abf534b2c9d48151f26971d1d5b8460ad75c0af4be3d3525fb", - "size": 242929824 + "checksum": "07132ca4bbef551c92c1ae6ca0220a5e523092c9fa9cf402f65f428450687455", + "size": 244181152 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "9abd330bcc191aecc877a8ee9da2b448852cfe3bda15e5e4608385ea1d9d1709", - "size": 238894240 + "checksum": "1e3e165c03de2af83c1e3516b73890b56e9785a2382338adcc28f41918bf4d2f", + "size": 240146080 } } } From fe85680268afcbe0592ee62abe059d9da0ad8e69 Mon Sep 17 00:00:00 2001 From: "Adam C. Stephens" Date: Thu, 11 Jun 2026 10:24:46 -0400 Subject: [PATCH 52/95] claude-code: 2.1.172 -> 2.1.175 Changelog: https://github.com/anthropics/claude-code/blob/v2.1.175/CHANGELOG.md (cherry picked from commit 08557f81ee061bb5126ed14b88bec771d7b5d261) --- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++++------------ pkgs/by-name/cl/claude-code/package.nix | 2 +- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index 5521b16d66fc..5f2e80c7f9ce 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.172", - "commit": "1b719ca2781a2dccc4a769b66bc35b4a60509ad7", - "buildDate": "2026-06-10T16:38:17Z", + "version": "2.1.175", + "commit": "0b9163019454512fd2b2ed8e6bef5470f9259f35", + "buildDate": "2026-06-12T01:33:39Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "3c31f345575bf6f261c7e19981f6491bb93eeb0ffb499e95033610a7184831ce", - "size": 223390752 + "checksum": "6b75bf132c866ed409bf913c318ca32011e73ffb12d3cd67ecc37bc4ee9ec65d", + "size": 224216352 }, "darwin-x64": { "binary": "claude", - "checksum": "c507f98750c5230e4247f7eadff38e4db04c006904f85379e31c5d5e82e1c384", - "size": 225892528 + "checksum": "3770f2cb42d3f776e62a59aa16230843dc7b8422b36be9b1532e02a6e92e7fa8", + "size": 226734640 }, "linux-arm64": { "binary": "claude", - "checksum": "4ef0d735bd4180c3bffc381f6dc38df979229a8637d294be751c6043d93d12e1", - "size": 248624776 + "checksum": "360f1f6f43ec26d9bb6e20e487bf44b753d9b8407e89e74bfeeb79707399f435", + "size": 249476744 }, "linux-x64": { "binary": "claude", - "checksum": "c0915dd1691d569aeebc7978b12e029718323685ec0dd4b5c6a453108d6be1f7", - "size": 248743632 + "checksum": "4fc72fa6090c9a03f1850e1b1ccb3d6806bf802b67e3cb9dc5f2ced4b7ed5ca1", + "size": 249566928 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "6b10aad4270348175206bd2475f82ef3c56007dfb55d7b90f1950dfa8fb9eb40", - "size": 241479512 + "checksum": "27234d99851b2e343184466924d8f5c9318d1cfc4156fc4198c99e26c8a8ab86", + "size": 242331480 }, "linux-x64-musl": { "binary": "claude", - "checksum": "58f2c60711f95e51d86d1af5b915cbdd0458710f1830b7c26d59b78f1ad1f861", - "size": 243153968 + "checksum": "f40f977d2555f349e4d94f6efdc7deece3596c2cffa9d1a6a66b14ee30cfca54", + "size": 243977264 }, "win32-x64": { "binary": "claude.exe", - "checksum": "07132ca4bbef551c92c1ae6ca0220a5e523092c9fa9cf402f65f428450687455", - "size": 244181152 + "checksum": "c1b5b0ae1b607c1f8623d222c9eb6005a35dd6873aa834910a6fb3e00450e096", + "size": 244979872 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "1e3e165c03de2af83c1e3516b73890b56e9785a2382338adcc28f41918bf4d2f", - "size": 240146080 + "checksum": "f01eea49c920e990a7c3d2c1071abbc7e79ab54a099380982c11a6f462ca7c4a", + "size": 240943776 } } } diff --git a/pkgs/by-name/cl/claude-code/package.nix b/pkgs/by-name/cl/claude-code/package.nix index 4576e279be3a..ccf91a8aab7d 100644 --- a/pkgs/by-name/cl/claude-code/package.nix +++ b/pkgs/by-name/cl/claude-code/package.nix @@ -92,7 +92,7 @@ stdenv.mkDerivation (finalAttrs: { description = "Agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster"; homepage = "https://github.com/anthropics/claude-code"; downloadPage = "https://claude.com/product/claude-code"; - changelog = "https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md"; + changelog = "https://github.com/anthropics/claude-code/blob/v${finalAttrs.version}/CHANGELOG.md"; license = lib.licenses.unfree; sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; platforms = [ From 032fa9d66050cf0d82ffcd4dda14518d183d5051 Mon Sep 17 00:00:00 2001 From: "Adam C. Stephens" Date: Thu, 11 Jun 2026 14:43:28 -0400 Subject: [PATCH 53/95] vscode-extensions.anthropic.claude-code: 2.1.172 -> 2.1.175 (cherry picked from commit 11413b2e2f7a34bdd1925d823fb0b3be5475c31a) --- .../extensions/anthropic.claude-code/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index d5e75c2183e3..3acd29d4b269 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-R3ab2IeY9QnDhZFk52/05pIv4A+sZU3kJ9Jn5uLRa4Y="; + hash = "sha256-XA4xSd/sg9vhOGqcCNliHzloBxPZsgXW/dSkKp/RzM0="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-AE6zS8bJ4vec+P36NkxWYQ1tmcJG2WsFkv75+gRlrxA="; + hash = "sha256-l2NjDHBOMBzJT9Pis7sqSuFuG07eZPALximND+hVqDU="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-n1qV1Lrl65HSDthMc5/7hLppeNBO6067Z+Rf5+kxfnA="; + hash = "sha256-hE/1N28f9uAzg2fG3Hrc4z1kW21rdhtCRmF9SphqiFc="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-g+lkUYym43o8cEFseWCrcSUUTx296u8DS9JvnU1dBLU="; + hash = "sha256-68CmDax385o0juoQWNX/NLx+tjIt9YytTHjRZkqAR98="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.172"; + version = "2.1.175"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); From 6f69f9e0dd44fa341603bf939262b57828e299ad Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 13 Jun 2026 04:59:25 +0000 Subject: [PATCH 54/95] claude-code: 2.1.175 -> 2.1.177 (cherry picked from commit 12ebfbe912fd3b90f68203146f15ef15b24a6dff) --- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++++------------ 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index 5f2e80c7f9ce..2f0552a443c4 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.175", - "commit": "0b9163019454512fd2b2ed8e6bef5470f9259f35", - "buildDate": "2026-06-12T01:33:39Z", + "version": "2.1.177", + "commit": "6fae7a072b111776fc95ca221caac31b7439eb25", + "buildDate": "2026-06-13T00:29:44Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "6b75bf132c866ed409bf913c318ca32011e73ffb12d3cd67ecc37bc4ee9ec65d", - "size": 224216352 + "checksum": "eb0730351be2f02b482b1855870f5877489085aac86b0c4c1db4e458d9e40ed9", + "size": 225124512 }, "darwin-x64": { "binary": "claude", - "checksum": "3770f2cb42d3f776e62a59aa16230843dc7b8422b36be9b1532e02a6e92e7fa8", - "size": 226734640 + "checksum": "fcdc6c6679d4e1e3a0a3812f24e8b08ab73156732072c2ca5ee6248bee8313bd", + "size": 227642800 }, "linux-arm64": { "binary": "claude", - "checksum": "360f1f6f43ec26d9bb6e20e487bf44b753d9b8407e89e74bfeeb79707399f435", - "size": 249476744 + "checksum": "baf3926dc166215772f959e367da9784ff4c75157aaafe4524fdc79ebff984b1", + "size": 250394248 }, "linux-x64": { "binary": "claude", - "checksum": "4fc72fa6090c9a03f1850e1b1ccb3d6806bf802b67e3cb9dc5f2ced4b7ed5ca1", - "size": 249566928 + "checksum": "ff41753634b20c869ef6a32a20863521b33d4186ac0d6a49379ab48a48395ee7", + "size": 250480336 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "27234d99851b2e343184466924d8f5c9318d1cfc4156fc4198c99e26c8a8ab86", - "size": 242331480 + "checksum": "bc756f27912d993d632a5f86be9a0364fc3c1373d146a367e46c8d01d3ca1620", + "size": 243248984 }, "linux-x64-musl": { "binary": "claude", - "checksum": "f40f977d2555f349e4d94f6efdc7deece3596c2cffa9d1a6a66b14ee30cfca54", - "size": 243977264 + "checksum": "4884b1512bf2863a85f1717eee58840b05d558568f817be71b1a116a430f4a96", + "size": 244890672 }, "win32-x64": { "binary": "claude.exe", - "checksum": "c1b5b0ae1b607c1f8623d222c9eb6005a35dd6873aa834910a6fb3e00450e096", - "size": 244979872 + "checksum": "408ddf27d45fc6b6516843c0513072bc0f474d7bface60ae8bbbc633bef9feb2", + "size": 245856928 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "f01eea49c920e990a7c3d2c1071abbc7e79ab54a099380982c11a6f462ca7c4a", - "size": 240943776 + "checksum": "89652ac1f73ccc3fe039a1d388af81af82608af1cac7a32b5ebc2189b8ae2d62", + "size": 241821856 } } } From 16494e91ee931784ddf9dde4c69b18364a3f2464 Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Wed, 17 Jun 2026 08:18:35 +0200 Subject: [PATCH 55/95] claude-code: 2.1.177 -> 2.1.179 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit b9758476dea7d784135e7f146e344b3b07d272ff) --- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++++------------ 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index 2f0552a443c4..944c08d08e6f 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.177", - "commit": "6fae7a072b111776fc95ca221caac31b7439eb25", - "buildDate": "2026-06-13T00:29:44Z", + "version": "2.1.179", + "commit": "8c865e06ae1320b1c9b005bdeb6f6589ada9d0b3", + "buildDate": "2026-06-16T02:06:40Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "eb0730351be2f02b482b1855870f5877489085aac86b0c4c1db4e458d9e40ed9", - "size": 225124512 + "checksum": "af2a2d0cb99b0e8b094bc5dbe114ed2d5b2d27ba440987ef6f2f209da9954253", + "size": 226082208 }, "darwin-x64": { "binary": "claude", - "checksum": "fcdc6c6679d4e1e3a0a3812f24e8b08ab73156732072c2ca5ee6248bee8313bd", - "size": 227642800 + "checksum": "a0ad60761294bd208eda6cb0fd8e896c64397c8d317546a696c5e627782ec8cb", + "size": 228600496 }, "linux-arm64": { "binary": "claude", - "checksum": "baf3926dc166215772f959e367da9784ff4c75157aaafe4524fdc79ebff984b1", - "size": 250394248 + "checksum": "25d2eba2351df153f872a8e19289f5042a26b430cd446564bd92a0dec5d681cd", + "size": 251311752 }, "linux-x64": { "binary": "claude", - "checksum": "ff41753634b20c869ef6a32a20863521b33d4186ac0d6a49379ab48a48395ee7", - "size": 250480336 + "checksum": "6d8422de5ac8ac2077b20e2a6307083f85609aaf45f8c783ec2f7d71e8781e70", + "size": 251418320 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "bc756f27912d993d632a5f86be9a0364fc3c1373d146a367e46c8d01d3ca1620", - "size": 243248984 + "checksum": "8273ab58b79a6324fa8d56361cd394a4ffa5d30f28be3abecaafb2596d7ae2ee", + "size": 244166488 }, "linux-x64-musl": { "binary": "claude", - "checksum": "4884b1512bf2863a85f1717eee58840b05d558568f817be71b1a116a430f4a96", - "size": 244890672 + "checksum": "891b13f5aa5a798c209b13ce9c556c9a9162b6ad574eea97b223c80e4ee1d9dd", + "size": 245828656 }, "win32-x64": { "binary": "claude.exe", - "checksum": "408ddf27d45fc6b6516843c0513072bc0f474d7bface60ae8bbbc633bef9feb2", - "size": 245856928 + "checksum": "1025f57fb260a3adac9517eb643c78c67e756c1ef5514d9ad8c57d5d784f8be3", + "size": 246756512 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "89652ac1f73ccc3fe039a1d388af81af82608af1cac7a32b5ebc2189b8ae2d62", - "size": 241821856 + "checksum": "0320d4b49e3d434fcf94cf1a73e4d7e95df831a22c2c94d2a0cd471a59a27eac", + "size": 242721440 } } } From 81d270f9573f7f79cc59ebe76a168f83e5090cf8 Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Wed, 17 Jun 2026 08:18:35 +0200 Subject: [PATCH 56/95] vscode-extensions.anthropic.claude-code: 2.1.175 -> 2.1.179 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit f6109ecfc2d927c72355c68923f5563d508e254a) --- .../extensions/anthropic.claude-code/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index 3acd29d4b269..19a1e7a770b7 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-XA4xSd/sg9vhOGqcCNliHzloBxPZsgXW/dSkKp/RzM0="; + hash = "sha256-hjj2PRcpRsC6kWqwhGlBt071rHVq9ZN+OcNsT78IuWc="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-l2NjDHBOMBzJT9Pis7sqSuFuG07eZPALximND+hVqDU="; + hash = "sha256-7lhfn95LI8vg2MvzTuQw57bmhJOXInl+T/e3ZSLNMKA="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-hE/1N28f9uAzg2fG3Hrc4z1kW21rdhtCRmF9SphqiFc="; + hash = "sha256-/aSCQP6yQ30qmgz1ZcgZ91MiLwpxkr77m3NIlidfgnw="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-68CmDax385o0juoQWNX/NLx+tjIt9YytTHjRZkqAR98="; + hash = "sha256-uDVR6Y1GoY8G8OLBoAGY6YMLL2Qj7eHpZ6p0Z0OCN/4="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.175"; + version = "2.1.179"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); From 097270cdf8cf2f32da0a74bd3c9eb879d3a6f962 Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Fri, 19 Jun 2026 08:10:24 +0200 Subject: [PATCH 57/95] claude-code: 2.1.179 -> 2.1.183 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit 9142e64a0d609aaf5a484fb9cd092233a6ee47e1) --- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++++------------ 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index 944c08d08e6f..77b4a7bdd8b2 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.179", - "commit": "8c865e06ae1320b1c9b005bdeb6f6589ada9d0b3", - "buildDate": "2026-06-16T02:06:40Z", + "version": "2.1.183", + "commit": "9d251abdbce0c0a6190d290add83634e0ab481f6", + "buildDate": "2026-06-18T23:12:17Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "af2a2d0cb99b0e8b094bc5dbe114ed2d5b2d27ba440987ef6f2f209da9954253", - "size": 226082208 + "checksum": "6218efccd06194ea0bc381121bf03040a027a04d991eaed886da02a00449ad0f", + "size": 215952608 }, "darwin-x64": { "binary": "claude", - "checksum": "a0ad60761294bd208eda6cb0fd8e896c64397c8d317546a696c5e627782ec8cb", - "size": 228600496 + "checksum": "c70248f96b5831ff86ac169ab53c87ec5480f91ae386783da11004875c2ad1b7", + "size": 223491328 }, "linux-arm64": { "binary": "claude", - "checksum": "25d2eba2351df153f872a8e19289f5042a26b430cd446564bd92a0dec5d681cd", - "size": 251311752 + "checksum": "260a6e43fe9c6fd8800317581982ff50e4f4401d02ef625faa4df723bb9710b3", + "size": 230930144 }, "linux-x64": { "binary": "claude", - "checksum": "6d8422de5ac8ac2077b20e2a6307083f85609aaf45f8c783ec2f7d71e8781e70", - "size": 251418320 + "checksum": "df3b409c5b25299df52c5ee81f64811dbdcb2e18c1beefe7f733c326f0a8cdce", + "size": 233584424 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "8273ab58b79a6324fa8d56361cd394a4ffa5d30f28be3abecaafb2596d7ae2ee", - "size": 244166488 + "checksum": "6f5a9fc9b3abbd4b13495b2bf7e6b81eb735ec4eb48b766474ee1ff44e5b0e6b", + "size": 224309448 }, "linux-x64-musl": { "binary": "claude", - "checksum": "891b13f5aa5a798c209b13ce9c556c9a9162b6ad574eea97b223c80e4ee1d9dd", - "size": 245828656 + "checksum": "45cc1ce016560d368c31ea8cfb9069799160883787dac31f8961d64ebf84ac06", + "size": 228568464 }, "win32-x64": { "binary": "claude.exe", - "checksum": "1025f57fb260a3adac9517eb643c78c67e756c1ef5514d9ad8c57d5d784f8be3", - "size": 246756512 + "checksum": "ba6e71d0e39b33c42a519bd10fc6d79b04d62cedcc918b3991ff863462261eb0", + "size": 225108640 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "0320d4b49e3d434fcf94cf1a73e4d7e95df831a22c2c94d2a0cd471a59a27eac", - "size": 242721440 + "checksum": "0d75484e247f8e30062d143b49f97f317d3347d98d61e1f7285b72e29cd2b8d8", + "size": 219771552 } } } From 3026efc585551e17bf72cbf0fca049c30495a4b1 Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Fri, 19 Jun 2026 08:10:25 +0200 Subject: [PATCH 58/95] vscode-extensions.anthropic.claude-code: 2.1.179 -> 2.1.183 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit ddd01e81c59bf906dda212f4c902b76a612a7ae8) --- .../extensions/anthropic.claude-code/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index 19a1e7a770b7..880963ca6369 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-hjj2PRcpRsC6kWqwhGlBt071rHVq9ZN+OcNsT78IuWc="; + hash = "sha256-lnDAaJwrxgF2mD92pxfVR4JkTtdTHe3h6581/622zGE="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-7lhfn95LI8vg2MvzTuQw57bmhJOXInl+T/e3ZSLNMKA="; + hash = "sha256-BlRdITtnOZWTSbYA27xZNHydVtq1HdT4VeAWcCOzXvs="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-/aSCQP6yQ30qmgz1ZcgZ91MiLwpxkr77m3NIlidfgnw="; + hash = "sha256-1VtY2gdsQN376fu5M9OEinCVgy973Ca6xy8RkT01PTM="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-uDVR6Y1GoY8G8OLBoAGY6YMLL2Qj7eHpZ6p0Z0OCN/4="; + hash = "sha256-q3Y5KatihRELMLin57F+elbQ58sm3y962/wPnyZX/lk="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.179"; + version = "2.1.183"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); From c1620d9bc3d939d90d8cdd880ff6a0c1507963b0 Mon Sep 17 00:00:00 2001 From: Alexis Williams Date: Sun, 21 Jun 2026 14:16:22 -0700 Subject: [PATCH 59/95] claude-code: 2.1.183 -> 2.1.185 Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit 164dc6f1b0f2d061ce9470b308367daff4202261) --- pkgs/by-name/cl/claude-code/manifest.json | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index 77b4a7bdd8b2..6397e5bddff9 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,46 +1,46 @@ { - "version": "2.1.183", - "commit": "9d251abdbce0c0a6190d290add83634e0ab481f6", - "buildDate": "2026-06-18T23:12:17Z", + "version": "2.1.185", + "commit": "9d0bb50cc439a8bbfdbf96567a55bd0e353e9333", + "buildDate": "2026-06-20T06:46:16Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "6218efccd06194ea0bc381121bf03040a027a04d991eaed886da02a00449ad0f", + "checksum": "a280c23b210525218f5bd86f001c9dbc89b9e07410175c5a9355044bfadc0af1", "size": 215952608 }, "darwin-x64": { "binary": "claude", - "checksum": "c70248f96b5831ff86ac169ab53c87ec5480f91ae386783da11004875c2ad1b7", + "checksum": "ade7a13c3027f754b4cdac80bcdd6ba470f7becb27cdcf8b6ba9a70cf9e77af7", "size": 223491328 }, "linux-arm64": { "binary": "claude", - "checksum": "260a6e43fe9c6fd8800317581982ff50e4f4401d02ef625faa4df723bb9710b3", + "checksum": "db880812272504455df73160d92fadf9370eda684c219cebf8e62b0a262cb2f8", "size": 230930144 }, "linux-x64": { "binary": "claude", - "checksum": "df3b409c5b25299df52c5ee81f64811dbdcb2e18c1beefe7f733c326f0a8cdce", + "checksum": "e1246338699f04ee0e627dee3f6d4ed7a0bab48e0514bde69c6dad43bc303952", "size": 233584424 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "6f5a9fc9b3abbd4b13495b2bf7e6b81eb735ec4eb48b766474ee1ff44e5b0e6b", + "checksum": "eada6422a437a112d1928cb9e80203180b58b3d0c0c6aee1edb6f041fda39415", "size": 224309448 }, "linux-x64-musl": { "binary": "claude", - "checksum": "45cc1ce016560d368c31ea8cfb9069799160883787dac31f8961d64ebf84ac06", + "checksum": "5f12eea1e3fd35bfa3f75db0647189bdfe64f45ab0d69e76a427d38ce684dd38", "size": 228568464 }, "win32-x64": { "binary": "claude.exe", - "checksum": "ba6e71d0e39b33c42a519bd10fc6d79b04d62cedcc918b3991ff863462261eb0", + "checksum": "0206cfb94a323d91e0ff51edf63c9e4d9951c8e48dbdee627fefa6f6a0b56643", "size": 225108640 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "0d75484e247f8e30062d143b49f97f317d3347d98d61e1f7285b72e29cd2b8d8", + "checksum": "b42889d60c89cb0a65dd4d047ad4396304f01368693f968d1827c08474eccc59", "size": 219771552 } } From 6b8ac763612b12f568ae235ddb0069e0b79bb05e Mon Sep 17 00:00:00 2001 From: Alexis Williams Date: Sun, 21 Jun 2026 14:16:22 -0700 Subject: [PATCH 60/95] vscode-extensions.anthropic.claude-code: 2.1.183 -> 2.1.185 Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit f1b5f9e364b0e906482c4efef4268b6909099e71) --- .../extensions/anthropic.claude-code/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index 880963ca6369..808b49421289 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-lnDAaJwrxgF2mD92pxfVR4JkTtdTHe3h6581/622zGE="; + hash = "sha256-tCasNLg/Tu3uP69Mve9Kcqam1+JQkA/XyCMPy6aNPJM="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-BlRdITtnOZWTSbYA27xZNHydVtq1HdT4VeAWcCOzXvs="; + hash = "sha256-o+y3Oz/lZd9gEQL3q+ivzkWchQ/dJ5QuU9fJwRpEYrE="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-1VtY2gdsQN376fu5M9OEinCVgy973Ca6xy8RkT01PTM="; + hash = "sha256-vovdNDX0m55a7sazBCixnun89gb/dknzUbeMSU5q8KU="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-q3Y5KatihRELMLin57F+elbQ58sm3y962/wPnyZX/lk="; + hash = "sha256-JbLeoeAzOUVbmpM1CN5QajsK8QT8KjZRUD4UxR6C7bU="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.183"; + version = "2.1.185"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); From 07cd7835077fd0a921cb831c82b080a02b8e97dc Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Tue, 23 Jun 2026 07:47:13 +0200 Subject: [PATCH 61/95] claude-code: 2.1.183 -> 2.1.186 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit 93b15f26473642b9190b7275a1ce5574704a489e) --- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++++------------ 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index 6397e5bddff9..a9a23a745d73 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.185", - "commit": "9d0bb50cc439a8bbfdbf96567a55bd0e353e9333", - "buildDate": "2026-06-20T06:46:16Z", + "version": "2.1.186", + "commit": "6a56aff51d9e9faf62f26f2748501c2e32eec5e8", + "buildDate": "2026-06-22T16:51:01Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "a280c23b210525218f5bd86f001c9dbc89b9e07410175c5a9355044bfadc0af1", - "size": 215952608 + "checksum": "463a79cc34a9787cff1b3361b4ec9e2dff928c18b077f41f0bb412e4cda78637", + "size": 216811232 }, "darwin-x64": { "binary": "claude", - "checksum": "ade7a13c3027f754b4cdac80bcdd6ba470f7becb27cdcf8b6ba9a70cf9e77af7", - "size": 223491328 + "checksum": "9e17e23d451cbbc64cf4b9536c1d25efd86808512617c855091fa608f77c9899", + "size": 224349952 }, "linux-arm64": { "binary": "claude", - "checksum": "db880812272504455df73160d92fadf9370eda684c219cebf8e62b0a262cb2f8", - "size": 230930144 + "checksum": "817e5ff483568b78c49171be317b9b9190cade77248a5776e912789312961cb6", + "size": 231782112 }, "linux-x64": { "binary": "claude", - "checksum": "e1246338699f04ee0e627dee3f6d4ed7a0bab48e0514bde69c6dad43bc303952", - "size": 233584424 + "checksum": "6a6d5d23486597c93138941c9b68caa0fbcd2dcedbf49e29a9c8d83e3a1cb329", + "size": 234436392 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "eada6422a437a112d1928cb9e80203180b58b3d0c0c6aee1edb6f041fda39415", - "size": 224309448 + "checksum": "24906d06ab4cf312eb30a8d656a8d8c7fb22099ea8eb974e38ecfbc25d6631aa", + "size": 225161416 }, "linux-x64-musl": { "binary": "claude", - "checksum": "5f12eea1e3fd35bfa3f75db0647189bdfe64f45ab0d69e76a427d38ce684dd38", - "size": 228568464 + "checksum": "d0cb255cfb03513f6099af40f045b5852a1d8a1b59d0f405d84d2a01da6c9598", + "size": 229420432 }, "win32-x64": { "binary": "claude.exe", - "checksum": "0206cfb94a323d91e0ff51edf63c9e4d9951c8e48dbdee627fefa6f6a0b56643", - "size": 225108640 + "checksum": "6a286f0795d6dd46187b86e9124f819af35319169901cd883b80a75c47469516", + "size": 225908896 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "b42889d60c89cb0a65dd4d047ad4396304f01368693f968d1827c08474eccc59", - "size": 219771552 + "checksum": "245869d5e5242aabfde49b091628aa4b3e7546f2cac52e1d6feb221a820910bc", + "size": 220571808 } } } From abebc07636ac06722e1a2b3efdc67d014e91141f Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Tue, 23 Jun 2026 07:47:13 +0200 Subject: [PATCH 62/95] vscode-extensions.anthropic.claude-code: 2.1.183 -> 2.1.186 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit d80beca38f34059ccf3f481fc3049bf3c0046c12) --- .../extensions/anthropic.claude-code/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index 808b49421289..01037d6d0d17 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-tCasNLg/Tu3uP69Mve9Kcqam1+JQkA/XyCMPy6aNPJM="; + hash = "sha256-TEEv8R6VXuOhcX2OgTKY7A8L2akisJLsx6I6bUdV3a0="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-o+y3Oz/lZd9gEQL3q+ivzkWchQ/dJ5QuU9fJwRpEYrE="; + hash = "sha256-wis4QqTuCiRAVpoGp+Ds83lWPsNUUPmXbZcYiWuY2zg="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-vovdNDX0m55a7sazBCixnun89gb/dknzUbeMSU5q8KU="; + hash = "sha256-2njmUMYxFAaKzCdwM//S5D0fqVZhIKG0JzbT1ye4Sr4="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-JbLeoeAzOUVbmpM1CN5QajsK8QT8KjZRUD4UxR6C7bU="; + hash = "sha256-+cJhcXufpiNrpdL+HH3mW+rrzb7Si/4LGvoce1o0c/w="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.185"; + version = "2.1.186"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); From 8ff7cbcdbad978ee5e4a9a5192d5b548f095bfd6 Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Wed, 24 Jun 2026 07:41:34 +0200 Subject: [PATCH 63/95] claude-code: 2.1.186 -> 2.1.187 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit e7e96e8a3a94108cafa2f2f8d70127435d69dc1f) --- pkgs/by-name/cl/claude-code/manifest.json | 38 +++++++++++------------ 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pkgs/by-name/cl/claude-code/manifest.json b/pkgs/by-name/cl/claude-code/manifest.json index a9a23a745d73..d92c820fce8a 100644 --- a/pkgs/by-name/cl/claude-code/manifest.json +++ b/pkgs/by-name/cl/claude-code/manifest.json @@ -1,47 +1,47 @@ { - "version": "2.1.186", - "commit": "6a56aff51d9e9faf62f26f2748501c2e32eec5e8", - "buildDate": "2026-06-22T16:51:01Z", + "version": "2.1.187", + "commit": "6a53320fad5541a68d79e4b6c53677df77b98e33", + "buildDate": "2026-06-23T17:07:42Z", "platforms": { "darwin-arm64": { "binary": "claude", - "checksum": "463a79cc34a9787cff1b3361b4ec9e2dff928c18b077f41f0bb412e4cda78637", - "size": 216811232 + "checksum": "a59a16ba4922adab7a145728f215d042184d349f5f7e72cddb7fc114250a4ce3", + "size": 215994048 }, "darwin-x64": { "binary": "claude", - "checksum": "9e17e23d451cbbc64cf4b9536c1d25efd86808512617c855091fa608f77c9899", - "size": 224349952 + "checksum": "7f57b6935b4246d03cb7acee90dc22153083483a267da589c5c920dd04744c36", + "size": 224795776 }, "linux-arm64": { "binary": "claude", - "checksum": "817e5ff483568b78c49171be317b9b9190cade77248a5776e912789312961cb6", - "size": 231782112 + "checksum": "b49be8a5e565bf2d45b50d2de62017b25462131acc9425d2fdb98b8f29c9dce2", + "size": 232240864 }, "linux-x64": { "binary": "claude", - "checksum": "6a6d5d23486597c93138941c9b68caa0fbcd2dcedbf49e29a9c8d83e3a1cb329", - "size": 234436392 + "checksum": "bb02fcb33626f8c599d10d8bee38585d4cf8d4225c3b497869dee7454e7bf361", + "size": 234874664 }, "linux-arm64-musl": { "binary": "claude", - "checksum": "24906d06ab4cf312eb30a8d656a8d8c7fb22099ea8eb974e38ecfbc25d6631aa", - "size": 225161416 + "checksum": "972fc2e0bc8104edb593ce7723d4414c0ed8e4df6d90ad26ae48097b1d910478", + "size": 225620168 }, "linux-x64-musl": { "binary": "claude", - "checksum": "d0cb255cfb03513f6099af40f045b5852a1d8a1b59d0f405d84d2a01da6c9598", - "size": 229420432 + "checksum": "c5a783d13aac71d42324f2e9dcd395c266bd5774951faf0d94855c737024bee3", + "size": 229858704 }, "win32-x64": { "binary": "claude.exe", - "checksum": "6a286f0795d6dd46187b86e9124f819af35319169901cd883b80a75c47469516", - "size": 225908896 + "checksum": "24964d08c5100bac6071352e5837101b333de1c1afefd2b8b0e7a60db6c0ef5c", + "size": 226329760 }, "win32-arm64": { "binary": "claude.exe", - "checksum": "245869d5e5242aabfde49b091628aa4b3e7546f2cac52e1d6feb221a820910bc", - "size": 220571808 + "checksum": "04124c0ba09ece85a856de652e84386094c372f002ff767a94d4a43ecf776f96", + "size": 220992160 } } } From 5c56c1afa2d1d5dad89777bce58c1a75fa93e4f6 Mon Sep 17 00:00:00 2001 From: Markus Hauck Date: Wed, 24 Jun 2026 07:41:38 +0200 Subject: [PATCH 64/95] vscode-extensions.anthropic.claude-code: 2.1.186 -> 2.1.187 https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md Assisted-by: Claude Code (Claude Opus 4.8) (cherry picked from commit 2a1fa66d034a8a7f34956e02730c91598abad1f7) --- .../extensions/anthropic.claude-code/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix index 01037d6d0d17..794db4af5815 100644 --- a/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix +++ b/pkgs/applications/editors/vscode/extensions/anthropic.claude-code/default.nix @@ -21,26 +21,26 @@ vscode-utils.buildVscodeMarketplaceExtension (finalAttrs: { sources = { "x86_64-linux" = { arch = "linux-x64"; - hash = "sha256-TEEv8R6VXuOhcX2OgTKY7A8L2akisJLsx6I6bUdV3a0="; + hash = "sha256-/ns84fHAyTY7sSvhUNzq1XQYq2Xy303zs2BxJY8DBVA="; }; "aarch64-linux" = { arch = "linux-arm64"; - hash = "sha256-wis4QqTuCiRAVpoGp+Ds83lWPsNUUPmXbZcYiWuY2zg="; + hash = "sha256-U69X5lpeJaeNVL4WWzCUpI6IfbKSJXGpl30AYnx1fBQ="; }; "x86_64-darwin" = { arch = "darwin-x64"; - hash = "sha256-2njmUMYxFAaKzCdwM//S5D0fqVZhIKG0JzbT1ye4Sr4="; + hash = "sha256-DHE09NtGNOjB0HdBqTKRtDsZXpxb651kiVGhRwO1tBU="; }; "aarch64-darwin" = { arch = "darwin-arm64"; - hash = "sha256-+cJhcXufpiNrpdL+HH3mW+rrzb7Si/4LGvoce1o0c/w="; + hash = "sha256-5YIZVBMsoF0bWP27sVEVHAaAiqvmoSUgdbc8wsqUCLA="; }; }; in { name = "claude-code"; publisher = "anthropic"; - version = "2.1.186"; + version = "2.1.187"; } // sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}"); From 13fa88967f1c42896839ec1f98b457eab19f57cc Mon Sep 17 00:00:00 2001 From: Marc Bornand Date: Wed, 24 Jun 2026 17:06:13 +0000 Subject: [PATCH 65/95] librewolf-unwrapped: 152.0.1-2 -> 152.0.2-1 (cherry picked from commit 44fa15d9b06dec0224656bf23a68a8e6b3a688c8) --- pkgs/by-name/li/librewolf-unwrapped/librewolf.nix | 2 -- pkgs/by-name/li/librewolf-unwrapped/src.json | 10 +++++----- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/li/librewolf-unwrapped/librewolf.nix b/pkgs/by-name/li/librewolf-unwrapped/librewolf.nix index 8db148066c60..1e3bf61a2e63 100644 --- a/pkgs/by-name/li/librewolf-unwrapped/librewolf.nix +++ b/pkgs/by-name/li/librewolf-unwrapped/librewolf.nix @@ -37,8 +37,6 @@ rec { cp ${source}/assets/search-config.json services/settings/dumps/main/search-config.json sed -i '/MOZ_SERVICES_HEALTHREPORT/ s/True/False/' browser/moz.configure - sed -i '/# This must remain last./i gkrust_features += ["glean_disable_upload"]\'$'\n' toolkit/library/rust/gkrust-features.mozbuild - cp ${source}/patches/pref-pane/category-librewolf.svg browser/themes/shared/preferences cp ${source}/patches/pref-pane/librewolf.css browser/themes/shared/preferences cp ${source}/patches/pref-pane/librewolf.inc.xhtml browser/components/preferences diff --git a/pkgs/by-name/li/librewolf-unwrapped/src.json b/pkgs/by-name/li/librewolf-unwrapped/src.json index d032717d2235..7995f6b699ea 100644 --- a/pkgs/by-name/li/librewolf-unwrapped/src.json +++ b/pkgs/by-name/li/librewolf-unwrapped/src.json @@ -1,11 +1,11 @@ { - "packageVersion": "152.0.1-2", + "packageVersion": "152.0.2-1", "source": { - "rev": "152.0.1-2", - "hash": "sha256-qr0eO+ucXguTb2QDhbsI9jjlx9fzfZVAI++87UfXcXE=" + "rev": "152.0.2-1", + "hash": "sha256-CgH0HOtNbdoHMZ/MJL/zPK0Gn+e+qqtZjqPDSq63gX8=" }, "firefox": { - "version": "152.0.1", - "hash": "sha512-myWVFI7ZdwQOorIefW7OcPDlP6yblrMRWxE76nbq1sBCL26UsVQCg7Qw/tXo6aIndxpjV78W9W1TCn+ufcdVOg==" + "version": "152.0.2", + "hash": "sha512-5OVM///P1XUerFgXp7dLDvCqQ/wA7yk5fMnfmqUlcrInK5bmA3OnDXEr5NyEkXDY1cG0SfPql4tKso3uGQVrAw==" } } From 41b423f0611c08c4ed5ebee5992a37ef417a48e3 Mon Sep 17 00:00:00 2001 From: Pierre Roux Date: Wed, 24 Jun 2026 18:05:50 +0200 Subject: [PATCH 66/95] rocqPackages.hierarchy-builder: 1.10.2 -> 1.10.3 (cherry picked from commit 45906568b22ea91b80ac4a74da6fcd2e33560bae) --- pkgs/development/rocq-modules/hierarchy-builder/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/rocq-modules/hierarchy-builder/default.nix b/pkgs/development/rocq-modules/hierarchy-builder/default.nix index 84f8c41c91ca..25e0621aab3e 100644 --- a/pkgs/development/rocq-modules/hierarchy-builder/default.nix +++ b/pkgs/development/rocq-modules/hierarchy-builder/default.nix @@ -17,10 +17,12 @@ let in with lib.versions; lib.switch rocq-core.rocq-version [ + (case (range "9.0" "9.2") "1.10.3") (case (range "9.0" "9.1") "1.10.2") (case (range "9.0" "9.1") "1.10.0") (case (range "9.0" "9.1") "1.9.1") ] null; + release."1.10.3".hash = "sha256-y13KxzLulIu39Ci3aMc1cZG4tw3LL2ab7U9snI6jrXc="; release."1.10.2".sha256 = "sha256-Uzni9qrYQP45Tr+JkHs0BuRARwmWSMwA/iHhIzkolxc="; release."1.10.0".sha256 = "sha256-c52nS8I0tia7Q8lZTFJyHVPVabW9xv55m7w6B7y3+e8="; release."1.9.1".sha256 = "sha256-AiS0ezMyfIYlXnuNsVLz1GlKQZzJX+ilkrKkbo0GrF0="; From b3de928932ff9ba872ef0f3d9a2483fe594203c5 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Thu, 25 Jun 2026 11:00:20 +0200 Subject: [PATCH 67/95] nodejs_26: 26.3.1 -> 26.4.0 (cherry picked from commit d2b1d30e061d4bed4615295b3a226e3807a7f5e4) --- pkgs/development/web/nodejs/v26.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/development/web/nodejs/v26.nix b/pkgs/development/web/nodejs/v26.nix index 500d00eaaef0..3be4bfbc98f9 100644 --- a/pkgs/development/web/nodejs/v26.nix +++ b/pkgs/development/web/nodejs/v26.nix @@ -23,13 +23,16 @@ let [ ]; in buildNodejs { - version = "26.3.1"; - sha256 = "979b9b8308a8d2d4a27c662ed50448c85f970c0fd4f5ce8b98e8da78c441f2bc"; + version = "26.4.0"; + sha256 = "9eceb3621024069d91035b5471d2ebe86aa04d22dbeba72a782eaf36ff9183ac"; patches = ( if (stdenv.hostPlatform.emulatorAvailable buildPackages) then [ - ./configure-emulator.patch + (fetchpatch2 { + url = "https://github.com/nodejs/node/commit/b087e922bde7bfd0cb4b7340bb473ddbbb84ee85.patch?full_index=1"; + hash = "sha256-338rkBx2OAKyaelFj6jePU+shl+KTAl29a8KBItbDqc="; + }) ] else [ From 09f25b2a53b80a12beee9f7d948fe4c0a49a88b6 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 25 Jun 2026 07:44:47 +0000 Subject: [PATCH 68/95] palemoon-bin: 34.3.0.1 -> 34.3.1 (cherry picked from commit 145397a6c50b247e9f6198ec53b440047a6e309c) --- pkgs/by-name/pa/palemoon-bin/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/pa/palemoon-bin/package.nix b/pkgs/by-name/pa/palemoon-bin/package.nix index fbb903774a53..7de709e66c33 100644 --- a/pkgs/by-name/pa/palemoon-bin/package.nix +++ b/pkgs/by-name/pa/palemoon-bin/package.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "palemoon-bin"; - version = "34.3.0.1"; + version = "34.3.1"; src = finalAttrs.passthru.sources."gtk${if withGTK3 then "3" else "2"}"; @@ -171,11 +171,11 @@ stdenv.mkDerivation (finalAttrs: { { gtk3 = fetchzip { urls = urlRegionVariants "gtk3"; - hash = "sha256-U9OwgiQMVOayt5Krlina2s33wS55HuLN255tkVyQxoY="; + hash = "sha256-PFsdDuer6mbxFrcT0rSADcOxunoJIo3Y6O4NG4R8ygY="; }; gtk2 = fetchzip { urls = urlRegionVariants "gtk2"; - hash = "sha256-Yzr2ovHKFFNIem1PXTaajlxVKXB5frZQ/kfOL+jsmtE="; + hash = "sha256-C48vM0LI6rPSS0wFVnPRlppT4I5EFnWzBFg/Rxw++Bw="; }; }; From 1a14fbacadbafd238e790a27aed2aa5a72dcc0d2 Mon Sep 17 00:00:00 2001 From: XlNTARO Date: Thu, 25 Jun 2026 10:36:43 +0300 Subject: [PATCH 69/95] makemkv: 1.18.3 -> 1.18.4 (cherry picked from commit 2f707eb5586b6bd598e00671a906ef975ededaa7) --- pkgs/by-name/ma/makemkv/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ma/makemkv/package.nix b/pkgs/by-name/ma/makemkv/package.nix index 6d4ffd64d016..b424ee120797 100644 --- a/pkgs/by-name/ma/makemkv/package.nix +++ b/pkgs/by-name/ma/makemkv/package.nix @@ -27,19 +27,19 @@ stdenv.mkDerivation ( "http://www.makemkv.com/download/makemkv-bin-${version}.tar.gz" "http://www.makemkv.com/download/old/makemkv-bin-${version}.tar.gz" ]; - hash = "sha256-we5yCukbJ2p8ib6GEUbFuTRjGDHo1sj0U0BkNXJOkr0="; + hash = "sha256-zuVt4LqlUxq+0WvYYnQtMI13K0q02uFu6GW/dPBKFgg="; }; srcs.oss = fetchurl { urls = [ "http://www.makemkv.com/download/makemkv-oss-${version}.tar.gz" "http://www.makemkv.com/download/old/makemkv-oss-${version}.tar.gz" ]; - hash = "sha256-vIuwhK46q81QPVu5PvwnPgRuT9RmPTmpg2zgwEf+6CM="; + hash = "sha256-hZAGNkjULsKpWLdFc9cCLw9MM05OT+fdU7cMbnSLpFM="; }; in { pname = "makemkv"; - version = "1.18.3"; + version = "1.18.4"; srcs = lib.attrValues finalAttrs.passthru.srcs; sourceRoot = "makemkv-oss-${version}"; From 309f2fbd824f38e5a02dc266358f8cbf92bcae57 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 25 Jun 2026 00:47:30 +0000 Subject: [PATCH 70/95] cargo-tarpaulin: 0.35.4 -> 0.35.5 (cherry picked from commit a7b4a5492cd28ea6dcc24a9df697036d3eb4fbdc) --- pkgs/by-name/ca/cargo-tarpaulin/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ca/cargo-tarpaulin/package.nix b/pkgs/by-name/ca/cargo-tarpaulin/package.nix index 3945643395b6..388845f21469 100644 --- a/pkgs/by-name/ca/cargo-tarpaulin/package.nix +++ b/pkgs/by-name/ca/cargo-tarpaulin/package.nix @@ -12,16 +12,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "cargo-tarpaulin"; - version = "0.35.4"; + version = "0.35.5"; src = fetchFromGitHub { owner = "xd009642"; repo = "tarpaulin"; tag = finalAttrs.version; - hash = "sha256-fm9q3VTZh5QKXXw4+t4xngz5gyiZqKpUHShpz0nf2Is="; + hash = "sha256-m822/s9HBKIxAfzgQEBOZeHcHU57MPGOumqlTc55Ro8="; }; - cargoHash = "sha256-4og97E5zdRIO7swsfgh87MdWh4E4onMIcrCb1/KCJEc="; + cargoHash = "sha256-Qo06iUy/1ElEe/gkH23JZLw7AKPkBPw6aLXnvx9Hv4g="; nativeBuildInputs = [ pkg-config From 92939309b115c93100902222361dcec5d435c5f4 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 25 Jun 2026 00:45:40 +0000 Subject: [PATCH 71/95] cargo-zigbuild: 0.22.3 -> 0.23.0 (cherry picked from commit 48a8ded7480c0f3459bc7ee7759434c4b1fdda4c) --- pkgs/by-name/ca/cargo-zigbuild/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ca/cargo-zigbuild/package.nix b/pkgs/by-name/ca/cargo-zigbuild/package.nix index 115ef44c1b23..e8327d1ba95f 100644 --- a/pkgs/by-name/ca/cargo-zigbuild/package.nix +++ b/pkgs/by-name/ca/cargo-zigbuild/package.nix @@ -10,16 +10,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "cargo-zigbuild"; - version = "0.22.3"; + version = "0.23.0"; src = fetchFromGitHub { owner = "rust-cross"; repo = "cargo-zigbuild"; tag = "v${finalAttrs.version}"; - hash = "sha256-f9jmt3UXniXVeX2NyuRx30DrpRtczLO7ZioNi4TI3Zk="; + hash = "sha256-Y73aPGsrSAZVxNJ1r1lS9uXmfpAwthq6NW4urKS8ab0="; }; - cargoHash = "sha256-7ZQpAePAIqSNiKM8bTAhyx4QyDQda1J8TSnZX0W2tfY="; + cargoHash = "sha256-dt2s18B9RVwEBlun5cegoqfW1KYXFqjdScdc/Q2aDlI="; nativeBuildInputs = [ makeWrapper ]; From 2e1d87b279e1cec79b8fa8b1de1ff94cabe6fb29 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 25 Jun 2026 09:58:10 +0000 Subject: [PATCH 72/95] tmc-cli: 1.1.2 -> 1.1.3 (cherry picked from commit af32b5d6aa89e1c116eb1786f1f874f34e94a392) --- pkgs/by-name/tm/tmc-cli/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/tm/tmc-cli/package.nix b/pkgs/by-name/tm/tmc-cli/package.nix index 84913922d3d4..83959df50b34 100644 --- a/pkgs/by-name/tm/tmc-cli/package.nix +++ b/pkgs/by-name/tm/tmc-cli/package.nix @@ -9,16 +9,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "tmc-cli"; - version = "1.1.2"; + version = "1.1.3"; src = fetchFromGitHub { owner = "rage"; repo = "tmc-cli-rust"; tag = "v${finalAttrs.version}"; - hash = "sha256-C7X+XTOqquqf/W29+A4wUUl6aDZYLlc5XokkIOrCbp0="; + hash = "sha256-P6jlj9HWZ09vAw7EVT8po49eWGkGv/ppvKwnq06t2A0="; }; - cargoHash = "sha256-2KoHKTN1Jvyvk9ravi0a9D+RIFYa1KmHLJQzKT2iP9A="; + cargoHash = "sha256-YUIEKr1nQij4f/4kOeJq6AgqeQq+U3bOBTJaJM2Bs2Y="; nativeCheckInputs = [ writableTmpDirAsHomeHook From ee0e84e3853485d05220a22896463200d7f340c3 Mon Sep 17 00:00:00 2001 From: provokateurin Date: Wed, 24 Jun 2026 17:23:00 +0200 Subject: [PATCH 73/95] nextcloudPackages: update (cherry picked from commit 3f6b9fde5ebe2235521ad56743674bb68d0880a8) --- pkgs/servers/nextcloud/packages/32.json | 42 ++++++++++----------- pkgs/servers/nextcloud/packages/33.json | 50 ++++++++++++------------- 2 files changed, 46 insertions(+), 46 deletions(-) diff --git a/pkgs/servers/nextcloud/packages/32.json b/pkgs/servers/nextcloud/packages/32.json index 359ec5d6ec96..2ac439f8d728 100644 --- a/pkgs/servers/nextcloud/packages/32.json +++ b/pkgs/servers/nextcloud/packages/32.json @@ -1,8 +1,8 @@ { "bookmarks": { - "hash": "sha256-wf3t7qwxFAJBnPP3PYfa3Q/LrUaoONY47/So2w2fDww=", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v16.2.1/bookmarks-16.2.1.tar.gz", - "version": "16.2.1", + "hash": "sha256-8F+sNG/+M8Ed/q5dcxW95KS5ZBNsEeZNR0P2OIe/HqQ=", + "url": "https://github.com/nextcloud/bookmarks/releases/download/v16.2.2/bookmarks-16.2.2.tar.gz", + "version": "16.2.2", "description": "- 📂 Sort bookmarks into folders\n- 🏷 Add tags and personal notes\n- ☠ Find broken links and duplicates\n- 📲 Synchronize with all your browsers and devices\n- 📔 Store archived versions of your links in case they are depublished\n- 🔍 Full-text search on site contents\n- 👪 Share bookmarks with other users, groups and teams or via public links\n- ⚛ Generate RSS feeds of your collections\n- 📈 Stats on how often you access which links\n- 🔒 Automatic backups of your bookmarks collection\n- 💼 Built-in Dashboard widgets for frequent and recent links\n\nRequirements:\n - PHP extensions:\n - intl: *\n - mbstring: *\n - when using MySQL, use at least v8.0", "homepage": "https://github.com/nextcloud/bookmarks", "licenses": [ @@ -30,9 +30,9 @@ ] }, "collectives": { - "hash": "sha256-ul8DRAOna5gCS9v0HhqFGdh/fFv6weG5x8ZMZjTLjhM=", - "url": "https://github.com/nextcloud/collectives/releases/download/v4.4.1/collectives-4.4.1.tar.gz", - "version": "4.4.1", + "hash": "sha256-/MGwV78AAzsoAvI11JeodQsbiMZs1J58NzsGrEIv5EA=", + "url": "https://github.com/nextcloud/collectives/releases/download/v4.4.2/collectives-4.4.2.tar.gz", + "version": "4.4.2", "description": "Your space to collaboratively write and organize. Collectives is designed for groups and communities\nto structure shared knowledge and cultivate trust.\n\n* **👥 Non-hierarchical at its core**: Each collective is backed by a\n [Nextcloud Team](https://docs.nextcloud.com/server/latest/user_manual/en/groupware/contacts.html#teams) - its\n content is owned by the group, not a single user.\n* **📝 Collaborative page editing** thanks to the [Text app](https://github.com/nextcloud/text).\n* **🔤 Well-known [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax** for page formatting.\n* **🔎 Full-text search** to find content straight away.", "homepage": "https://collectives.cloud/", "licenses": [ @@ -80,9 +80,9 @@ ] }, "deck": { - "hash": "sha256-t/9nWA3e2WBkMjevWMpzmhjBY8OaQS4nwryto4WJwtw=", - "url": "https://github.com/nextcloud-releases/deck/releases/download/v1.16.6/deck-v1.16.6.tar.gz", - "version": "1.16.6", + "hash": "sha256-InDmm6aj8y8qfZ7i765XJIh4q0vsTlVtxA6n0E6rll0=", + "url": "https://github.com/nextcloud-releases/deck/releases/download/v1.16.7/deck-v1.16.7.tar.gz", + "version": "1.16.7", "description": "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized", "homepage": "https://github.com/nextcloud/deck", "licenses": [ @@ -140,9 +140,9 @@ ] }, "gpoddersync": { - "hash": "sha256-9BcXVauZWFlmlXtnwdSo5xISbhhssa7ao5ulKpziOnU=", - "url": "https://github.com/thrillfall/nextcloud-gpodder/releases/download/3.16.0/gpoddersync.tar.gz", - "version": "3.16.0", + "hash": "sha256-V4iJr1p5uqxdrvE50bjyNTiHdsZATewaBXKQ8Ma0dHg=", + "url": "https://github.com/thrillfall/nextcloud-gpodder/releases/download/3.17.0/gpoddersync.tar.gz", + "version": "3.17.0", "description": "Expose GPodder API to sync podcast consumer apps like AntennaPod", "homepage": "https://github.com/thrillfall/nextcloud-gpodder", "licenses": [ @@ -210,9 +210,9 @@ ] }, "mail": { - "hash": "sha256-K6sJ3XJOq9MoO0lGgqn3iBYuDqqhOMeHWD1DLVY5HaU=", - "url": "https://github.com/nextcloud-releases/mail/releases/download/v5.10.1/mail-v5.10.1.tar.gz", - "version": "5.10.1", + "hash": "sha256-GkLTk3Q1mSUGhU6lsNHmHGkwW6u4XoDCOj405vi8xuY=", + "url": "https://github.com/nextcloud-releases/mail/releases/download/v5.10.3/mail-v5.10.3.tar.gz", + "version": "5.10.3", "description": "**💌 A mail app for Nextcloud**\n\n- **🚀 Integration with other Nextcloud apps!** Currently Contacts, Calendar & Files – more to come.\n- **📥 Multiple mail accounts!** Personal and company account? No problem, and a nice unified inbox. Connect any IMAP account.\n- **🔒 Send & receive encrypted mails!** Using the great [Mailvelope](https://mailvelope.com) browser extension.\n- **🙈 We’re not reinventing the wheel!** Based on the great [Horde](https://www.horde.org) libraries.\n- **📬 Want to host your own mail server?** We do not have to reimplement this as you could set up [Mail-in-a-Box](https://mailinabox.email)!\n\n## Ethical AI Rating\n\n### Priority Inbox\n\nPositive:\n* The software for training and inferencing of this model is open source.\n* The model is created and trained on-premises based on the user's own data.\n* The training data is accessible to the user, making it possible to check or correct for bias or optimise the performance and CO2 usage.\n\n### Thread Summaries (opt-in)\n\n**Rating:** 🟢/🟡/🟠/🔴\n\nThe rating depends on the installed text processing backend. See [the rating overview](https://docs.nextcloud.com/server/latest/admin_manual/ai/index.html) for details.\n\nLearn more about the Nextcloud Ethical AI Rating [in our blog](https://nextcloud.com/blog/nextcloud-ethical-ai-rating/).", "homepage": "https://github.com/nextcloud/mail#readme", "licenses": [ @@ -290,9 +290,9 @@ ] }, "onlyoffice": { - "hash": "sha256-+phzZA410n9QQsba26OUf7XR+x24XMnmHamhqsqlcVo=", - "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v9.14.0/onlyoffice.tar.gz", - "version": "9.14.0", + "hash": "sha256-sMgBVVAv6n6TlrvcndzRLc1xPJ6eA4hYBqDpiDabW1k=", + "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v9.14.2/onlyoffice.tar.gz", + "version": "9.14.2", "description": "The ONLYOFFICE app for Nextcloud brings powerful document editing and collaboration tools directly to your Nextcloud environment. With this integration, you can seamlessly create, edit, and co-author text documents, spreadsheets, presentations, and PDFs, as well as build and fill out PDF forms.\n\nCollaborate with your team in real time, make use of Track Changes, version history, comments, integrated chat, and more. Work together on files with federated cloud sharing. Flexible access permissions allow you to control who can view, edit, or comment, ensuring secure role-based collaboration tailored to your needs. Documents can also be protected with watermarks, password settings, and encryption for added security.\n\nThe app offers support for over 50 file formats, including DOCX, XLSX, PPTX, PDF, RTF, TXT, CSV, ODT, ODS, ODP, EPUB, FB2, HTML, HWP, HWPX, Pages, Numbers, Keynote, etc. Seamless desktop and mobile app integration means you'll have access to your Nextcloud files wherever you go.\n\nFurthermore, you can seamlessly connect any AI assistant, including local ones, directly to the editors to work faster and more efficient. This allows you to leverage various AI models for tasks like chatbot interactions, translations, OCR, and more.\n\nWhether you’re working with internal teams or external collaborators, the ONLYOFFICE app for Nextcloud enhances productivity, simplifies workflows, and ensures your files remain secure.", "homepage": "https://www.onlyoffice.com", "licenses": [ @@ -410,9 +410,9 @@ ] }, "tasks": { - "hash": "sha256-I5QdNavgv74FSuXwFWNz/++LOY9Z8kNZhEKf2k118L8=", - "url": "https://github.com/nextcloud/tasks/releases/download/v0.17.1/tasks.tar.gz", - "version": "0.17.1", + "hash": "sha256-nJFU65dthPRWd/SClKM/suZdYU3ic3QsIcXiPzUkQ6c=", + "url": "https://github.com/nextcloud/tasks/releases/download/v0.18.0/tasks.tar.gz", + "version": "0.18.0", "description": "Once enabled, a new Tasks menu will appear in your Nextcloud apps menu. From there you can add and delete tasks, edit their title, description, start and due dates and mark them as important. Tasks can be shared between users. Tasks can be synchronized using CalDav (each task list is linked to an Nextcloud calendar, to sync it to your local client: Thunderbird, Evolution, KDE Kontact, iCal … - just add the calendar as a remote calendar in your client). You can download your tasks as ICS files using the download button for each calendar.", "homepage": "https://github.com/nextcloud/tasks/", "licenses": [ diff --git a/pkgs/servers/nextcloud/packages/33.json b/pkgs/servers/nextcloud/packages/33.json index 9e0de83486d2..f8118f92fa10 100644 --- a/pkgs/servers/nextcloud/packages/33.json +++ b/pkgs/servers/nextcloud/packages/33.json @@ -1,8 +1,8 @@ { "bookmarks": { - "hash": "sha256-wf3t7qwxFAJBnPP3PYfa3Q/LrUaoONY47/So2w2fDww=", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v16.2.1/bookmarks-16.2.1.tar.gz", - "version": "16.2.1", + "hash": "sha256-8F+sNG/+M8Ed/q5dcxW95KS5ZBNsEeZNR0P2OIe/HqQ=", + "url": "https://github.com/nextcloud/bookmarks/releases/download/v16.2.2/bookmarks-16.2.2.tar.gz", + "version": "16.2.2", "description": "- 📂 Sort bookmarks into folders\n- 🏷 Add tags and personal notes\n- ☠ Find broken links and duplicates\n- 📲 Synchronize with all your browsers and devices\n- 📔 Store archived versions of your links in case they are depublished\n- 🔍 Full-text search on site contents\n- 👪 Share bookmarks with other users, groups and teams or via public links\n- ⚛ Generate RSS feeds of your collections\n- 📈 Stats on how often you access which links\n- 🔒 Automatic backups of your bookmarks collection\n- 💼 Built-in Dashboard widgets for frequent and recent links\n\nRequirements:\n - PHP extensions:\n - intl: *\n - mbstring: *\n - when using MySQL, use at least v8.0", "homepage": "https://github.com/nextcloud/bookmarks", "licenses": [ @@ -30,9 +30,9 @@ ] }, "collectives": { - "hash": "sha256-ul8DRAOna5gCS9v0HhqFGdh/fFv6weG5x8ZMZjTLjhM=", - "url": "https://github.com/nextcloud/collectives/releases/download/v4.4.1/collectives-4.4.1.tar.gz", - "version": "4.4.1", + "hash": "sha256-/MGwV78AAzsoAvI11JeodQsbiMZs1J58NzsGrEIv5EA=", + "url": "https://github.com/nextcloud/collectives/releases/download/v4.4.2/collectives-4.4.2.tar.gz", + "version": "4.4.2", "description": "Your space to collaboratively write and organize. Collectives is designed for groups and communities\nto structure shared knowledge and cultivate trust.\n\n* **👥 Non-hierarchical at its core**: Each collective is backed by a\n [Nextcloud Team](https://docs.nextcloud.com/server/latest/user_manual/en/groupware/contacts.html#teams) - its\n content is owned by the group, not a single user.\n* **📝 Collaborative page editing** thanks to the [Text app](https://github.com/nextcloud/text).\n* **🔤 Well-known [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax** for page formatting.\n* **🔎 Full-text search** to find content straight away.", "homepage": "https://collectives.cloud/", "licenses": [ @@ -80,9 +80,9 @@ ] }, "deck": { - "hash": "sha256-n0q700fSmqZ9tvsfSquXwh4ujtiBsW3wUaLnohu1MFg=", - "url": "https://github.com/nextcloud-releases/deck/releases/download/v1.17.3/deck-v1.17.3.tar.gz", - "version": "1.17.3", + "hash": "sha256-DVSFbea5d0CL3bdpO8iOBYXKHSbXCQ8oLHi5YkPbCI4=", + "url": "https://github.com/nextcloud-releases/deck/releases/download/v1.17.4/deck-v1.17.4.tar.gz", + "version": "1.17.4", "description": "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized", "homepage": "https://github.com/nextcloud/deck", "licenses": [ @@ -90,13 +90,13 @@ ] }, "end_to_end_encryption": { - "hash": "sha256-+krBgynHh8sz6HZrpHsrRQRc/NedD6fW5jEwPrz8Vas=", - "url": "https://github.com/nextcloud-releases/end_to_end_encryption/releases/download/v2.1.1/end_to_end_encryption-v2.1.1.tar.gz", - "version": "2.1.1", + "hash": "sha256-Z6MyXz//LNVy7Mt+yFbHIY5zGEMfsdwnAEDFsIcrs1M=", + "url": "https://github.com/nextcloud-releases/end_to_end_encryption/releases/download/v2.2.0/end_to_end_encryption-v2.2.0.tar.gz", + "version": "2.2.0", "description": "## **End-to-End Encryption**\n\n### For End Users\n\n**Protect your most sensitive files with strong encryption.**\n\nThe End-to-End Encryption app gives you complete control over your data privacy.\nWith this app, you can encrypt specific folders so that only you (and those you trust) can access their contents.\nYour files are encrypted on your device before they reach the server, ensuring that no one—not even the server administrator—can read them.\n\n**Benefits:**\n- 🔒 **True privacy**: Files are encrypted on your device and can only be decrypted by you\n- 📱 **Works across all platforms**: Fully supported on desktop, Android, iOS clients, and as you wish even in the browser\n- 🎯 **Selective encryption**: Choose which folders to encrypt\n- 🛡️ **Secure sharing**: Share encrypted files with other users or even secure public upload using the encrypted file drop\n\n---\n\n### For Administrators\n\n**Enterprise-ready end-to-end encryption infrastructure for your Nextcloud instance.**\n\nThis app provides all the necessary server-side APIs and infrastructure to enable End-to-End encryption (E2EE) for your users.\nIt ensures that encrypted data remains secure throughout its lifecycle on your server.\n\n**Technical highlights:**\n- 🔐 **Complete API suite**: Provides all client-side APIs needed for E2EE implementation\n- 🔒 **Secure FileDrop integration**: Enables secure file sharing with encryption\n- 🛡️ **Zero-knowledge architecture**: Server never has access to encryption keys\n- ⚙️ **Group restrictions**: Limit app usage to specific user groups if needed\n- 🔄 **Background job management**: Automatic rollback handling for failed operations\n\n### Setup\nThis application provides the server-side infrastructure for end-to-end encryption, but it requires client support to function.\nTo enable end-to-end encryption, users will need to install the corresponding client-side app on their devices (desktop, Android, iOS) or use the web client.\n\nUsing the web interface, after enabling it in the personal settings, allows you to encrypt files and folders directly in the browser,\nproviding a seamless experience without needing additional software. But also requires some kind of trust in the server as the code is delivered by the server and could be manipulated.\n\nOnce enable through clients or the web interface, you can create encrypted folders and upload or move files into them.\nThe clients and the web interface will handle the encryption and decryption processes automatically.\n\n⚠️ This comes with some limitations and caveats, as only normal file operations can be handled.\nMeaning that some apps in the web interface do not work with encrypted files.", "homepage": "https://github.com/nextcloud/end_to_end_encryption", "licenses": [ - "agpl" + "AGPL-3.0-or-later" ] }, "files_automatedtagging": { @@ -140,9 +140,9 @@ ] }, "gpoddersync": { - "hash": "sha256-9BcXVauZWFlmlXtnwdSo5xISbhhssa7ao5ulKpziOnU=", - "url": "https://github.com/thrillfall/nextcloud-gpodder/releases/download/3.16.0/gpoddersync.tar.gz", - "version": "3.16.0", + "hash": "sha256-V4iJr1p5uqxdrvE50bjyNTiHdsZATewaBXKQ8Ma0dHg=", + "url": "https://github.com/thrillfall/nextcloud-gpodder/releases/download/3.17.0/gpoddersync.tar.gz", + "version": "3.17.0", "description": "Expose GPodder API to sync podcast consumer apps like AntennaPod", "homepage": "https://github.com/thrillfall/nextcloud-gpodder", "licenses": [ @@ -210,9 +210,9 @@ ] }, "mail": { - "hash": "sha256-K6sJ3XJOq9MoO0lGgqn3iBYuDqqhOMeHWD1DLVY5HaU=", - "url": "https://github.com/nextcloud-releases/mail/releases/download/v5.10.1/mail-v5.10.1.tar.gz", - "version": "5.10.1", + "hash": "sha256-GkLTk3Q1mSUGhU6lsNHmHGkwW6u4XoDCOj405vi8xuY=", + "url": "https://github.com/nextcloud-releases/mail/releases/download/v5.10.3/mail-v5.10.3.tar.gz", + "version": "5.10.3", "description": "**💌 A mail app for Nextcloud**\n\n- **🚀 Integration with other Nextcloud apps!** Currently Contacts, Calendar & Files – more to come.\n- **📥 Multiple mail accounts!** Personal and company account? No problem, and a nice unified inbox. Connect any IMAP account.\n- **🔒 Send & receive encrypted mails!** Using the great [Mailvelope](https://mailvelope.com) browser extension.\n- **🙈 We’re not reinventing the wheel!** Based on the great [Horde](https://www.horde.org) libraries.\n- **📬 Want to host your own mail server?** We do not have to reimplement this as you could set up [Mail-in-a-Box](https://mailinabox.email)!\n\n## Ethical AI Rating\n\n### Priority Inbox\n\nPositive:\n* The software for training and inferencing of this model is open source.\n* The model is created and trained on-premises based on the user's own data.\n* The training data is accessible to the user, making it possible to check or correct for bias or optimise the performance and CO2 usage.\n\n### Thread Summaries (opt-in)\n\n**Rating:** 🟢/🟡/🟠/🔴\n\nThe rating depends on the installed text processing backend. See [the rating overview](https://docs.nextcloud.com/server/latest/admin_manual/ai/index.html) for details.\n\nLearn more about the Nextcloud Ethical AI Rating [in our blog](https://nextcloud.com/blog/nextcloud-ethical-ai-rating/).", "homepage": "https://github.com/nextcloud/mail#readme", "licenses": [ @@ -290,9 +290,9 @@ ] }, "onlyoffice": { - "hash": "sha256-ktKopFpHmtRulOQN3XO5BW5QyhURhOv+G77dSn6Nv08=", - "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v10.1.0/onlyoffice.tar.gz", - "version": "10.1.0", + "hash": "sha256-QaohaMbw7bncBqreb5W8XngzqqwqALnsGgT494xfr/E=", + "url": "https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v10.1.2/onlyoffice.tar.gz", + "version": "10.1.2", "description": "The ONLYOFFICE app for Nextcloud brings powerful document editing and collaboration tools directly to your Nextcloud environment. With this integration, you can seamlessly create, edit, and co-author text documents, spreadsheets, presentations, and PDFs, as well as build and fill out PDF forms.\n\nCollaborate with your team in real time, make use of Track Changes, version history, comments, integrated chat, and more. Work together on files with federated cloud sharing. Flexible access permissions allow you to control who can view, edit, or comment, ensuring secure role-based collaboration tailored to your needs. Documents can also be protected with watermarks, password settings, and encryption for added security.\n\nThe app offers support for over 50 file formats, including DOCX, XLSX, PPTX, PDF, RTF, TXT, CSV, ODT, ODS, ODP, EPUB, FB2, HTML, HWP, HWPX, Pages, Numbers, Keynote, etc. Seamless desktop and mobile app integration means you'll have access to your Nextcloud files wherever you go.\n\nFurthermore, you can seamlessly connect any AI assistant, including local ones, directly to the editors to work faster and more efficient. This allows you to leverage various AI models for tasks like chatbot interactions, translations, OCR, and more.\n\nWhether you’re working with internal teams or external collaborators, the ONLYOFFICE app for Nextcloud enhances productivity, simplifies workflows, and ensures your files remain secure.", "homepage": "https://www.onlyoffice.com", "licenses": [ @@ -410,9 +410,9 @@ ] }, "tasks": { - "hash": "sha256-I5QdNavgv74FSuXwFWNz/++LOY9Z8kNZhEKf2k118L8=", - "url": "https://github.com/nextcloud/tasks/releases/download/v0.17.1/tasks.tar.gz", - "version": "0.17.1", + "hash": "sha256-nJFU65dthPRWd/SClKM/suZdYU3ic3QsIcXiPzUkQ6c=", + "url": "https://github.com/nextcloud/tasks/releases/download/v0.18.0/tasks.tar.gz", + "version": "0.18.0", "description": "Once enabled, a new Tasks menu will appear in your Nextcloud apps menu. From there you can add and delete tasks, edit their title, description, start and due dates and mark them as important. Tasks can be shared between users. Tasks can be synchronized using CalDav (each task list is linked to an Nextcloud calendar, to sync it to your local client: Thunderbird, Evolution, KDE Kontact, iCal … - just add the calendar as a remote calendar in your client). You can download your tasks as ICS files using the download button for each calendar.", "homepage": "https://github.com/nextcloud/tasks/", "licenses": [ From 8db1da774a506f992d6eb7fbf969baed50f4e309 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sun, 21 Jun 2026 22:57:50 +0300 Subject: [PATCH 74/95] nixos/zigbee2mqtt: add RestartSec After a cold reboot, zigbee2mqtt didn't properly come up. The logs showed it crashed too often too quickly, and then systemd stopped trying to restart it due to rate-limiting. It might be due to the network not being up yet, or the Zigbee coordinator still booting. Either way, with a RestartSec=10, it did come up. (cherry picked from commit 39e3856dd8b49a25d04f210c5cf69da89d0fdc79) --- nixos/modules/services/home-automation/zigbee2mqtt.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/modules/services/home-automation/zigbee2mqtt.nix b/nixos/modules/services/home-automation/zigbee2mqtt.nix index 5ec4d037073d..5fe8b3a68db7 100644 --- a/nixos/modules/services/home-automation/zigbee2mqtt.nix +++ b/nixos/modules/services/home-automation/zigbee2mqtt.nix @@ -84,6 +84,7 @@ in StateDirectory = "zigbee2mqtt"; StateDirectoryMode = "0700"; Restart = "on-failure"; + RestartSec = 10; # Hardening CapabilityBoundingSet = ""; From 023d63fc7319883937728c32bb4ecd7014ded12d Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Thu, 25 Jun 2026 15:59:38 +0200 Subject: [PATCH 75/95] nextcloud32: 32.0.11 -> 32.0.12 ChangeLog: https://github.com/nextcloud/server/releases/tag/v32.0.12 (cherry picked from commit dd9d37cbdce538698a71411804ff439f0b999a7f) --- pkgs/servers/nextcloud/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix index 34a708f9ef84..115a8b9ea266 100644 --- a/pkgs/servers/nextcloud/default.nix +++ b/pkgs/servers/nextcloud/default.nix @@ -53,8 +53,8 @@ let in { nextcloud32 = generic { - version = "32.0.11"; - hash = "sha256-vvIY5Yeczhy/0Q0gfVG1iiYPGQ1U/VcZkx7coMWdRiQ="; + version = "32.0.12"; + hash = "sha256-rxWPclccjhXim8E2wjqSEYjOHVZoVQAK2U+JuAqPGAw="; packages = nextcloud32Packages; }; From cb10a073bf791f2f1efc6317b3f09a823e76fb0e Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Thu, 25 Jun 2026 16:00:04 +0200 Subject: [PATCH 76/95] nextcloud33: 33.0.5 -> 33.0.6 ChangeLog: https://github.com/nextcloud/server/releases/tag/v33.0.6 (cherry picked from commit bfe759a7596b93a5fde94a197dcf190b08c49334) --- pkgs/servers/nextcloud/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix index 115a8b9ea266..392485f78891 100644 --- a/pkgs/servers/nextcloud/default.nix +++ b/pkgs/servers/nextcloud/default.nix @@ -59,8 +59,8 @@ in }; nextcloud33 = generic { - version = "33.0.5"; - hash = "sha256-7Ua5HY2k4fAjTQGIslvulEj6LzAYh+WygBPmtUfW3Mo="; + version = "33.0.6"; + hash = "sha256-eRghpVAplE3gQxnPyvysSujn71a0zR78JjG/MLedFt4="; packages = nextcloud33Packages; }; From 18b44fd7d24bae2b92c91b8fc6b7b07dce27fa41 Mon Sep 17 00:00:00 2001 From: K900 Date: Mon, 22 Jun 2026 15:43:59 +0300 Subject: [PATCH 77/95] pnpmConfigHook: allow opt-out This is sometimes useful when mixing ecosystems, e.g. in buildGoModule. (cherry picked from commit 8f26ec5602d481a1137ae683165af637bfff2124) --- doc/languages-frameworks/javascript.section.md | 2 ++ pkgs/build-support/node/fetch-pnpm-deps/pnpm-config-hook.sh | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/doc/languages-frameworks/javascript.section.md b/doc/languages-frameworks/javascript.section.md index 4e031f7f5f34..0ecb59dd3bb6 100644 --- a/doc/languages-frameworks/javascript.section.md +++ b/doc/languages-frameworks/javascript.section.md @@ -406,6 +406,8 @@ In case you are patching `package.json` or `pnpm-lock.yaml`, make sure to pass ` } ``` +If needed, `dontPnpmConfigure = true;` can be used to fully disable `pnpmConfigHook` without manually removing it from inputs. + #### Dealing with `sourceRoot` {#javascript-pnpm-sourceRoot} If the pnpm project is in a subdirectory, you can just define `sourceRoot` or `setSourceRoot` for `fetchPnpmDeps`. diff --git a/pkgs/build-support/node/fetch-pnpm-deps/pnpm-config-hook.sh b/pkgs/build-support/node/fetch-pnpm-deps/pnpm-config-hook.sh index dc732c3822f8..52e5a3dbbd53 100644 --- a/pkgs/build-support/node/fetch-pnpm-deps/pnpm-config-hook.sh +++ b/pkgs/build-support/node/fetch-pnpm-deps/pnpm-config-hook.sh @@ -126,4 +126,6 @@ pnpmConfigHook() { echo "Finished pnpmConfigHook" } -postConfigureHooks+=(pnpmConfigHook) +if [ -z "${dontPnpmConfigure-}" ]; then + postConfigureHooks+=(pnpmConfigHook) +fi From 4606549b65475c8f85b21bd94f2e25fe2a15e1e6 Mon Sep 17 00:00:00 2001 From: Paul Grandperrin Date: Thu, 25 Jun 2026 17:24:49 +0200 Subject: [PATCH 78/95] linux: forward features into passthru build.nix accepted `features` as a parameter but discarded it, never placing it into the derivation's passthru. The NixOS boot.kernelPackages apply function calls kernel.override() on every evaluation, re-running build.nix from scratch; any features added via overrideAttrs were silently lost, causing assertions like hardware.graphics.enable32Bit (which checks kernel.features.ia32Emulation) to always fail for linuxManualConfig-based kernels. Change `features ? null` to `features ? {}` and add it to passthru so it survives override() call chains. (cherry picked from commit 2b428514e551b09ba15f1dd9ea76c1b40ee801df) --- pkgs/os-specific/linux/kernel/build.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/build.nix b/pkgs/os-specific/linux/kernel/build.nix index ac191a3ba149..91340c212afd 100644 --- a/pkgs/os-specific/linux/kernel/build.nix +++ b/pkgs/os-specific/linux/kernel/build.nix @@ -80,8 +80,7 @@ lib.makeOverridable ( # Whether to utilize the controversial import-from-derivation feature to parse the config allowImportFromDerivation ? false, - # ignored - features ? null, + features ? { }, lib ? lib_, stdenv ? stdenv_, }: @@ -530,6 +529,9 @@ lib.makeOverridable ( inherit isZen withRust + # Forwarded into passthru so features survive kernel.override() call chains + # used by the NixOS module system (see boot.kernelPackages apply in kernel.nix). + features ; baseVersion = lib.head (lib.splitString "-rc" version); kernelOlder = lib.versionOlder baseVersion; From 1d2e376b84d882fe637412364682424561b3b551 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20N=C3=BCrnberger?= Date: Tue, 16 Jun 2026 11:08:58 +0200 Subject: [PATCH 79/95] openjdk11{, -headless}: fix UB in markOop OpenJDK 11 misuses the low bits in pointers that have an assumed alignment. This is undefined behavior and compiler optimizations break the code at runtime, causing SIGSEGV in the garbage collector. This was originally noticed for clang13, but GCC15 seems to do similar optimizations now. The UB was removed in JDK14. See https://bugs.openjdk.org/browse/JDK-8229258 This is a smaller version of the unsuccessful backport PR proposed upstream: https://github.com/openjdk/jdk11u-dev/pull/1284 Removed the .github/workflows changes and everything from the markOop to markWord rename and file move from the patch. I found a way to avoid most of the `markOopDesc`->`markOop` renames with a typedef, and dropped the changes to all architectures besides x86 and aarch64. Fixes: https://github.com/nixos/nixpkgs/issues/526834 (cherry picked from commit e09bc37026c5821740bb61365d52c9d8aaa085cc) --- .../fix-oopdesc-ptr-alignment-ub.patch | 2622 +++++++++++++++++ .../development/compilers/openjdk/generic.nix | 3 + 2 files changed, 2625 insertions(+) create mode 100644 pkgs/development/compilers/openjdk/11/patches/fix-oopdesc-ptr-alignment-ub.patch diff --git a/pkgs/development/compilers/openjdk/11/patches/fix-oopdesc-ptr-alignment-ub.patch b/pkgs/development/compilers/openjdk/11/patches/fix-oopdesc-ptr-alignment-ub.patch new file mode 100644 index 000000000000..9fc32990d1ae --- /dev/null +++ b/pkgs/development/compilers/openjdk/11/patches/fix-oopdesc-ptr-alignment-ub.patch @@ -0,0 +1,2622 @@ +From 55ce9f824ab06507e7253e7de6e57c7baac5ae45 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Stefan=20N=C3=BCrnberger?= + +Date: Thu, 18 Jun 2026 20:21:59 +0200 +Subject: [PATCH] fix undefined behavior in markOop + +A smaller version of https://github.com/openjdk/jdk11u-dev/pull/1284 +to fix https://bugs.openjdk.java.net/browse/JDK-8229258 + +Only fixes x86 and aarch64. Other architectures will not build. + +Co-authored-by: Campbell Jones +Co-authored-by: Reilly Brogan + +--- + src/hotspot/cpu/aarch64/aarch64.ad | 2 +- + .../cpu/aarch64/c1_MacroAssembler_aarch64.cpp | 2 +- + .../cpu/aarch64/templateTable_aarch64.cpp | 2 +- + src/hotspot/cpu/x86/c1_MacroAssembler_x86.cpp | 2 +- + src/hotspot/cpu/x86/macroAssembler_x86.cpp | 8 +- + src/hotspot/cpu/x86/templateTable_x86.cpp | 2 +- + src/hotspot/cpu/zero/cppInterpreter_zero.cpp | 2 +- + src/hotspot/share/classfile/altHashing.cpp | 2 +- + .../gc/cms/concurrentMarkSweepGeneration.cpp | 32 +-- + src/hotspot/share/gc/cms/freeChunk.hpp | 8 +- + .../share/gc/cms/parOopClosures.inline.hpp | 4 +- + src/hotspot/share/gc/cms/promotionInfo.cpp | 2 +- + .../share/gc/g1/g1FullGCCompactionPoint.cpp | 4 +- + .../share/gc/g1/g1FullGCMarker.inline.hpp | 2 +- + .../gc/g1/g1FullGCOopClosures.inline.hpp | 4 +- + .../share/gc/g1/g1OopClosures.inline.hpp | 4 +- + .../share/gc/g1/g1ParScanThreadState.cpp | 12 +- + .../gc/g1/g1ParScanThreadState.inline.hpp | 4 +- + .../gc/parallel/psMarkSweepDecorator.cpp | 10 +- + .../gc/parallel/psPromotionManager.inline.hpp | 6 +- + src/hotspot/share/gc/serial/markSweep.cpp | 2 +- + .../share/gc/serial/markSweep.inline.hpp | 10 +- + .../share/gc/shared/preservedMarks.inline.hpp | 2 +- + src/hotspot/share/gc/shared/space.inline.hpp | 6 +- + .../share/gc/shenandoah/shenandoahAsserts.cpp | 2 +- + .../shenandoahForwarding.inline.hpp | 16 +- + .../gc/shenandoah/shenandoahStringDedup.cpp | 6 +- + .../share/interpreter/bytecodeInterpreter.cpp | 18 +- + .../jfr/leakprofiler/chains/bfsClosure.cpp | 4 +- + .../jfr/leakprofiler/chains/dfsClosure.cpp | 2 +- + .../jfr/leakprofiler/chains/edgeStore.cpp | 4 +- + .../jfr/leakprofiler/chains/edgeUtils.cpp | 2 +- + .../chains/objectSampleMarker.hpp | 6 +- + .../leakprofiler/checkpoint/eventEmitter.cpp | 2 +- + .../leakprofiler/utilities/saveRestore.cpp | 8 +- + src/hotspot/share/memory/metaspaceShared.cpp | 2 +- + src/hotspot/share/memory/universe.cpp | 2 +- + src/hotspot/share/memory/virtualspace.cpp | 4 +- + src/hotspot/share/oops/klass.cpp | 2 +- + src/hotspot/share/oops/klass.hpp | 1 + + src/hotspot/share/oops/klass.inline.hpp | 2 +- + src/hotspot/share/oops/markOop.hpp | 62 ++++-- + src/hotspot/share/oops/markOop.inline.hpp | 8 +- + src/hotspot/share/oops/oop.cpp | 4 +- + src/hotspot/share/oops/oop.hpp | 1 + + src/hotspot/share/oops/oop.inline.hpp | 65 +++--- + src/hotspot/share/oops/oopsHierarchy.hpp | 2 - + src/hotspot/share/opto/macro.cpp | 2 +- + src/hotspot/share/prims/jvmtiEnvBase.cpp | 8 +- + src/hotspot/share/prims/jvmtiTagMap.cpp | 10 +- + src/hotspot/share/prims/whitebox.cpp | 2 +- + src/hotspot/share/runtime/basicLock.cpp | 8 +- + src/hotspot/share/runtime/basicLock.hpp | 10 +- + src/hotspot/share/runtime/biasedLocking.cpp | 84 ++++---- + src/hotspot/share/runtime/deoptimization.cpp | 8 +- + src/hotspot/share/runtime/objectMonitor.hpp | 1 + + .../share/runtime/objectMonitor.inline.hpp | 10 +- + src/hotspot/share/runtime/sharedRuntime.cpp | 4 +- + src/hotspot/share/runtime/synchronizer.cpp | 191 +++++++++--------- + src/hotspot/share/runtime/vframe.cpp | 22 +- + src/hotspot/share/runtime/vmStructs.cpp | 4 +- + 69 files changed, 394 insertions(+), 345 deletions(-) + +diff --git a/src/hotspot/cpu/aarch64/aarch64.ad b/src/hotspot/cpu/aarch64/aarch64.ad +index 27ba4e10d..0e7f17588 100644 +--- a/src/hotspot/cpu/aarch64/aarch64.ad ++++ b/src/hotspot/cpu/aarch64/aarch64.ad +@@ -3565,7 +3565,7 @@ encode %{ + // lock. The fast-path monitor unlock code checks for + // markOopDesc::monitor_value so use markOopDesc::unused_mark which has the + // relevant bit set, and also matches ObjectSynchronizer::slow_enter. +- __ mov(tmp, (address)markOopDesc::unused_mark()); ++ __ mov(tmp, (address)markOopDesc::unused_mark().value()); + __ str(tmp, Address(box, BasicLock::displaced_header_offset_in_bytes())); + } + +diff --git a/src/hotspot/cpu/aarch64/c1_MacroAssembler_aarch64.cpp b/src/hotspot/cpu/aarch64/c1_MacroAssembler_aarch64.cpp +index 218113b78..97791fb63 100644 +--- a/src/hotspot/cpu/aarch64/c1_MacroAssembler_aarch64.cpp ++++ b/src/hotspot/cpu/aarch64/c1_MacroAssembler_aarch64.cpp +@@ -176,7 +176,7 @@ void C1_MacroAssembler::initialize_header(Register obj, Register klass, Register + ldr(t1, Address(klass, Klass::prototype_header_offset())); + } else { + // This assumes that all prototype bits fit in an int32_t +- mov(t1, (int32_t)(intptr_t)markOopDesc::prototype()); ++ mov(t1, (int32_t)(intptr_t)markOopDesc::prototype().value()); + } + str(t1, Address(obj, oopDesc::mark_offset_in_bytes())); + +diff --git a/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp b/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp +index 6fd216b95..a3c082f49 100644 +--- a/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp ++++ b/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp +@@ -3611,7 +3611,7 @@ void TemplateTable::_new() { + if (UseBiasedLocking) { + __ ldr(rscratch1, Address(r4, Klass::prototype_header_offset())); + } else { +- __ mov(rscratch1, (intptr_t)markOopDesc::prototype()); ++ __ mov(rscratch1, (intptr_t)markOopDesc::prototype().value()); + } + __ str(rscratch1, Address(r0, oopDesc::mark_offset_in_bytes())); + __ store_klass_gap(r0, zr); // zero klass gap for compressed oops +diff --git a/src/hotspot/cpu/x86/c1_MacroAssembler_x86.cpp b/src/hotspot/cpu/x86/c1_MacroAssembler_x86.cpp +index 25353446f..0e611a18a 100644 +--- a/src/hotspot/cpu/x86/c1_MacroAssembler_x86.cpp ++++ b/src/hotspot/cpu/x86/c1_MacroAssembler_x86.cpp +@@ -154,7 +154,7 @@ void C1_MacroAssembler::initialize_header(Register obj, Register klass, Register + movptr(Address(obj, oopDesc::mark_offset_in_bytes()), t1); + } else { + // This assumes that all prototype bits fit in an int32_t +- movptr(Address(obj, oopDesc::mark_offset_in_bytes ()), (int32_t)(intptr_t)markOopDesc::prototype()); ++ movptr(Address(obj, oopDesc::mark_offset_in_bytes ()), (int32_t)(intptr_t)markOopDesc::prototype().value()); + } + #ifdef _LP64 + if (UseCompressedClassPointers) { // Take care not to kill klass +diff --git a/src/hotspot/cpu/x86/macroAssembler_x86.cpp b/src/hotspot/cpu/x86/macroAssembler_x86.cpp +index ccde5ec7f..3e8098320 100644 +--- a/src/hotspot/cpu/x86/macroAssembler_x86.cpp ++++ b/src/hotspot/cpu/x86/macroAssembler_x86.cpp +@@ -1556,7 +1556,7 @@ void MacroAssembler::rtm_inflated_locking(Register objReg, Register boxReg, Regi + int owner_offset = OM_OFFSET_NO_MONITOR_VALUE_TAG(owner); + + // Without cast to int32_t a movptr will destroy r10 which is typically obj +- movptr(Address(boxReg, 0), (int32_t)intptr_t(markOopDesc::unused_mark())); ++ movptr(Address(boxReg, 0), (int32_t)intptr_t(markOopDesc::unused_mark().value())); + movptr(boxReg, tmpReg); // Save ObjectMonitor address + + if (RTMRetryCount > 0) { +@@ -1727,7 +1727,7 @@ void MacroAssembler::fast_lock(Register objReg, Register boxReg, Register tmpReg + if (EmitSync & 1) { + // set box->dhw = markOopDesc::unused_mark() + // Force all sync thru slow-path: slow_enter() and slow_exit() +- movptr (Address(boxReg, 0), (int32_t)intptr_t(markOopDesc::unused_mark())); ++ movptr (Address(boxReg, 0), (int32_t)intptr_t(markOopDesc::unused_mark().value())); + cmpptr (rsp, (int32_t)NULL_WORD); + } else { + // Possible cases that we'll encounter in fast_lock +@@ -1879,7 +1879,7 @@ void MacroAssembler::fast_lock(Register objReg, Register boxReg, Register tmpReg + // Invariant: m->_recursions should already be 0, so we don't need to explicitly set it. + // Intentional fall-through into DONE_LABEL ... + } else { +- movptr(Address(boxReg, 0), intptr_t(markOopDesc::unused_mark())); // results in ST-before-CAS penalty ++ movptr(Address(boxReg, 0), intptr_t(markOopDesc::unused_mark().value())); // results in ST-before-CAS penalty + movptr(boxReg, tmpReg); + + // Using a prefetchw helps avoid later RTS->RTO upgrades and cache probes +@@ -1926,7 +1926,7 @@ void MacroAssembler::fast_lock(Register objReg, Register boxReg, Register tmpReg + cmpxchgptr(r15_thread, Address(scrReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner))); + // Unconditionally set box->_displaced_header = markOopDesc::unused_mark(). + // Without cast to int32_t movptr will destroy r10 which is typically obj. +- movptr(Address(boxReg, 0), (int32_t)intptr_t(markOopDesc::unused_mark())); ++ movptr(Address(boxReg, 0), (int32_t)intptr_t(markOopDesc::unused_mark().value())); + // Intentional fall-through into DONE_LABEL ... + // Propagate ICC.ZF from CAS above into DONE_LABEL. + #endif // _LP64 +diff --git a/src/hotspot/cpu/x86/templateTable_x86.cpp b/src/hotspot/cpu/x86/templateTable_x86.cpp +index 311a54f1b..785b675cb 100644 +--- a/src/hotspot/cpu/x86/templateTable_x86.cpp ++++ b/src/hotspot/cpu/x86/templateTable_x86.cpp +@@ -4103,7 +4103,7 @@ void TemplateTable::_new() { + __ movptr(Address(rax, oopDesc::mark_offset_in_bytes ()), rbx); + } else { + __ movptr(Address(rax, oopDesc::mark_offset_in_bytes ()), +- (intptr_t)markOopDesc::prototype()); // header ++ (intptr_t)markOopDesc::prototype().value()); // header + __ pop(rcx); // get saved klass back in the register. + } + #ifdef _LP64 +diff --git a/src/hotspot/cpu/zero/cppInterpreter_zero.cpp b/src/hotspot/cpu/zero/cppInterpreter_zero.cpp +index 9331d02ce..04c59d9b6 100644 +--- a/src/hotspot/cpu/zero/cppInterpreter_zero.cpp ++++ b/src/hotspot/cpu/zero/cppInterpreter_zero.cpp +@@ -274,7 +274,7 @@ int CppInterpreter::native_entry(Method* method, intptr_t UNUSED, TRAPS) { + if (method->is_synchronized()) { + monitor = (BasicObjectLock*) istate->stack_base(); + oop lockee = monitor->obj(); +- markOop disp = lockee->mark()->set_unlocked(); ++ markOop disp = lockee->mark().set_unlocked(); + + monitor->lock()->set_displaced_header(disp); + if (lockee->cas_set_mark((markOop)monitor, disp) != disp) { +diff --git a/src/hotspot/share/classfile/altHashing.cpp b/src/hotspot/share/classfile/altHashing.cpp +index 253266c16..d7f3e7090 100644 +--- a/src/hotspot/share/classfile/altHashing.cpp ++++ b/src/hotspot/share/classfile/altHashing.cpp +@@ -55,7 +55,7 @@ + // objects. We don't want to call the synchronizer hash code to install + // this value because it may safepoint. + static intptr_t object_hash(Klass* k) { +- intptr_t hc = k->java_mirror()->mark()->hash(); ++ intptr_t hc = k->java_mirror()->mark().hash(); + return hc != markOopDesc::no_hash ? hc : os::random(); + } + +diff --git a/src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.cpp b/src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.cpp +index d4e9253ab..a3d91a6aa 100644 +--- a/src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.cpp ++++ b/src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.cpp +@@ -7773,7 +7773,7 @@ bool CMSCollector::take_from_overflow_list(size_t num, CMSMarkStack* stack) { + const markOop proto = markOopDesc::prototype(); + NOT_PRODUCT(ssize_t n = 0;) + for (oop next; i > 0 && cur != NULL; cur = next, i--) { +- next = oop(cur->mark_raw()); ++ next = oop(cur->mark_raw().to_pointer()); + cur->set_mark_raw(proto); // until proven otherwise + assert(oopDesc::is_oop(cur), "Should be an oop"); + bool res = stack->push(cur); +@@ -7857,8 +7857,8 @@ bool CMSCollector::par_take_from_overflow_list(size_t num, + size_t i = num; + oop cur = prefix; + // Walk down the first "num" objects, unless we reach the end. +- for (; i > 1 && cur->mark_raw() != NULL; cur = oop(cur->mark_raw()), i--); +- if (cur->mark_raw() == NULL) { ++ for (; i > 1 && cur->mark_raw().to_pointer() != NULL; cur = oop(cur->mark_raw().to_pointer()), i--); ++ if (cur->mark_raw().to_pointer() == NULL) { + // We have "num" or fewer elements in the list, so there + // is nothing to return to the global list. + // Write back the NULL in lieu of the BUSY we wrote +@@ -7868,9 +7868,9 @@ bool CMSCollector::par_take_from_overflow_list(size_t num, + } + } else { + // Chop off the suffix and return it to the global list. +- assert(cur->mark_raw() != BUSY, "Error"); +- oop suffix_head = cur->mark_raw(); // suffix will be put back on global list +- cur->set_mark_raw(NULL); // break off suffix ++ assert(cur->mark_raw().to_pointer() != (void*)BUSY, "Error"); ++ oop suffix_head = oop(cur->mark_raw().to_pointer()); // suffix will be put back on global list ++ cur->set_mark_raw(markOop::from_pointer(NULL)); // break off suffix + // It's possible that the list is still in the empty(busy) state + // we left it in a short while ago; in that case we may be + // able to place back the suffix without incurring the cost +@@ -7890,18 +7890,18 @@ bool CMSCollector::par_take_from_overflow_list(size_t num, + // Too bad, someone else sneaked in (at least) an element; we'll need + // to do a splice. Find tail of suffix so we can prepend suffix to global + // list. +- for (cur = suffix_head; cur->mark_raw() != NULL; cur = (oop)(cur->mark_raw())); ++ for (cur = suffix_head; cur->mark_raw().to_pointer() != NULL; cur = (oop)(cur->mark_raw().to_pointer())); + oop suffix_tail = cur; +- assert(suffix_tail != NULL && suffix_tail->mark_raw() == NULL, ++ assert(suffix_tail != NULL && suffix_tail->mark_raw().to_pointer() == NULL, + "Tautology"); + observed_overflow_list = _overflow_list; + do { + cur_overflow_list = observed_overflow_list; + if (cur_overflow_list != BUSY) { + // Do the splice ... +- suffix_tail->set_mark_raw(markOop(cur_overflow_list)); ++ suffix_tail->set_mark_raw(markOop::from_pointer((void*)cur_overflow_list)); + } else { // cur_overflow_list == BUSY +- suffix_tail->set_mark_raw(NULL); ++ suffix_tail->set_mark_raw(markOop::from_pointer(NULL)); + } + // ... and try to place spliced list back on overflow_list ... + observed_overflow_list = +@@ -7917,7 +7917,7 @@ bool CMSCollector::par_take_from_overflow_list(size_t num, + oop next; + NOT_PRODUCT(ssize_t n = 0;) + for (cur = prefix; cur != NULL; cur = next) { +- next = oop(cur->mark_raw()); ++ next = oop(cur->mark_raw().to_pointer()); + cur->set_mark_raw(proto); // until proven otherwise + assert(oopDesc::is_oop(cur), "Should be an oop"); + bool res = work_q->push(cur); +@@ -7936,7 +7936,7 @@ void CMSCollector::push_on_overflow_list(oop p) { + NOT_PRODUCT(_num_par_pushes++;) + assert(oopDesc::is_oop(p), "Not an oop"); + preserve_mark_if_necessary(p); +- p->set_mark_raw((markOop)_overflow_list); ++ p->set_mark_raw(markOop::from_pointer(_overflow_list)); + _overflow_list = p; + } + +@@ -7950,9 +7950,9 @@ void CMSCollector::par_push_on_overflow_list(oop p) { + do { + cur_overflow_list = observed_overflow_list; + if (cur_overflow_list != BUSY) { +- p->set_mark_raw(markOop(cur_overflow_list)); ++ p->set_mark_raw(markOop::from_pointer((void*)cur_overflow_list)); + } else { +- p->set_mark_raw(NULL); ++ p->set_mark_raw(markOop::from_pointer(NULL)); + } + observed_overflow_list = + Atomic::cmpxchg((oopDesc*)p, &_overflow_list, (oopDesc*)cur_overflow_list); +@@ -7985,14 +7985,14 @@ void CMSCollector::preserve_mark_work(oop p, markOop m) { + // Single threaded + void CMSCollector::preserve_mark_if_necessary(oop p) { + markOop m = p->mark_raw(); +- if (m->must_be_preserved(p)) { ++ if (m.must_be_preserved(p)) { + preserve_mark_work(p, m); + } + } + + void CMSCollector::par_preserve_mark_if_necessary(oop p) { + markOop m = p->mark_raw(); +- if (m->must_be_preserved(p)) { ++ if (m.must_be_preserved(p)) { + MutexLockerEx x(ParGCRareEvent_lock, Mutex::_no_safepoint_check_flag); + // Even though we read the mark word without holding + // the lock, we are assured that it will not change +diff --git a/src/hotspot/share/gc/cms/freeChunk.hpp b/src/hotspot/share/gc/cms/freeChunk.hpp +index a48a6dd1f..02bce8602 100644 +--- a/src/hotspot/share/gc/cms/freeChunk.hpp ++++ b/src/hotspot/share/gc/cms/freeChunk.hpp +@@ -62,8 +62,8 @@ class FreeChunk { + FreeChunk* _prev; + FreeChunk* _next; + +- markOop mark() const volatile { return (markOop)_size; } +- void set_mark(markOop m) { _size = (size_t)m; } ++ markOop mark() const volatile { return markOop((uintptr_t)_size); } ++ void set_mark(markOop m) { _size = (size_t)m.value(); } + + public: + NOT_PRODUCT(static const size_t header_size();) +@@ -79,7 +79,7 @@ class FreeChunk { + } + + bool is_free() const volatile { +- LP64_ONLY(if (UseCompressedOops) return mark()->is_cms_free_chunk(); else) ++ LP64_ONLY(if (UseCompressedOops) return mark().is_cms_free_chunk(); else) + return (((intptr_t)_prev) & 0x1) == 0x1; + } + bool cantCoalesce() const { +@@ -100,7 +100,7 @@ class FreeChunk { + debug_only(void* size_addr() const { return (void*)&_size; }) + + size_t size() const volatile { +- LP64_ONLY(if (UseCompressedOops) return mark()->get_size(); else ) ++ LP64_ONLY(if (UseCompressedOops) return mark().get_size(); else ) + return _size; + } + void set_size(size_t sz) { +diff --git a/src/hotspot/share/gc/cms/parOopClosures.inline.hpp b/src/hotspot/share/gc/cms/parOopClosures.inline.hpp +index 609a14868..e73659121 100644 +--- a/src/hotspot/share/gc/cms/parOopClosures.inline.hpp ++++ b/src/hotspot/share/gc/cms/parOopClosures.inline.hpp +@@ -47,7 +47,7 @@ template inline void ParScanWeakRefClosure::do_oop_work(T* p) { + OrderAccess::loadload(); + markOop m = obj->mark_raw(); + oop new_obj; +- if (m->is_marked()) { // Contains forwarding pointer. ++ if (m.is_marked()) { // Contains forwarding pointer. + new_obj = ParNewGeneration::real_forwardee(obj); + } else { + size_t obj_sz = obj->size_given_klass(objK); +@@ -112,7 +112,7 @@ inline void ParScanClosure::do_oop_work(T* p, + OrderAccess::loadload(); + markOop m = obj->mark_raw(); + oop new_obj; +- if (m->is_marked()) { // Contains forwarding pointer. ++ if (m.is_marked()) { // Contains forwarding pointer. + new_obj = ParNewGeneration::real_forwardee(obj); + RawAccess::oop_store(p, new_obj); + log_develop_trace(gc, scavenge)("{%s %s ( " PTR_FORMAT " ) " PTR_FORMAT " -> " PTR_FORMAT " (%d)}", +diff --git a/src/hotspot/share/gc/cms/promotionInfo.cpp b/src/hotspot/share/gc/cms/promotionInfo.cpp +index 971368c12..50bb470d5 100644 +--- a/src/hotspot/share/gc/cms/promotionInfo.cpp ++++ b/src/hotspot/share/gc/cms/promotionInfo.cpp +@@ -95,7 +95,7 @@ void PromotionInfo::track(PromotedObject* trackOop, Klass* klassOfOop) { + // make a copy of header as it may need to be spooled + markOop mark = oop(trackOop)->mark_raw(); + trackOop->clear_next(); +- if (mark->must_be_preserved_for_cms_scavenge(klassOfOop)) { ++ if (mark.must_be_preserved_for_cms_scavenge(klassOfOop)) { + // save non-prototypical header, and mark oop + saveDisplacedHeader(mark); + trackOop->setDisplacedMark(); +diff --git a/src/hotspot/share/gc/g1/g1FullGCCompactionPoint.cpp b/src/hotspot/share/gc/g1/g1FullGCCompactionPoint.cpp +index 76e9e77d7..8dbf7e8cb 100644 +--- a/src/hotspot/share/gc/g1/g1FullGCCompactionPoint.cpp ++++ b/src/hotspot/share/gc/g1/g1FullGCCompactionPoint.cpp +@@ -117,10 +117,10 @@ void G1FullGCCompactionPoint::forward(oop object, size_t size) { + // Make sure object has the correct mark-word set or that it will be + // fixed when restoring the preserved marks. + assert(object->mark_raw() == markOopDesc::prototype_for_object(object) || // Correct mark +- object->mark_raw()->must_be_preserved(object) || // Will be restored by PreservedMarksSet ++ object->mark_raw().must_be_preserved(object) || // Will be restored by PreservedMarksSet + (UseBiasedLocking && object->has_bias_pattern_raw()), // Will be restored by BiasedLocking + "should have correct prototype obj: " PTR_FORMAT " mark: " PTR_FORMAT " prototype: " PTR_FORMAT, +- p2i(object), p2i(object->mark_raw()), p2i(markOopDesc::prototype_for_object(object))); ++ p2i(object), object->mark_raw().value(), markOopDesc::prototype_for_object(object).value()); + } + assert(object->forwardee() == NULL, "should be forwarded to NULL"); + } +diff --git a/src/hotspot/share/gc/g1/g1FullGCMarker.inline.hpp b/src/hotspot/share/gc/g1/g1FullGCMarker.inline.hpp +index 98a2fe7f1..e0976fd5c 100644 +--- a/src/hotspot/share/gc/g1/g1FullGCMarker.inline.hpp ++++ b/src/hotspot/share/gc/g1/g1FullGCMarker.inline.hpp +@@ -51,7 +51,7 @@ inline bool G1FullGCMarker::mark_object(oop obj) { + + // Marked by us, preserve if needed. + markOop mark = obj->mark_raw(); +- if (mark->must_be_preserved(obj) && ++ if (mark.must_be_preserved(obj) && + !G1ArchiveAllocator::is_open_archive_object(obj)) { + preserved_stack()->push(obj, mark); + } +diff --git a/src/hotspot/share/gc/g1/g1FullGCOopClosures.inline.hpp b/src/hotspot/share/gc/g1/g1FullGCOopClosures.inline.hpp +index f19a57846..7e0feaf83 100644 +--- a/src/hotspot/share/gc/g1/g1FullGCOopClosures.inline.hpp ++++ b/src/hotspot/share/gc/g1/g1FullGCOopClosures.inline.hpp +@@ -77,10 +77,10 @@ template inline void G1AdjustClosure::adjust_pointer(T* p) { + if (forwardee == NULL) { + // Not forwarded, return current reference. + assert(obj->mark_raw() == markOopDesc::prototype_for_object(obj) || // Correct mark +- obj->mark_raw()->must_be_preserved(obj) || // Will be restored by PreservedMarksSet ++ obj->mark_raw().must_be_preserved(obj) || // Will be restored by PreservedMarksSet + (UseBiasedLocking && obj->has_bias_pattern_raw()), // Will be restored by BiasedLocking + "Must have correct prototype or be preserved, obj: " PTR_FORMAT ", mark: " PTR_FORMAT ", prototype: " PTR_FORMAT, +- p2i(obj), p2i(obj->mark_raw()), p2i(markOopDesc::prototype_for_object(obj))); ++ p2i(obj), obj->mark_raw().value(), markOopDesc::prototype_for_object(obj).value()); + return; + } + +diff --git a/src/hotspot/share/gc/g1/g1OopClosures.inline.hpp b/src/hotspot/share/gc/g1/g1OopClosures.inline.hpp +index c25491323..81f9e1d0e 100644 +--- a/src/hotspot/share/gc/g1/g1OopClosures.inline.hpp ++++ b/src/hotspot/share/gc/g1/g1OopClosures.inline.hpp +@@ -250,8 +250,8 @@ void G1ParCopyClosure::do_oop_work(T* p) { + if (state.is_in_cset()) { + oop forwardee; + markOop m = obj->mark_raw(); +- if (m->is_marked()) { +- forwardee = (oop) m->decode_pointer(); ++ if (m.is_marked()) { ++ forwardee = (oop) m.decode_pointer(); + } else { + forwardee = _par_scan_state->copy_to_survivor_space(state, obj, m); + } +diff --git a/src/hotspot/share/gc/g1/g1ParScanThreadState.cpp b/src/hotspot/share/gc/g1/g1ParScanThreadState.cpp +index 72a607168..fde1efffc 100644 +--- a/src/hotspot/share/gc/g1/g1ParScanThreadState.cpp ++++ b/src/hotspot/share/gc/g1/g1ParScanThreadState.cpp +@@ -188,8 +188,8 @@ HeapWord* G1ParScanThreadState::allocate_in_next_plab(InCSetState const state, + + InCSetState G1ParScanThreadState::next_state(InCSetState const state, markOop const m, uint& age) { + if (state.is_young()) { +- age = !m->has_displaced_mark_helper() ? m->age() +- : m->displaced_mark_helper()->age(); ++ age = !m.has_displaced_mark_helper() ? m.age() ++ : m.displaced_mark_helper().age(); + if (age < _tenuring_threshold) { + return state; + } +@@ -274,15 +274,15 @@ oop G1ParScanThreadState::copy_to_survivor_space(InCSetState const state, + if (age < markOopDesc::max_age) { + age++; + } +- if (old_mark->has_displaced_mark_helper()) { ++ if (old_mark.has_displaced_mark_helper()) { + // In this case, we have to install the mark word first, + // otherwise obj looks to be forwarded (the old mark word, + // which contains the forward pointer, was copied) + obj->set_mark_raw(old_mark); +- markOop new_mark = old_mark->displaced_mark_helper()->set_age(age); +- old_mark->set_displaced_mark_helper(new_mark); ++ markOop new_mark = old_mark.displaced_mark_helper().set_age(age); ++ old_mark.set_displaced_mark_helper(new_mark); + } else { +- obj->set_mark_raw(old_mark->set_age(age)); ++ obj->set_mark_raw(old_mark.set_age(age)); + } + _age_table.add(age, word_sz); + } else { +diff --git a/src/hotspot/share/gc/g1/g1ParScanThreadState.inline.hpp b/src/hotspot/share/gc/g1/g1ParScanThreadState.inline.hpp +index 10754bafa..78cabd806 100644 +--- a/src/hotspot/share/gc/g1/g1ParScanThreadState.inline.hpp ++++ b/src/hotspot/share/gc/g1/g1ParScanThreadState.inline.hpp +@@ -42,8 +42,8 @@ template void G1ParScanThreadState::do_oop_evac(T* p) { + const InCSetState in_cset_state = _g1h->in_cset_state(obj); + if (in_cset_state.is_in_cset()) { + markOop m = obj->mark_raw(); +- if (m->is_marked()) { +- obj = (oop) m->decode_pointer(); ++ if (m.is_marked()) { ++ obj = (oop) m.decode_pointer(); + } else { + obj = copy_to_survivor_space(in_cset_state, obj, m); + } +diff --git a/src/hotspot/share/gc/parallel/psMarkSweepDecorator.cpp b/src/hotspot/share/gc/parallel/psMarkSweepDecorator.cpp +index eed0fa51b..43c336892 100644 +--- a/src/hotspot/share/gc/parallel/psMarkSweepDecorator.cpp ++++ b/src/hotspot/share/gc/parallel/psMarkSweepDecorator.cpp +@@ -113,8 +113,8 @@ void PSMarkSweepDecorator::precompact() { + const intx interval = PrefetchScanIntervalInBytes; + + while (q < t) { +- assert(oop(q)->mark_raw()->is_marked() || oop(q)->mark_raw()->is_unlocked() || +- oop(q)->mark_raw()->has_bias_pattern(), ++ assert(oop(q)->mark_raw().is_marked() || oop(q)->mark_raw().is_unlocked() || ++ oop(q)->mark_raw().has_bias_pattern(), + "these are the only valid states during a mark sweep"); + if (oop(q)->is_gc_marked()) { + /* prefetch beyond q */ +@@ -259,7 +259,7 @@ bool PSMarkSweepDecorator::insert_deadspace(size_t& allowed_deadspace_words, + if (allowed_deadspace_words >= deadlength) { + allowed_deadspace_words -= deadlength; + CollectedHeap::fill_with_object(q, deadlength); +- oop(q)->set_mark_raw(oop(q)->mark_raw()->set_marked()); ++ oop(q)->set_mark_raw(oop(q)->mark_raw().set_marked()); + assert((int) deadlength == oop(q)->size(), "bad filler object size"); + // Recall that we required "q == compaction_top". + return true; +@@ -350,7 +350,7 @@ void PSMarkSweepDecorator::compact(bool mangle_free_space ) { + q = t; + } else { + // $$$ Funky +- q = (HeapWord*) oop(_first_dead)->mark_raw()->decode_pointer(); ++ q = (HeapWord*) oop(_first_dead)->mark_raw().decode_pointer(); + } + } + +@@ -361,7 +361,7 @@ void PSMarkSweepDecorator::compact(bool mangle_free_space ) { + if (!oop(q)->is_gc_marked()) { + // mark is pointer to next marked oop + debug_only(prev_q = q); +- q = (HeapWord*) oop(q)->mark_raw()->decode_pointer(); ++ q = (HeapWord*) oop(q)->mark_raw().decode_pointer(); + assert(q > prev_q, "we should be moving forward through memory"); + } else { + // prefetch beyond q +diff --git a/src/hotspot/share/gc/parallel/psPromotionManager.inline.hpp b/src/hotspot/share/gc/parallel/psPromotionManager.inline.hpp +index 1ef900783..15c95e3ea 100644 +--- a/src/hotspot/share/gc/parallel/psPromotionManager.inline.hpp ++++ b/src/hotspot/share/gc/parallel/psPromotionManager.inline.hpp +@@ -119,13 +119,13 @@ inline oop PSPromotionManager::copy_to_survivor_space(oop o) { + markOop test_mark = o->mark_raw(); + + // The same test as "o->is_forwarded()" +- if (!test_mark->is_marked()) { ++ if (!test_mark.is_marked()) { + bool new_obj_is_tenured = false; + size_t new_obj_size = o->size(); + + // Find the objects age, MT safe. +- uint age = (test_mark->has_displaced_mark_helper() /* o->has_displaced_mark() */) ? +- test_mark->displaced_mark_helper()->age() : test_mark->age(); ++ uint age = (test_mark.has_displaced_mark_helper() /* o->has_displaced_mark() */) ? ++ test_mark.displaced_mark_helper().age() : test_mark.age(); + + if (!promote_immediately) { + // Try allocating obj in to-space (unless too old) +diff --git a/src/hotspot/share/gc/serial/markSweep.cpp b/src/hotspot/share/gc/serial/markSweep.cpp +index fcc4f40ec..c799afbe5 100644 +--- a/src/hotspot/share/gc/serial/markSweep.cpp ++++ b/src/hotspot/share/gc/serial/markSweep.cpp +@@ -131,7 +131,7 @@ template inline void MarkSweep::follow_root(T* p) { + T heap_oop = RawAccess<>::oop_load(p); + if (!CompressedOops::is_null(heap_oop)) { + oop obj = CompressedOops::decode_not_null(heap_oop); +- if (!obj->mark_raw()->is_marked()) { ++ if (!obj->mark_raw().is_marked()) { + mark_object(obj); + follow_object(obj); + } +diff --git a/src/hotspot/share/gc/serial/markSweep.inline.hpp b/src/hotspot/share/gc/serial/markSweep.inline.hpp +index 25a5a315f..e021d8b17 100644 +--- a/src/hotspot/share/gc/serial/markSweep.inline.hpp ++++ b/src/hotspot/share/gc/serial/markSweep.inline.hpp +@@ -39,9 +39,9 @@ inline void MarkSweep::mark_object(oop obj) { + // some marks may contain information we need to preserve so we store them away + // and overwrite the mark. We'll restore it at the end of markSweep. + markOop mark = obj->mark_raw(); +- obj->set_mark_raw(markOopDesc::prototype()->set_marked()); ++ obj->set_mark_raw(markOopDesc::prototype().set_marked()); + +- if (mark->must_be_preserved(obj)) { ++ if (mark.must_be_preserved(obj)) { + preserve_mark(obj, mark); + } + } +@@ -50,7 +50,7 @@ template inline void MarkSweep::mark_and_push(T* p) { + T heap_oop = RawAccess<>::oop_load(p); + if (!CompressedOops::is_null(heap_oop)) { + oop obj = CompressedOops::decode_not_null(heap_oop); +- if (!obj->mark_raw()->is_marked()) { ++ if (!obj->mark_raw().is_marked()) { + mark_object(obj); + _marking_stack.push(obj); + } +@@ -79,11 +79,11 @@ template inline void MarkSweep::adjust_pointer(T* p) { + oop obj = CompressedOops::decode_not_null(heap_oop); + assert(Universe::heap()->is_in(obj), "should be in heap"); + +- oop new_obj = oop(obj->mark_raw()->decode_pointer()); ++ oop new_obj = oop(obj->mark_raw().decode_pointer()); + + assert(new_obj != NULL || // is forwarding ptr? + obj->mark_raw() == markOopDesc::prototype() || // not gc marked? +- (UseBiasedLocking && obj->mark_raw()->has_bias_pattern()), ++ (UseBiasedLocking && obj->mark_raw().has_bias_pattern()), + // not gc marked? + "should be forwarded"); + +diff --git a/src/hotspot/share/gc/shared/preservedMarks.inline.hpp b/src/hotspot/share/gc/shared/preservedMarks.inline.hpp +index e246a8a5b..42691d63b 100644 +--- a/src/hotspot/share/gc/shared/preservedMarks.inline.hpp ++++ b/src/hotspot/share/gc/shared/preservedMarks.inline.hpp +@@ -31,7 +31,7 @@ + #include "utilities/stack.inline.hpp" + + inline bool PreservedMarks::should_preserve_mark(oop obj, markOop m) const { +- return m->must_be_preserved_for_promotion_failure(obj); ++ return m.must_be_preserved_for_promotion_failure(obj); + } + + inline void PreservedMarks::push(oop obj, markOop m) { +diff --git a/src/hotspot/share/gc/shared/space.inline.hpp b/src/hotspot/share/gc/shared/space.inline.hpp +index ad22b6c42..3732606bc 100644 +--- a/src/hotspot/share/gc/shared/space.inline.hpp ++++ b/src/hotspot/share/gc/shared/space.inline.hpp +@@ -118,7 +118,7 @@ public: + _allowed_deadspace_words -= dead_length; + CollectedHeap::fill_with_object(dead_start, dead_length); + oop obj = oop(dead_start); +- obj->set_mark_raw(obj->mark_raw()->set_marked()); ++ obj->set_mark_raw(obj->mark_raw().set_marked()); + + assert(dead_length == (size_t)obj->size(), "bad filler object size"); + log_develop_trace(gc, compaction)("Inserting object to dead space: " PTR_FORMAT ", " PTR_FORMAT ", " SIZE_FORMAT "b", +@@ -165,8 +165,8 @@ inline void CompactibleSpace::scan_and_forward(SpaceType* space, CompactPoint* c + + while (cur_obj < scan_limit) { + assert(!space->scanned_block_is_obj(cur_obj) || +- oop(cur_obj)->mark_raw()->is_marked() || oop(cur_obj)->mark_raw()->is_unlocked() || +- oop(cur_obj)->mark_raw()->has_bias_pattern(), ++ oop(cur_obj)->mark_raw().is_marked() || oop(cur_obj)->mark_raw().is_unlocked() || ++ oop(cur_obj)->mark_raw().has_bias_pattern(), + "these are the only valid states during a mark sweep"); + if (space->scanned_block_is_obj(cur_obj) && oop(cur_obj)->is_gc_marked()) { + // prefetch beyond cur_obj +diff --git a/src/hotspot/share/gc/shenandoah/shenandoahAsserts.cpp b/src/hotspot/share/gc/shenandoah/shenandoahAsserts.cpp +index 1f8b79d5e..d9ecdc8f7 100644 +--- a/src/hotspot/share/gc/shenandoah/shenandoahAsserts.cpp ++++ b/src/hotspot/share/gc/shenandoah/shenandoahAsserts.cpp +@@ -60,7 +60,7 @@ void ShenandoahAsserts::print_obj(ShenandoahMessageBuffer& msg, oop obj) { + r->print_on(&ss); + + stringStream mw_ss; +- obj->mark()->print_on(&mw_ss); ++ obj->mark().print_on(&mw_ss); + + ShenandoahMarkingContext* const ctx = heap->marking_context(); + +diff --git a/src/hotspot/share/gc/shenandoah/shenandoahForwarding.inline.hpp b/src/hotspot/share/gc/shenandoah/shenandoahForwarding.inline.hpp +index 50d9c5015..4db606bfc 100644 +--- a/src/hotspot/share/gc/shenandoah/shenandoahForwarding.inline.hpp ++++ b/src/hotspot/share/gc/shenandoah/shenandoahForwarding.inline.hpp +@@ -40,8 +40,8 @@ inline HeapWord* ShenandoahForwarding::get_forwardee_raw_unchecked(oop obj) { + // fwdptr. That object is still not forwarded, and we need to return + // the object itself. + markOop mark = obj->mark_raw(); +- if (mark->is_marked()) { +- HeapWord* fwdptr = (HeapWord*) mark->clear_lock_bits(); ++ if (mark.is_marked()) { ++ HeapWord* fwdptr = (HeapWord*) mark.clear_lock_bits().to_pointer(); + if (fwdptr != NULL) { + return fwdptr; + } +@@ -55,8 +55,8 @@ inline oop ShenandoahForwarding::get_forwardee_mutator(oop obj) { + assert(Thread::current()->is_Java_thread(), "Must be a mutator thread"); + + markOop mark = obj->mark_raw(); +- if (mark->is_marked()) { +- HeapWord* fwdptr = (HeapWord*)mark->clear_lock_bits(); ++ if (mark.is_marked()) { ++ HeapWord* fwdptr = (HeapWord*)mark.clear_lock_bits().to_pointer(); + assert(fwdptr != NULL, "Forwarding pointer is never null here"); + return oop(fwdptr); + } else { +@@ -70,13 +70,13 @@ inline oop ShenandoahForwarding::get_forwardee(oop obj) { + } + + inline bool ShenandoahForwarding::is_forwarded(oop obj) { +- return obj->mark_raw()->is_marked(); ++ return obj->mark_raw().is_marked(); + } + + inline oop ShenandoahForwarding::try_update_forwardee(oop obj, oop update) { + markOop old_mark = obj->mark_raw(); +- if (old_mark->is_marked()) { +- return (oop) old_mark->clear_lock_bits(); ++ if (old_mark.is_marked()) { ++ return (oop) old_mark.clear_lock_bits().to_pointer(); + } + + markOop new_mark = markOopDesc::encode_pointer_as_mark(update); +@@ -84,7 +84,7 @@ inline oop ShenandoahForwarding::try_update_forwardee(oop obj, oop update) { + if (prev_mark == old_mark) { + return update; + } else { +- return (oop) prev_mark->clear_lock_bits(); ++ return (oop) prev_mark.clear_lock_bits().to_pointer(); + } + } + +diff --git a/src/hotspot/share/gc/shenandoah/shenandoahStringDedup.cpp b/src/hotspot/share/gc/shenandoah/shenandoahStringDedup.cpp +index edcb7724f..b7c4665b9 100644 +--- a/src/hotspot/share/gc/shenandoah/shenandoahStringDedup.cpp ++++ b/src/hotspot/share/gc/shenandoah/shenandoahStringDedup.cpp +@@ -50,14 +50,14 @@ void ShenandoahStringDedup::enqueue_candidate(oop java_string) { + const markOop mark = java_string->mark(); + + // Having/had displaced header, too risk to deal with them, skip +- if (mark == markOopDesc::INFLATING() || mark->has_displaced_mark_helper()) { ++ if (mark == markOopDesc::INFLATING() || mark.has_displaced_mark_helper()) { + return; + } + + // Increase string age and enqueue it when it rearches age threshold +- markOop new_mark = mark->incr_age(); ++ markOop new_mark = mark.incr_age(); + if (mark == java_string->cas_set_mark(new_mark, mark)) { +- if (mark->age() == StringDeduplicationAgeThreshold) { ++ if (mark.age() == StringDeduplicationAgeThreshold) { + StringDedupQueue::push(ShenandoahWorkerSession::worker_id(), java_string); + } + } +diff --git a/src/hotspot/share/interpreter/bytecodeInterpreter.cpp b/src/hotspot/share/interpreter/bytecodeInterpreter.cpp +index cea137469..3ebdc7714 100644 +--- a/src/hotspot/share/interpreter/bytecodeInterpreter.cpp ++++ b/src/hotspot/share/interpreter/bytecodeInterpreter.cpp +@@ -668,7 +668,7 @@ BytecodeInterpreter::run(interpreterState istate) { + markOop mark = rcvr->mark(); + intptr_t hash = (intptr_t) markOopDesc::no_hash; + // Implies UseBiasedLocking. +- if (mark->has_bias_pattern()) { ++ if (mark.has_bias_pattern()) { + uintptr_t thread_ident; + uintptr_t anticipated_bias_locking_value; + thread_ident = (uintptr_t)istate->thread(); +@@ -730,7 +730,7 @@ BytecodeInterpreter::run(interpreterState istate) { + + // Traditional lightweight locking. + if (!success) { +- markOop displaced = rcvr->mark()->set_unlocked(); ++ markOop displaced = rcvr->mark().set_unlocked(); + mon->lock()->set_displaced_header(displaced); + bool call_vm = UseHeavyMonitors; + if (call_vm || rcvr->cas_set_mark((markOop)mon, displaced) != displaced) { +@@ -854,7 +854,7 @@ BytecodeInterpreter::run(interpreterState istate) { + markOop mark = lockee->mark(); + intptr_t hash = (intptr_t) markOopDesc::no_hash; + // implies UseBiasedLocking +- if (mark->has_bias_pattern()) { ++ if (mark.has_bias_pattern()) { + uintptr_t thread_ident; + uintptr_t anticipated_bias_locking_value; + thread_ident = (uintptr_t)istate->thread(); +@@ -916,7 +916,7 @@ BytecodeInterpreter::run(interpreterState istate) { + + // traditional lightweight locking + if (!success) { +- markOop displaced = lockee->mark()->set_unlocked(); ++ markOop displaced = lockee->mark().set_unlocked(); + entry->lock()->set_displaced_header(displaced); + bool call_vm = UseHeavyMonitors; + if (call_vm || lockee->cas_set_mark((markOop)entry, displaced) != displaced) { +@@ -1794,7 +1794,7 @@ run: + markOop mark = lockee->mark(); + intptr_t hash = (intptr_t) markOopDesc::no_hash; + // implies UseBiasedLocking +- if (mark->has_bias_pattern()) { ++ if (mark.has_bias_pattern()) { + uintptr_t thread_ident; + uintptr_t anticipated_bias_locking_value; + thread_ident = (uintptr_t)istate->thread(); +@@ -1859,7 +1859,7 @@ run: + + // traditional lightweight locking + if (!success) { +- markOop displaced = lockee->mark()->set_unlocked(); ++ markOop displaced = lockee->mark().set_unlocked(); + entry->lock()->set_displaced_header(displaced); + bool call_vm = UseHeavyMonitors; + if (call_vm || lockee->cas_set_mark((markOop)entry, displaced) != displaced) { +@@ -1890,7 +1890,7 @@ run: + BasicLock* lock = most_recent->lock(); + markOop header = lock->displaced_header(); + most_recent->set_obj(NULL); +- if (!lockee->mark()->has_bias_pattern()) { ++ if (!lockee->mark().has_bias_pattern()) { + bool call_vm = UseHeavyMonitors; + // If it isn't recursive we either must swap old header or call the runtime + if (header != NULL || call_vm) { +@@ -3030,7 +3030,7 @@ run: + markOop header = lock->displaced_header(); + end->set_obj(NULL); + +- if (!lockee->mark()->has_bias_pattern()) { ++ if (!lockee->mark().has_bias_pattern()) { + // If it isn't recursive we either must swap old header or call the runtime + if (header != NULL) { + markOop old_header = markOopDesc::encode(lock); +@@ -3105,7 +3105,7 @@ run: + markOop header = lock->displaced_header(); + base->set_obj(NULL); + +- if (!rcvr->mark()->has_bias_pattern()) { ++ if (!rcvr->mark().has_bias_pattern()) { + base->set_obj(NULL); + // If it isn't recursive we either must swap old header or call the runtime + if (header != NULL) { +diff --git a/src/hotspot/share/jfr/leakprofiler/chains/bfsClosure.cpp b/src/hotspot/share/jfr/leakprofiler/chains/bfsClosure.cpp +index e436746e8..d14d67962 100644 +--- a/src/hotspot/share/jfr/leakprofiler/chains/bfsClosure.cpp ++++ b/src/hotspot/share/jfr/leakprofiler/chains/bfsClosure.cpp +@@ -131,7 +131,7 @@ void BFSClosure::closure_impl(const oop* reference, const oop pointee) { + if (!_mark_bits->is_marked(pointee)) { + _mark_bits->mark_obj(pointee); + // is the pointee a sample object? +- if (NULL == pointee->mark()) { ++ if (NULL == pointee->mark().to_pointer()) { + add_chain(reference, pointee); + } + +@@ -148,7 +148,7 @@ void BFSClosure::closure_impl(const oop* reference, const oop pointee) { + + void BFSClosure::add_chain(const oop* reference, const oop pointee) { + assert(pointee != NULL, "invariant"); +- assert(NULL == pointee->mark(), "invariant"); ++ assert(NULL == pointee->mark().to_pointer(), "invariant"); + Edge leak_edge(_current_parent, reference); + _edge_store->put_chain(&leak_edge, _current_parent == NULL ? 1 : _current_frontier_level + 2); + } +diff --git a/src/hotspot/share/jfr/leakprofiler/chains/dfsClosure.cpp b/src/hotspot/share/jfr/leakprofiler/chains/dfsClosure.cpp +index c347901bf..b1a1fca20 100644 +--- a/src/hotspot/share/jfr/leakprofiler/chains/dfsClosure.cpp ++++ b/src/hotspot/share/jfr/leakprofiler/chains/dfsClosure.cpp +@@ -121,7 +121,7 @@ void DFSClosure::closure_impl(const oop* reference, const oop pointee) { + assert(_mark_bits->is_marked(pointee), "invariant"); + + // is the pointee a sample object? +- if (NULL == pointee->mark()) { ++ if (NULL == pointee->mark().to_pointer()) { + add_chain(); + } + +diff --git a/src/hotspot/share/jfr/leakprofiler/chains/edgeStore.cpp b/src/hotspot/share/jfr/leakprofiler/chains/edgeStore.cpp +index ad549f486..b9f09fa9a 100644 +--- a/src/hotspot/share/jfr/leakprofiler/chains/edgeStore.cpp ++++ b/src/hotspot/share/jfr/leakprofiler/chains/edgeStore.cpp +@@ -237,8 +237,8 @@ StoredEdge* EdgeStore::associate_leak_context_with_candidate(const Edge* edge) { + StoredEdge* const leak_context_edge = put(edge->reference()); + oop sample_object = edge->pointee(); + assert(sample_object != NULL, "invariant"); +- assert(NULL == sample_object->mark(), "invariant"); +- sample_object->set_mark(markOop(leak_context_edge)); ++ assert(NULL == sample_object->mark().to_pointer(), "invariant"); ++ sample_object->set_mark(markOop::from_pointer(leak_context_edge)); + return leak_context_edge; + } + +diff --git a/src/hotspot/share/jfr/leakprofiler/chains/edgeUtils.cpp b/src/hotspot/share/jfr/leakprofiler/chains/edgeUtils.cpp +index 699fd4ac4..f4c925004 100644 +--- a/src/hotspot/share/jfr/leakprofiler/chains/edgeUtils.cpp ++++ b/src/hotspot/share/jfr/leakprofiler/chains/edgeUtils.cpp +@@ -36,7 +36,7 @@ + #include "runtime/handles.inline.hpp" + + bool EdgeUtils::is_leak_edge(const Edge& edge) { +- return (const Edge*)edge.pointee()->mark() == &edge; ++ return (const Edge*)edge.pointee()->mark().to_pointer() == &edge; + } + + static bool is_static_field(const oop ref_owner, const InstanceKlass* ik, int offset) { +diff --git a/src/hotspot/share/jfr/leakprofiler/chains/objectSampleMarker.hpp b/src/hotspot/share/jfr/leakprofiler/chains/objectSampleMarker.hpp +index 9a97a373f..2c2616feb 100644 +--- a/src/hotspot/share/jfr/leakprofiler/chains/objectSampleMarker.hpp ++++ b/src/hotspot/share/jfr/leakprofiler/chains/objectSampleMarker.hpp +@@ -45,7 +45,7 @@ class ObjectSampleMarker : public StackObj { + const markOop mark_oop) : _obj(obj), + _mark_oop(mark_oop) {} + public: +- ObjectSampleMarkOop() : _obj(NULL), _mark_oop(NULL) {} ++ ObjectSampleMarkOop() : _obj(NULL), _mark_oop(markOop::zero()) {} + }; + + GrowableArray* _store; +@@ -72,9 +72,9 @@ class ObjectSampleMarker : public StackObj { + // This is an "impossible" state during a safepoint, + // hence we will use it to quickly identify sample objects + // during the reachability search from gc roots. +- assert(NULL == markOopDesc::INFLATING(), "invariant"); ++ assert(NULL == markOopDesc::INFLATING().to_pointer(), "invariant"); + obj->set_mark(markOopDesc::INFLATING()); +- assert(NULL == obj->mark(), "invariant"); ++ assert(NULL == obj->mark().to_pointer(), "invariant"); + } + }; + +diff --git a/src/hotspot/share/jfr/leakprofiler/checkpoint/eventEmitter.cpp b/src/hotspot/share/jfr/leakprofiler/checkpoint/eventEmitter.cpp +index 02d9c2d9c..438f91763 100644 +--- a/src/hotspot/share/jfr/leakprofiler/checkpoint/eventEmitter.cpp ++++ b/src/hotspot/share/jfr/leakprofiler/checkpoint/eventEmitter.cpp +@@ -111,7 +111,7 @@ void EventEmitter::write_event(const ObjectSample* sample, EdgeStore* edge_store + traceid gc_root_id = 0; + const Edge* edge = NULL; + if (SafepointSynchronize::is_at_safepoint()) { +- edge = (const Edge*)(*object_addr)->mark(); ++ edge = (const Edge*)(*object_addr)->mark().to_pointer(); + } + if (edge == NULL) { + // In order to dump out a representation of the event +diff --git a/src/hotspot/share/jfr/leakprofiler/utilities/saveRestore.cpp b/src/hotspot/share/jfr/leakprofiler/utilities/saveRestore.cpp +index 3cfff5a70..14055853e 100644 +--- a/src/hotspot/share/jfr/leakprofiler/utilities/saveRestore.cpp ++++ b/src/hotspot/share/jfr/leakprofiler/utilities/saveRestore.cpp +@@ -27,7 +27,7 @@ + #include "jfr/leakprofiler/utilities/saveRestore.hpp" + #include "oops/oop.inline.hpp" + +-MarkOopContext::MarkOopContext() : _obj(NULL), _mark_oop(NULL) {} ++MarkOopContext::MarkOopContext() : _obj(NULL), _mark_oop(markOop::zero()) {} + + MarkOopContext::MarkOopContext(const oop obj) : _obj(obj), _mark_oop(obj->mark()) { + assert(_obj->mark() == _mark_oop, "invariant"); +@@ -36,9 +36,9 @@ MarkOopContext::MarkOopContext(const oop obj) : _obj(obj), _mark_oop(obj->mark() + // This is an "impossible" state during a safepoint, + // hence we will use it to quickly identify objects + // during the reachability search from gc roots. +- assert(NULL == markOopDesc::INFLATING(), "invariant"); ++ assert(markOop::zero() == markOopDesc::INFLATING(), "invariant"); + _obj->set_mark(markOopDesc::INFLATING()); +- assert(NULL == obj->mark(), "invariant"); ++ assert(markOop::zero() == obj->mark(), "invariant"); + } + + MarkOopContext::~MarkOopContext() { +@@ -48,7 +48,7 @@ MarkOopContext::~MarkOopContext() { + } + } + +-MarkOopContext::MarkOopContext(const MarkOopContext& rhs) : _obj(NULL), _mark_oop(NULL) { ++MarkOopContext::MarkOopContext(const MarkOopContext& rhs) : _obj(NULL), _mark_oop(markOop::zero()) { + swap(const_cast(rhs)); + } + +diff --git a/src/hotspot/share/memory/metaspaceShared.cpp b/src/hotspot/share/memory/metaspaceShared.cpp +index c636ddbe9..b9aa49171 100644 +--- a/src/hotspot/share/memory/metaspaceShared.cpp ++++ b/src/hotspot/share/memory/metaspaceShared.cpp +@@ -1865,7 +1865,7 @@ void MetaspaceShared::dump_open_archive_heap_objects( + } + + unsigned MetaspaceShared::obj_hash(oop const& p) { +- assert(!p->mark()->has_bias_pattern(), ++ assert(!p->mark().has_bias_pattern(), + "this object should never have been locked"); // so identity_hash won't safepoin + unsigned hash = (unsigned)p->identity_hash(); + return hash; +diff --git a/src/hotspot/share/memory/universe.cpp b/src/hotspot/share/memory/universe.cpp +index eab9576bc..933b17676 100644 +--- a/src/hotspot/share/memory/universe.cpp ++++ b/src/hotspot/share/memory/universe.cpp +@@ -1315,7 +1315,7 @@ uintptr_t Universe::verify_mark_mask() { + + uintptr_t Universe::verify_mark_bits() { + intptr_t mask = verify_mark_mask(); +- intptr_t bits = (intptr_t)markOopDesc::prototype(); ++ intptr_t bits = (intptr_t)markOopDesc::prototype().value(); + assert((bits & ~mask) == 0, "no stray header bits"); + return bits; + } +diff --git a/src/hotspot/share/memory/virtualspace.cpp b/src/hotspot/share/memory/virtualspace.cpp +index d67f624ca..691838c70 100644 +--- a/src/hotspot/share/memory/virtualspace.cpp ++++ b/src/hotspot/share/memory/virtualspace.cpp +@@ -628,9 +628,9 @@ ReservedHeapSpace::ReservedHeapSpace(size_t size, size_t alignment, bool large, + initialize(size, alignment, large, NULL, false); + } + +- assert(markOopDesc::encode_pointer_as_mark(_base)->decode_pointer() == _base, ++ assert(markOopDesc::encode_pointer_as_mark(_base).decode_pointer() == _base, + "area must be distinguishable from marks for mark-sweep"); +- assert(markOopDesc::encode_pointer_as_mark(&_base[size])->decode_pointer() == &_base[size], ++ assert(markOopDesc::encode_pointer_as_mark(&_base[size]).decode_pointer() == &_base[size], + "area must be distinguishable from marks for mark-sweep"); + + if (base() != NULL) { +diff --git a/src/hotspot/share/oops/klass.cpp b/src/hotspot/share/oops/klass.cpp +index 4b97cf7eb..cacfaf82f 100644 +--- a/src/hotspot/share/oops/klass.cpp ++++ b/src/hotspot/share/oops/klass.cpp +@@ -682,7 +682,7 @@ void Klass::oop_print_on(oop obj, outputStream* st) { + + if (WizardMode) { + // print header +- obj->mark()->print_on(st); ++ obj->mark().print_on(st); + } + + // print class +diff --git a/src/hotspot/share/oops/klass.hpp b/src/hotspot/share/oops/klass.hpp +index 3ade5867a..9094ff0a9 100644 +--- a/src/hotspot/share/oops/klass.hpp ++++ b/src/hotspot/share/oops/klass.hpp +@@ -28,6 +28,7 @@ + #include "classfile/classLoaderData.hpp" + #include "memory/iterator.hpp" + #include "memory/memRegion.hpp" ++#include "oops/markOop.hpp" + #include "oops/metadata.hpp" + #include "oops/oop.hpp" + #include "oops/oopHandle.hpp" +diff --git a/src/hotspot/share/oops/klass.inline.hpp b/src/hotspot/share/oops/klass.inline.hpp +index 560998057..89917e4f6 100644 +--- a/src/hotspot/share/oops/klass.inline.hpp ++++ b/src/hotspot/share/oops/klass.inline.hpp +@@ -30,7 +30,7 @@ + #include "oops/markOop.hpp" + + inline void Klass::set_prototype_header(markOop header) { +- assert(!header->has_bias_pattern() || is_instance_klass(), "biased locking currently only supported for Java instances"); ++ assert(!header.has_bias_pattern() || is_instance_klass(), "biased locking currently only supported for Java instances"); + _prototype_header = header; + } + +diff --git a/src/hotspot/share/oops/markOop.hpp b/src/hotspot/share/oops/markOop.hpp +index 649217c88..036b42372 100644 +--- a/src/hotspot/share/oops/markOop.hpp ++++ b/src/hotspot/share/oops/markOop.hpp +@@ -101,10 +101,9 @@ class BasicLock; + class ObjectMonitor; + class JavaThread; + +-class markOopDesc: public oopDesc { ++class markOop { + private: +- // Conversion +- uintptr_t value() const { return (uintptr_t) this; } ++ uintptr_t _value; + + public: + // Constants +@@ -117,6 +116,29 @@ class markOopDesc: public oopDesc { + epoch_bits = 2 + }; + ++ explicit markOop(uintptr_t value) : _value(value) {} ++ ++ markOop() { /* uninitialized */} ++ ++ // It is critical for performance that this class be trivially ++ // destructable, copyable, and assignable. ++ ++ static markOop from_pointer(void* ptr) { ++ return markOop((uintptr_t)ptr); ++ } ++ void* to_pointer() const { ++ return (void*)_value; ++ } ++ ++ bool operator==(const markOop& other) const { ++ return _value == other._value; ++ } ++ bool operator!=(const markOop& other) const { ++ return !operator==(other); ++ } ++ // Conversion ++ uintptr_t value() const { return _value; } ++ + // The biased locking code currently requires that the age bits be + // contiguous to the lock bits. + enum { lock_shift = 0, +@@ -164,6 +186,9 @@ class markOopDesc: public oopDesc { + + enum { max_bias_epoch = epoch_mask }; + ++ // Creates a markOop with all bits set to zero. ++ static markOop zero() { return markOop(uintptr_t(0)); } ++ + // Biased Locking accessors. + // These must be checked by all code which calls into the + // ObjectSynchronizer and other code. The biasing is not understood +@@ -224,7 +249,7 @@ class markOopDesc: public oopDesc { + // check for and avoid overwriting a 0 value installed by some + // other thread. (They should spin or block instead. The 0 value + // is transient and *should* be short-lived). +- static markOop INFLATING() { return (markOop) 0; } // inflate-in-progress ++ static markOop INFLATING() { return zero(); } // inflate-in-progress + + // Should this header be preserved during GC? + inline bool must_be_preserved(oop obj_containing_mark) const; +@@ -294,17 +319,17 @@ class markOopDesc: public oopDesc { + markOop copy_set_hash(intptr_t hash) const { + intptr_t tmp = value() & (~hash_mask_in_place); + tmp |= ((hash & hash_mask) << hash_shift); +- return (markOop)tmp; ++ return markOop(tmp); + } + // it is only used to be stored into BasicLock as the + // indicator that the lock is using heavyweight monitor + static markOop unused_mark() { +- return (markOop) marked_value; ++ return markOop(marked_value); + } + // the following two functions create the markOop to be + // stored into object header, it encodes monitor info + static markOop encode(BasicLock* lock) { +- return (markOop) lock; ++ return from_pointer(lock); + } + static markOop encode(ObjectMonitor* monitor) { + intptr_t tmp = (intptr_t) monitor; +@@ -330,7 +355,7 @@ class markOopDesc: public oopDesc { + assert((v & ~age_mask) == 0, "shouldn't overflow age field"); + return markOop((value() & ~age_mask_in_place) | (((uintptr_t)v & age_mask) << age_shift)); + } +- markOop incr_age() const { return age() == max_age ? markOop(this) : set_age(age() + 1); } ++ markOop incr_age() const { return age() == max_age ? markOop(_value) : set_age(age() + 1); } + + // hash operations + intptr_t hash() const { +@@ -353,10 +378,10 @@ class markOopDesc: public oopDesc { + void print_on(outputStream* st) const; + + // Prepare address of oop for placement into mark +- inline static markOop encode_pointer_as_mark(void* p) { return markOop(p)->set_marked(); } ++ inline static markOop encode_pointer_as_mark(void* p) { return from_pointer(p).set_marked(); } + + // Recover address of oop from encoded form used in mark +- inline void* decode_pointer() { if (UseBiasedLocking && has_bias_pattern()) return NULL; return clear_lock_bits(); } ++ inline void* decode_pointer() { if (UseBiasedLocking && has_bias_pattern()) return NULL; return (void*)clear_lock_bits().value(); } + + // These markOops indicate cms free chunk blocks and not objects. + // In 64 bit, the markOop is set to distinguish them from oops. +@@ -375,7 +400,7 @@ class markOopDesc: public oopDesc { + + #ifdef _LP64 + static markOop cms_free_prototype() { +- return markOop(((intptr_t)prototype() & ~cms_mask_in_place) | ++ return markOop(((intptr_t)prototype().value() & ~cms_mask_in_place) | + ((cms_free_chunk_pattern & cms_mask) << cms_shift)); + } + uintptr_t cms_encoding() const { +@@ -389,10 +414,23 @@ class markOopDesc: public oopDesc { + size_t get_size() const { return (size_t)(value() >> size_shift); } + static markOop set_size_and_free(size_t size) { + assert((size & ~size_mask) == 0, "shouldn't overflow size field"); +- return markOop(((intptr_t)cms_free_prototype() & ~size_mask_in_place) | ++ return markOop(((intptr_t)cms_free_prototype().value() & ~size_mask_in_place) | + (((intptr_t)size & size_mask) << size_shift)); + } + #endif // _LP64 + }; + ++// Add an alias for the Desc type to minimize code churn. ++typedef class markOop markOopDesc; ++ ++// Support atomic operations. ++template<> ++struct PrimitiveConversions::Translate : public TrueType { ++ typedef markOop Value; ++ typedef uintptr_t Decayed; ++ ++ static Decayed decay(const Value& x) { return x.value(); } ++ static Value recover(Decayed x) { return Value(x); } ++}; ++ + #endif // SHARE_VM_OOPS_MARKOOP_HPP +diff --git a/src/hotspot/share/oops/markOop.inline.hpp b/src/hotspot/share/oops/markOop.inline.hpp +index 77d2fee0e..f0e042070 100644 +--- a/src/hotspot/share/oops/markOop.inline.hpp ++++ b/src/hotspot/share/oops/markOop.inline.hpp +@@ -39,7 +39,7 @@ inline bool markOopDesc::must_be_preserved_with_bias(oop obj_containing_mark) co + return false; + } + markOop prototype_header = prototype_for_object(obj_containing_mark); +- if (prototype_header->has_bias_pattern()) { ++ if (prototype_header.has_bias_pattern()) { + // Individual instance which has its bias revoked; must return + // true for correctness + return true; +@@ -68,7 +68,7 @@ inline bool markOopDesc::must_be_preserved_with_bias_for_promotion_failure(oop o + // BiasedLocking::preserve_marks() / restore_marks() in the middle + // of a scavenge when a promotion failure has first been detected. + if (has_bias_pattern() || +- prototype_for_object(obj_containing_mark)->has_bias_pattern()) { ++ prototype_for_object(obj_containing_mark).has_bias_pattern()) { + return true; + } + return (!is_unlocked() || !has_no_hash()); +@@ -89,7 +89,7 @@ inline bool markOopDesc::must_be_preserved_with_bias_for_cms_scavenge(Klass* kla + assert(UseBiasedLocking, "unexpected"); + // CMS scavenges preserve mark words in similar fashion to promotion failures; see above + if (has_bias_pattern() || +- klass_of_obj_containing_mark->prototype_header()->has_bias_pattern()) { ++ klass_of_obj_containing_mark->prototype_header().has_bias_pattern()) { + return true; + } + return (!is_unlocked() || !has_no_hash()); +@@ -106,7 +106,7 @@ inline bool markOopDesc::must_be_preserved_for_cms_scavenge(Klass* klass_of_obj_ + inline markOop markOopDesc::prototype_for_object(oop obj) { + #ifdef ASSERT + markOop prototype_header = obj->klass()->prototype_header(); +- assert(prototype_header == prototype() || prototype_header->has_bias_pattern(), "corrupt prototype header"); ++ assert(prototype_header == prototype() || prototype_header.has_bias_pattern(), "corrupt prototype header"); + #endif + return obj->klass()->prototype_header(); + } +diff --git a/src/hotspot/share/oops/oop.cpp b/src/hotspot/share/oops/oop.cpp +index 0470cbbde..ab598d767 100644 +--- a/src/hotspot/share/oops/oop.cpp ++++ b/src/hotspot/share/oops/oop.cpp +@@ -130,7 +130,7 @@ bool oopDesc::is_oop(oop obj, bool ignore_mark_word) { + if (ignore_mark_word) { + return true; + } +- if (obj->mark_raw() != NULL) { ++ if (obj->mark_raw().value() != 0) { + return true; + } + return !SafepointSynchronize::is_at_safepoint(); +@@ -145,7 +145,7 @@ bool oopDesc::is_oop_or_null(oop obj, bool ignore_mark_word) { + // used only for asserts + bool oopDesc::is_unlocked_oop() const { + if (!Universe::heap()->is_in_reserved(this)) return false; +- return mark()->is_unlocked(); ++ return mark().is_unlocked(); + } + #endif // PRODUCT + +diff --git a/src/hotspot/share/oops/oop.hpp b/src/hotspot/share/oops/oop.hpp +index 4430530e5..6311ee908 100644 +--- a/src/hotspot/share/oops/oop.hpp ++++ b/src/hotspot/share/oops/oop.hpp +@@ -28,6 +28,7 @@ + #include "memory/iterator.hpp" + #include "memory/memRegion.hpp" + #include "oops/access.hpp" ++#include "oops/markOop.hpp" + #include "oops/metadata.hpp" + #include "runtime/atomic.hpp" + #include "utilities/macros.hpp" +diff --git a/src/hotspot/share/oops/oop.inline.hpp b/src/hotspot/share/oops/oop.inline.hpp +index 6c631f545..dfeecb9c5 100644 +--- a/src/hotspot/share/oops/oop.inline.hpp ++++ b/src/hotspot/share/oops/oop.inline.hpp +@@ -44,23 +44,24 @@ + // We need a separate file to avoid circular references + + markOop oopDesc::mark() const { +- return HeapAccess::load_at(as_oop(), mark_offset_in_bytes()); ++ uintptr_t v = HeapAccess::load_at(as_oop(), mark_offset_in_bytes()); ++ return markOop(v); + } + + markOop oopDesc::mark_raw() const { +- return _mark; ++ return Atomic::load(&_mark);; + } + + markOop* oopDesc::mark_addr_raw() const { + return (markOop*) &_mark; + } + +-void oopDesc::set_mark(volatile markOop m) { +- HeapAccess::store_at(as_oop(), mark_offset_in_bytes(), m); ++void oopDesc::set_mark(markOop m) { ++ HeapAccess::store_at(as_oop(), mark_offset_in_bytes(), m.value()); + } + +-void oopDesc::set_mark_raw(volatile markOop m) { +- _mark = m; ++void oopDesc::set_mark_raw(markOop m) { ++ Atomic::store(m, &_mark); + } + + void oopDesc::set_mark_raw(HeapWord* mem, markOop m) { +@@ -68,11 +69,12 @@ void oopDesc::set_mark_raw(HeapWord* mem, markOop m) { + } + + void oopDesc::release_set_mark(markOop m) { +- HeapAccess::store_at(as_oop(), mark_offset_in_bytes(), m); ++ HeapAccess::store_at(as_oop(), mark_offset_in_bytes(), m.value()); + } + + markOop oopDesc::cas_set_mark(markOop new_mark, markOop old_mark) { +- return HeapAccess<>::atomic_cmpxchg_at(new_mark, as_oop(), mark_offset_in_bytes(), old_mark); ++ uintptr_t v = HeapAccess<>::atomic_cmpxchg_at(new_mark.value(), as_oop(), mark_offset_in_bytes(), old_mark.value()); ++ return markOop(v); + } + + markOop oopDesc::cas_set_mark_raw(markOop new_mark, markOop old_mark, atomic_memory_order order) { +@@ -318,31 +320,31 @@ inline jdouble oopDesc::double_field(int offset) const { return Hea + inline void oopDesc::double_field_put(int offset, jdouble value) { HeapAccess<>::store_at(as_oop(), offset, value); } + + bool oopDesc::is_locked() const { +- return mark()->is_locked(); ++ return mark().is_locked(); + } + + bool oopDesc::is_unlocked() const { +- return mark()->is_unlocked(); ++ return mark().is_unlocked(); + } + + bool oopDesc::has_bias_pattern() const { +- return mark()->has_bias_pattern(); ++ return mark().has_bias_pattern(); + } + + bool oopDesc::has_bias_pattern_raw() const { +- return mark_raw()->has_bias_pattern(); ++ return mark_raw().has_bias_pattern(); + } + + // Used only for markSweep, scavenging + bool oopDesc::is_gc_marked() const { +- return mark_raw()->is_marked(); ++ return mark_raw().is_marked(); + } + + // Used by scavengers + bool oopDesc::is_forwarded() const { + // The extra heap check is needed since the obj might be locked, in which case the + // mark would point to a stack location and have the sentinel bit cleared +- return mark_raw()->is_marked(); ++ return mark_raw().is_marked(); + } + + // Used by scavengers +@@ -355,7 +357,7 @@ void oopDesc::forward_to(oop p) { + !MetaspaceShared::is_archive_object(p), + "forwarding archive object"); + markOop m = markOopDesc::encode_pointer_as_mark(p); +- assert(m->decode_pointer() == p, "encoding must be reversable"); ++ assert(m.decode_pointer() == p, "encoding must be reversable"); + set_mark_raw(m); + } + +@@ -366,7 +368,7 @@ bool oopDesc::cas_forward_to(oop p, markOop compare, atomic_memory_order order) + assert(Universe::heap()->is_in_reserved(p), + "forwarding to something not in heap"); + markOop m = markOopDesc::encode_pointer_as_mark(p); +- assert(m->decode_pointer() == p, "encoding must be reversable"); ++ assert(m.decode_pointer() == p, "encoding must be reversable"); + return cas_set_mark_raw(m, compare, order) == compare; + } + +@@ -375,10 +377,10 @@ oop oopDesc::forward_to_atomic(oop p, atomic_memory_order order) { + markOop forwardPtrMark = markOopDesc::encode_pointer_as_mark(p); + markOop curMark; + +- assert(forwardPtrMark->decode_pointer() == p, "encoding must be reversable"); ++ assert(forwardPtrMark.decode_pointer() == p, "encoding must be reversable"); + assert(sizeof(markOop) == sizeof(intptr_t), "CAS below requires this."); + +- while (!oldMark->is_marked()) { ++ while (!oldMark.is_marked()) { + curMark = cas_set_mark_raw(forwardPtrMark, oldMark, order); + assert(is_forwarded(), "object should have been forwarded"); + if (curMark == oldMark) { +@@ -396,33 +398,32 @@ oop oopDesc::forward_to_atomic(oop p, atomic_memory_order order) { + // The forwardee is used when copying during scavenge and mark-sweep. + // It does need to clear the low two locking- and GC-related bits. + oop oopDesc::forwardee() const { +- return (oop) mark_raw()->decode_pointer(); ++ return (oop) mark_raw().decode_pointer(); + } + + // Note that the forwardee is not the same thing as the displaced_mark. + // The forwardee is used when copying during scavenge and mark-sweep. + // It does need to clear the low two locking- and GC-related bits. + oop oopDesc::forwardee_acquire() const { +- markOop m = OrderAccess::load_acquire(&_mark); +- return (oop) m->decode_pointer(); ++ return (oop) OrderAccess::load_acquire(&_mark).decode_pointer(); + } + + // The following method needs to be MT safe. + uint oopDesc::age() const { + assert(!is_forwarded(), "Attempt to read age from forwarded mark"); + if (has_displaced_mark_raw()) { +- return displaced_mark_raw()->age(); ++ return displaced_mark_raw().age(); + } else { +- return mark_raw()->age(); ++ return mark_raw().age(); + } + } + + void oopDesc::incr_age() { + assert(!is_forwarded(), "Attempt to increment age of forwarded mark"); + if (has_displaced_mark_raw()) { +- set_displaced_mark_raw(displaced_mark_raw()->incr_age()); ++ set_displaced_mark_raw(displaced_mark_raw().incr_age()); + } else { +- set_mark_raw(mark_raw()->incr_age()); ++ set_mark_raw(mark_raw().incr_age()); + } + } + +@@ -489,25 +490,25 @@ intptr_t oopDesc::identity_hash() { + // Fast case; if the object is unlocked and the hash value is set, no locking is needed + // Note: The mark must be read into local variable to avoid concurrent updates. + markOop mrk = mark(); +- if (mrk->is_unlocked() && !mrk->has_no_hash()) { +- return mrk->hash(); +- } else if (mrk->is_marked()) { +- return mrk->hash(); ++ if (mrk.is_unlocked() && !mrk.has_no_hash()) { ++ return mrk.hash(); ++ } else if (mrk.is_marked()) { ++ return mrk.hash(); + } else { + return slow_identity_hash(); + } + } + + bool oopDesc::has_displaced_mark_raw() const { +- return mark_raw()->has_displaced_mark_helper(); ++ return mark_raw().has_displaced_mark_helper(); + } + + markOop oopDesc::displaced_mark_raw() const { +- return mark_raw()->displaced_mark_helper(); ++ return mark_raw().displaced_mark_helper(); + } + + void oopDesc::set_displaced_mark_raw(markOop m) { +- mark_raw()->set_displaced_mark_helper(m); ++ mark_raw().set_displaced_mark_helper(m); + } + + #endif // SHARE_VM_OOPS_OOP_INLINE_HPP +diff --git a/src/hotspot/share/oops/oopsHierarchy.hpp b/src/hotspot/share/oops/oopsHierarchy.hpp +index d419aa156..f5ae4084b 100644 +--- a/src/hotspot/share/oops/oopsHierarchy.hpp ++++ b/src/hotspot/share/oops/oopsHierarchy.hpp +@@ -40,7 +40,6 @@ typedef juint narrowOop; // Offset instead of address for an oop within a java o + typedef juint narrowKlass; + + typedef void* OopOrNarrowOopStar; +-typedef class markOopDesc* markOop; + + #ifndef CHECK_UNHANDLED_OOPS + +@@ -120,7 +119,6 @@ public: + operator oopDesc* () const volatile { return obj(); } + operator intptr_t* () const { return (intptr_t*)obj(); } + operator PromotedObject* () const { return (PromotedObject*)obj(); } +- operator markOop () const volatile { return markOop(obj()); } + operator address () const { return (address)obj(); } + + // from javaCalls.cpp +diff --git a/src/hotspot/share/opto/macro.cpp b/src/hotspot/share/opto/macro.cpp +index 155c6893e..933adcb3e 100644 +--- a/src/hotspot/share/opto/macro.cpp ++++ b/src/hotspot/share/opto/macro.cpp +@@ -1773,7 +1773,7 @@ PhaseMacroExpand::initialize_object(AllocateNode* alloc, + if (UseBiasedLocking && (length == NULL)) { + mark_node = make_load(control, rawmem, klass_node, in_bytes(Klass::prototype_header_offset()), TypeRawPtr::BOTTOM, T_ADDRESS); + } else { +- mark_node = makecon(TypeRawPtr::make((address)markOopDesc::prototype())); ++ mark_node = makecon(TypeRawPtr::make((address)markOopDesc::prototype().value())); + } + rawmem = make_store(control, rawmem, object, oopDesc::mark_offset_in_bytes(), mark_node, T_ADDRESS); + +diff --git a/src/hotspot/share/prims/jvmtiEnvBase.cpp b/src/hotspot/share/prims/jvmtiEnvBase.cpp +index 093c79042..28ef47815 100644 +--- a/src/hotspot/share/prims/jvmtiEnvBase.cpp ++++ b/src/hotspot/share/prims/jvmtiEnvBase.cpp +@@ -965,16 +965,16 @@ JvmtiEnvBase::get_object_monitor_usage(JavaThread* calling_thread, jobject objec + { + markOop mark = hobj()->mark(); + +- if (!mark->has_monitor()) { ++ if (!mark.has_monitor()) { + // this object has a lightweight monitor + +- if (mark->has_locker()) { +- owner = (address)mark->locker(); // save the address of the Lock word ++ if (mark.has_locker()) { ++ owner = (address)mark.locker(); // save the address of the Lock word + } + // implied else: no owner + } else { + // this object has a heavyweight monitor +- mon = mark->monitor(); ++ mon = mark.monitor(); + + // The owner field of a heavyweight monitor may be NULL for no + // owner, a JavaThread * or it may still be the address of the +diff --git a/src/hotspot/share/prims/jvmtiTagMap.cpp b/src/hotspot/share/prims/jvmtiTagMap.cpp +index 1baa32c33..aa8f5230e 100644 +--- a/src/hotspot/share/prims/jvmtiTagMap.cpp ++++ b/src/hotspot/share/prims/jvmtiTagMap.cpp +@@ -1645,7 +1645,7 @@ class RestoreMarksClosure : public ObjectClosure { + void do_object(oop o) { + if (o != NULL) { + markOop mark = o->mark(); +- if (mark->is_marked()) { ++ if (mark.is_marked()) { + o->init_mark(); + } + } +@@ -1723,23 +1723,23 @@ void ObjectMarker::done() { + // mark an object + inline void ObjectMarker::mark(oop o) { + assert(Universe::heap()->is_in(o), "sanity check"); +- assert(!o->mark()->is_marked(), "should only mark an object once"); ++ assert(!o->mark().is_marked(), "should only mark an object once"); + + // object's mark word + markOop mark = o->mark(); + +- if (mark->must_be_preserved(o)) { ++ if (mark.must_be_preserved(o)) { + _saved_mark_stack->push(mark); + _saved_oop_stack->push(o); + } + + // mark the object +- o->set_mark(markOopDesc::prototype()->set_marked()); ++ o->set_mark(markOopDesc::prototype().set_marked()); + } + + // return true if object is marked + inline bool ObjectMarker::visited(oop o) { +- return o->mark()->is_marked(); ++ return o->mark().is_marked(); + } + + // Stack allocated class to help ensure that ObjectMarker is used +diff --git a/src/hotspot/share/prims/whitebox.cpp b/src/hotspot/share/prims/whitebox.cpp +index 82a811062..29f67a28e 100644 +--- a/src/hotspot/share/prims/whitebox.cpp ++++ b/src/hotspot/share/prims/whitebox.cpp +@@ -1689,7 +1689,7 @@ WB_END + + WB_ENTRY(jboolean, WB_IsMonitorInflated(JNIEnv* env, jobject wb, jobject obj)) + oop obj_oop = JNIHandles::resolve(obj); +- return (jboolean) obj_oop->mark()->has_monitor(); ++ return (jboolean) obj_oop->mark().has_monitor(); + WB_END + + WB_ENTRY(void, WB_ForceSafepoint(JNIEnv* env, jobject wb)) +diff --git a/src/hotspot/share/runtime/basicLock.cpp b/src/hotspot/share/runtime/basicLock.cpp +index 5d69b30ae..2090e4906 100644 +--- a/src/hotspot/share/runtime/basicLock.cpp ++++ b/src/hotspot/share/runtime/basicLock.cpp +@@ -29,8 +29,8 @@ + void BasicLock::print_on(outputStream* st) const { + st->print("monitor"); + markOop moop = displaced_header(); +- if (moop != NULL) +- moop->print_on(st); ++ if (moop.value() != 0) ++ moop.print_on(st); + } + + void BasicLock::move_to(oop obj, BasicLock* dest) { +@@ -62,7 +62,7 @@ void BasicLock::move_to(oop obj, BasicLock* dest) { + // is small (given the support for inflated fast-path locking in the fast_lock, etc) + // we'll leave that optimization for another time. + +- if (displaced_header()->is_neutral()) { ++ if (displaced_header().is_neutral()) { + ObjectSynchronizer::inflate_helper(obj); + // WARNING: We can not put check here, because the inflation + // will not update the displaced header. Once BasicLock is inflated, +@@ -75,6 +75,6 @@ void BasicLock::move_to(oop obj, BasicLock* dest) { + // we can find any flavor mark in the displaced mark. + } + // [RGV] The next line appears to do nothing! +- intptr_t dh = (intptr_t) displaced_header(); ++ intptr_t dh = (intptr_t) displaced_header().value(); + dest->set_displaced_header(displaced_header()); + } +diff --git a/src/hotspot/share/runtime/basicLock.hpp b/src/hotspot/share/runtime/basicLock.hpp +index 68fd6c332..388741734 100644 +--- a/src/hotspot/share/runtime/basicLock.hpp ++++ b/src/hotspot/share/runtime/basicLock.hpp +@@ -26,6 +26,7 @@ + #define SHARE_VM_RUNTIME_BASICLOCK_HPP + + #include "oops/markOop.hpp" ++#include "runtime/atomic.hpp" + #include "runtime/handles.hpp" + + class BasicLock { +@@ -34,8 +35,13 @@ class BasicLock { + private: + volatile markOop _displaced_header; + public: +- markOop displaced_header() const { return _displaced_header; } +- void set_displaced_header(markOop header) { _displaced_header = header; } ++ markOop displaced_header() const { ++ return Atomic::load(&_displaced_header); ++ } ++ ++ void set_displaced_header(markOop header) { ++ Atomic::store(header, &_displaced_header); ++ } + + void print_on(outputStream* st) const; + +diff --git a/src/hotspot/share/runtime/biasedLocking.cpp b/src/hotspot/share/runtime/biasedLocking.cpp +index a324120d8..2c23a4288 100644 +--- a/src/hotspot/share/runtime/biasedLocking.cpp ++++ b/src/hotspot/share/runtime/biasedLocking.cpp +@@ -150,27 +150,27 @@ static GrowableArray* get_or_compute_monitor_info(JavaThread* thre + return info; + } + +-// After the call, *biased_locker will be set to obj->mark()->biased_locker() if biased_locker != NULL, ++// After the call, *biased_locker will be set to obj->mark().biased_locker() if biased_locker != NULL, + // AND it is a living thread. Otherwise it will not be updated, (i.e. the caller is responsible for initialization). + static BiasedLocking::Condition revoke_bias(oop obj, bool allow_rebias, bool is_bulk, JavaThread* requesting_thread, JavaThread** biased_locker) { + markOop mark = obj->mark(); +- if (!mark->has_bias_pattern()) { ++ if (!mark.has_bias_pattern()) { + if (log_is_enabled(Info, biasedlocking)) { + ResourceMark rm; + log_info(biasedlocking)(" (Skipping revocation of object " INTPTR_FORMAT + ", mark " INTPTR_FORMAT ", type %s" + ", requesting thread " INTPTR_FORMAT + " because it's no longer biased)", +- p2i((void *)obj), (intptr_t) mark, ++ p2i((void *)obj), (intptr_t) mark.value(), + obj->klass()->external_name(), + (intptr_t) requesting_thread); + } + return BiasedLocking::NOT_BIASED; + } + +- uint age = mark->age(); +- markOop biased_prototype = markOopDesc::biased_locking_prototype()->set_age(age); +- markOop unbiased_prototype = markOopDesc::prototype()->set_age(age); ++ uint age = mark.age(); ++ markOop biased_prototype = markOopDesc::biased_locking_prototype().set_age(age); ++ markOop unbiased_prototype = markOopDesc::prototype().set_age(age); + + // Log at "info" level if not bulk, else "trace" level + if (!is_bulk) { +@@ -179,9 +179,9 @@ static BiasedLocking::Condition revoke_bias(oop obj, bool allow_rebias, bool is_ + INTPTR_FORMAT ", type %s, prototype header " INTPTR_FORMAT + ", allow rebias %d, requesting thread " INTPTR_FORMAT, + p2i((void *)obj), +- (intptr_t) mark, ++ (intptr_t) mark.value(), + obj->klass()->external_name(), +- (intptr_t) obj->klass()->prototype_header(), ++ (intptr_t) obj->klass()->prototype_header().value(), + (allow_rebias ? 1 : 0), + (intptr_t) requesting_thread); + } else { +@@ -190,14 +190,14 @@ static BiasedLocking::Condition revoke_bias(oop obj, bool allow_rebias, bool is_ + INTPTR_FORMAT " , type %s , prototype header " INTPTR_FORMAT + " , allow rebias %d , requesting thread " INTPTR_FORMAT, + p2i((void *)obj), +- (intptr_t) mark, ++ (intptr_t) mark.value(), + obj->klass()->external_name(), +- (intptr_t) obj->klass()->prototype_header(), ++ (intptr_t) obj->klass()->prototype_header().value(), + (allow_rebias ? 1 : 0), + (intptr_t) requesting_thread); + } + +- JavaThread* biased_thread = mark->biased_locker(); ++ JavaThread* biased_thread = mark.biased_locker(); + if (biased_thread == NULL) { + // Object is anonymously biased. We can get here if, for + // example, we revoke the bias due to an identity hash code +@@ -279,7 +279,7 @@ static BiasedLocking::Condition revoke_bias(oop obj, bool allow_rebias, bool is_ + // Must release storing the lock address for platforms without TSO + // ordering (e.g. ppc). + obj->release_set_mark(markOopDesc::encode(highest_lock)); +- assert(!obj->mark()->has_bias_pattern(), "illegal mark state: stack lock used bias bit"); ++ assert(!obj->mark().has_bias_pattern(), "illegal mark state: stack lock used bias bit"); + // Log at "info" level if not bulk, else "trace" level + if (!is_bulk) { + log_info(biasedlocking)(" Revoked bias of currently-locked object"); +@@ -320,7 +320,7 @@ enum HeuristicsResult { + + static HeuristicsResult update_heuristics(oop o, bool allow_rebias) { + markOop mark = o->mark(); +- if (!mark->has_bias_pattern()) { ++ if (!mark.has_bias_pattern()) { + return HR_NOT_BIASED; + } + +@@ -381,7 +381,7 @@ static BiasedLocking::Condition bulk_revoke_or_rebias_at_safepoint(oop o, + INTPTR_FORMAT " , mark " INTPTR_FORMAT " , type %s", + (bulk_rebias ? "rebias" : "revoke"), + p2i((void *) o), +- (intptr_t) o->mark(), ++ (intptr_t) o->mark().value(), + o->klass()->external_name()); + + jlong cur_time = os::javaTimeMillis(); +@@ -405,10 +405,10 @@ static BiasedLocking::Condition bulk_revoke_or_rebias_at_safepoint(oop o, + // try to update the epoch -- assume another VM operation came in + // and reset the header to the unbiased state, which will + // implicitly cause all existing biases to be revoked +- if (klass->prototype_header()->has_bias_pattern()) { +- int prev_epoch = klass->prototype_header()->bias_epoch(); +- klass->set_prototype_header(klass->prototype_header()->incr_bias_epoch()); +- int cur_epoch = klass->prototype_header()->bias_epoch(); ++ if (klass->prototype_header().has_bias_pattern()) { ++ int prev_epoch = klass->prototype_header().bias_epoch(); ++ klass->set_prototype_header(klass->prototype_header().incr_bias_epoch()); ++ int cur_epoch = klass->prototype_header().bias_epoch(); + + // Now walk all threads' stacks and adjust epochs of any biased + // and locked objects of this data type we encounter +@@ -418,10 +418,10 @@ static BiasedLocking::Condition bulk_revoke_or_rebias_at_safepoint(oop o, + MonitorInfo* mon_info = cached_monitor_info->at(i); + oop owner = mon_info->owner(); + markOop mark = owner->mark(); +- if ((owner->klass() == k_o) && mark->has_bias_pattern()) { ++ if ((owner->klass() == k_o) && mark.has_bias_pattern()) { + // We might have encountered this object already in the case of recursive locking +- assert(mark->bias_epoch() == prev_epoch || mark->bias_epoch() == cur_epoch, "error in bias epoch adjustment"); +- owner->set_mark(mark->set_bias_epoch(cur_epoch)); ++ assert(mark.bias_epoch() == prev_epoch || mark.bias_epoch() == cur_epoch, "error in bias epoch adjustment"); ++ owner->set_mark(mark.set_bias_epoch(cur_epoch)); + } + } + } +@@ -429,7 +429,7 @@ static BiasedLocking::Condition bulk_revoke_or_rebias_at_safepoint(oop o, + + // At this point we're done. All we have to do is potentially + // adjust the header of the given object to revoke its bias. +- revoke_bias(o, attempt_rebias_of_object && klass->prototype_header()->has_bias_pattern(), true, requesting_thread, NULL); ++ revoke_bias(o, attempt_rebias_of_object && klass->prototype_header().has_bias_pattern(), true, requesting_thread, NULL); + } else { + if (log_is_enabled(Info, biasedlocking)) { + ResourceMark rm; +@@ -450,7 +450,7 @@ static BiasedLocking::Condition bulk_revoke_or_rebias_at_safepoint(oop o, + MonitorInfo* mon_info = cached_monitor_info->at(i); + oop owner = mon_info->owner(); + markOop mark = owner->mark(); +- if ((owner->klass() == k_o) && mark->has_bias_pattern()) { ++ if ((owner->klass() == k_o) && mark.has_bias_pattern()) { + revoke_bias(owner, false, true, requesting_thread, NULL); + } + } +@@ -467,17 +467,17 @@ static BiasedLocking::Condition bulk_revoke_or_rebias_at_safepoint(oop o, + BiasedLocking::Condition status_code = BiasedLocking::BIAS_REVOKED; + + if (attempt_rebias_of_object && +- o->mark()->has_bias_pattern() && +- klass->prototype_header()->has_bias_pattern()) { +- markOop new_mark = markOopDesc::encode(requesting_thread, o->mark()->age(), +- klass->prototype_header()->bias_epoch()); ++ o->mark().has_bias_pattern() && ++ klass->prototype_header().has_bias_pattern()) { ++ markOop new_mark = markOopDesc::encode(requesting_thread, o->mark().age(), ++ klass->prototype_header().bias_epoch()); + o->set_mark(new_mark); + status_code = BiasedLocking::BIAS_REVOKED_AND_REBIASED; + log_info(biasedlocking)(" Rebiased object toward thread " INTPTR_FORMAT, (intptr_t) requesting_thread); + } + +- assert(!o->mark()->has_bias_pattern() || +- (attempt_rebias_of_object && (o->mark()->biased_locker() == requesting_thread)), ++ assert(!o->mark().has_bias_pattern() || ++ (attempt_rebias_of_object && (o->mark().biased_locker() == requesting_thread)), + "bug in bulk bias revocation"); + + return status_code; +@@ -523,13 +523,13 @@ public: + // there is nothing to do and we avoid a safepoint. + if (_obj != NULL) { + markOop mark = (*_obj)()->mark(); +- if (mark->has_bias_pattern()) { ++ if (mark.has_bias_pattern()) { + return true; + } + } else { + for ( int i = 0 ; i < _objs->length(); i++ ) { + markOop mark = (_objs->at(i))()->mark(); +- if (mark->has_bias_pattern()) { ++ if (mark.has_bias_pattern()) { + return true; + } + } +@@ -629,7 +629,7 @@ BiasedLocking::Condition BiasedLocking::revoke_and_rebias(Handle obj, bool attem + // update the heuristics because doing so may cause unwanted bulk + // revocations (which are expensive) to occur. + markOop mark = obj->mark(); +- if (mark->is_biased_anonymously() && !attempt_rebias) { ++ if (mark.is_biased_anonymously() && !attempt_rebias) { + // We are probably trying to revoke the bias of this object due to + // an identity hash code computation. Try to revoke the bias + // without a safepoint. This is possible if we can successfully +@@ -637,15 +637,15 @@ BiasedLocking::Condition BiasedLocking::revoke_and_rebias(Handle obj, bool attem + // the object, meaning that no other thread has raced to acquire + // the bias of the object. + markOop biased_value = mark; +- markOop unbiased_prototype = markOopDesc::prototype()->set_age(mark->age()); ++ markOop unbiased_prototype = markOopDesc::prototype().set_age(mark.age()); + markOop res_mark = obj->cas_set_mark(unbiased_prototype, mark); + if (res_mark == biased_value) { + return BIAS_REVOKED; + } +- } else if (mark->has_bias_pattern()) { ++ } else if (mark.has_bias_pattern()) { + Klass* k = obj->klass(); + markOop prototype_header = k->prototype_header(); +- if (!prototype_header->has_bias_pattern()) { ++ if (!prototype_header.has_bias_pattern()) { + // This object has a stale bias from before the bulk revocation + // for this data type occurred. It's pointless to update the + // heuristics at this point so simply update the header with a +@@ -654,9 +654,9 @@ BiasedLocking::Condition BiasedLocking::revoke_and_rebias(Handle obj, bool attem + // with it. + markOop biased_value = mark; + markOop res_mark = obj->cas_set_mark(prototype_header, mark); +- assert(!obj->mark()->has_bias_pattern(), "even if we raced, should still be revoked"); ++ assert(!obj->mark().has_bias_pattern(), "even if we raced, should still be revoked"); + return BIAS_REVOKED; +- } else if (prototype_header->bias_epoch() != mark->bias_epoch()) { ++ } else if (prototype_header.bias_epoch() != mark.bias_epoch()) { + // The epoch of this biasing has expired indicating that the + // object is effectively unbiased. Depending on whether we need + // to rebias or revoke the bias of this object we can do it +@@ -667,14 +667,14 @@ BiasedLocking::Condition BiasedLocking::revoke_and_rebias(Handle obj, bool attem + if (attempt_rebias) { + assert(THREAD->is_Java_thread(), ""); + markOop biased_value = mark; +- markOop rebiased_prototype = markOopDesc::encode((JavaThread*) THREAD, mark->age(), prototype_header->bias_epoch()); ++ markOop rebiased_prototype = markOopDesc::encode((JavaThread*) THREAD, mark.age(), prototype_header.bias_epoch()); + markOop res_mark = obj->cas_set_mark(rebiased_prototype, mark); + if (res_mark == biased_value) { + return BIAS_REVOKED_AND_REBIASED; + } + } else { + markOop biased_value = mark; +- markOop unbiased_prototype = markOopDesc::prototype()->set_age(mark->age()); ++ markOop unbiased_prototype = markOopDesc::prototype().set_age(mark.age()); + markOop res_mark = obj->cas_set_mark(unbiased_prototype, mark); + if (res_mark == biased_value) { + return BIAS_REVOKED; +@@ -689,8 +689,8 @@ BiasedLocking::Condition BiasedLocking::revoke_and_rebias(Handle obj, bool attem + } else if (heuristics == HR_SINGLE_REVOKE) { + Klass *k = obj->klass(); + markOop prototype_header = k->prototype_header(); +- if (mark->biased_locker() == THREAD && +- prototype_header->bias_epoch() == mark->bias_epoch()) { ++ if (mark.biased_locker() == THREAD && ++ prototype_header.bias_epoch() == mark.bias_epoch()) { + // A thread is trying to revoke the bias of an object biased + // toward it, again likely due to an identity hash code + // computation. We can again avoid a safepoint in this case +@@ -814,7 +814,7 @@ void BiasedLocking::preserve_marks() { + oop owner = mon_info->owner(); + if (owner != NULL) { + markOop mark = owner->mark(); +- if (mark->has_bias_pattern()) { ++ if (mark.has_bias_pattern()) { + _preserved_oop_stack->push(Handle(cur, owner)); + _preserved_mark_stack->push(mark); + } +diff --git a/src/hotspot/share/runtime/deoptimization.cpp b/src/hotspot/share/runtime/deoptimization.cpp +index 7ca0d9154..5f1d44355 100644 +--- a/src/hotspot/share/runtime/deoptimization.cpp ++++ b/src/hotspot/share/runtime/deoptimization.cpp +@@ -1121,14 +1121,14 @@ void Deoptimization::relock_objects(GrowableArray* monitors, JavaT + if (!mon_info->owner_is_scalar_replaced()) { + Handle obj(thread, mon_info->owner()); + markOop mark = obj->mark(); +- if (UseBiasedLocking && mark->has_bias_pattern()) { ++ if (UseBiasedLocking && mark.has_bias_pattern()) { + // New allocated objects may have the mark set to anonymously biased. + // Also the deoptimized method may called methods with synchronization + // where the thread-local object is bias locked to the current thread. +- assert(mark->is_biased_anonymously() || +- mark->biased_locker() == thread, "should be locked to current thread"); ++ assert(mark.is_biased_anonymously() || ++ mark.biased_locker() == thread, "should be locked to current thread"); + // Reset mark word to unbiased prototype. +- markOop unbiased_prototype = markOopDesc::prototype()->set_age(mark->age()); ++ markOop unbiased_prototype = markOopDesc::prototype().set_age(mark.age()); + obj->set_mark(unbiased_prototype); + } + BasicLock* lock = mon_info->lock(); +diff --git a/src/hotspot/share/runtime/objectMonitor.hpp b/src/hotspot/share/runtime/objectMonitor.hpp +index d73c8a947..eba6075a2 100644 +--- a/src/hotspot/share/runtime/objectMonitor.hpp ++++ b/src/hotspot/share/runtime/objectMonitor.hpp +@@ -27,6 +27,7 @@ + + #include "memory/allocation.hpp" + #include "memory/padded.hpp" ++#include "oops/markOop.hpp" + #include "runtime/os.hpp" + #include "runtime/park.hpp" + #include "runtime/perfData.hpp" +diff --git a/src/hotspot/share/runtime/objectMonitor.inline.hpp b/src/hotspot/share/runtime/objectMonitor.inline.hpp +index 951d6472e..abb8cc554 100644 +--- a/src/hotspot/share/runtime/objectMonitor.inline.hpp ++++ b/src/hotspot/share/runtime/objectMonitor.inline.hpp +@@ -25,6 +25,8 @@ + #ifndef SHARE_VM_RUNTIME_OBJECTMONITOR_INLINE_HPP + #define SHARE_VM_RUNTIME_OBJECTMONITOR_INLINE_HPP + ++#include "runtime/atomic.hpp" ++ + inline intptr_t ObjectMonitor::is_entered(TRAPS) const { + if (THREAD == _owner || THREAD->is_lock_owned((address) _owner)) { + return 1; +@@ -33,7 +35,7 @@ inline intptr_t ObjectMonitor::is_entered(TRAPS) const { + } + + inline markOop ObjectMonitor::header() const { +- return _header; ++ return Atomic::load(&_header); + } + + inline volatile markOop* ObjectMonitor::header_addr() { +@@ -42,7 +44,7 @@ inline volatile markOop* ObjectMonitor::header_addr() { + } + + inline void ObjectMonitor::set_header(markOop hdr) { +- _header = hdr; ++ Atomic::store(hdr, &_header); + } + + inline jint ObjectMonitor::count() const { +@@ -58,14 +60,14 @@ inline void* ObjectMonitor::owner() const { + } + + inline void ObjectMonitor::clear() { +- assert(_header, "Fatal logic error in ObjectMonitor header!"); ++ assert(Atomic::load(&_header).value() != 0, "Fatal logic error in ObjectMonitor header!"); + assert(_count == 0, "Fatal logic error in ObjectMonitor count!"); + assert(_waiters == 0, "Fatal logic error in ObjectMonitor waiters!"); + assert(_recursions == 0, "Fatal logic error in ObjectMonitor recursions!"); + assert(_object != NULL, "Fatal logic error in ObjectMonitor object!"); + assert(_owner == 0, "Fatal logic error in ObjectMonitor owner!"); + +- _header = NULL; ++ Atomic::store(markOop::zero(), &_header); + _object = NULL; + } + +diff --git a/src/hotspot/share/runtime/sharedRuntime.cpp b/src/hotspot/share/runtime/sharedRuntime.cpp +index 595ff7495..cee41fcd7 100644 +--- a/src/hotspot/share/runtime/sharedRuntime.cpp ++++ b/src/hotspot/share/runtime/sharedRuntime.cpp +@@ -3080,10 +3080,10 @@ JRT_LEAF(intptr_t*, SharedRuntime::OSR_migration_begin( JavaThread *thread) ) + if (kptr2->obj() != NULL) { // Avoid 'holes' in the monitor array + BasicLock *lock = kptr2->lock(); + // Inflate so the displaced header becomes position-independent +- if (lock->displaced_header()->is_unlocked()) ++ if (lock->displaced_header().is_unlocked()) + ObjectSynchronizer::inflate_helper(kptr2->obj()); + // Now the displaced header is free to move +- buf[i++] = (intptr_t)lock->displaced_header(); ++ buf[i++] = (intptr_t)lock->displaced_header().value(); + buf[i++] = cast_from_oop(kptr2->obj()); + } + } +diff --git a/src/hotspot/share/runtime/synchronizer.cpp b/src/hotspot/share/runtime/synchronizer.cpp +index e7b32723e..2da0b02e9 100644 +--- a/src/hotspot/share/runtime/synchronizer.cpp ++++ b/src/hotspot/share/runtime/synchronizer.cpp +@@ -160,14 +160,14 @@ bool ObjectSynchronizer::quick_notify(oopDesc * obj, Thread * self, bool all) { + if (obj == NULL) return false; // slow-path for invalid obj + const markOop mark = obj->mark(); + +- if (mark->has_locker() && self->is_lock_owned((address)mark->locker())) { ++ if (mark.has_locker() && self->is_lock_owned((address)mark.locker())) { + // Degenerate notify + // stack-locked by caller so by definition the implied waitset is empty. + return true; + } + +- if (mark->has_monitor()) { +- ObjectMonitor * const mon = mark->monitor(); ++ if (mark.has_monitor()) { ++ ObjectMonitor * const mon = mark.monitor(); + assert(mon->object() == obj, "invariant"); + if (mon->owner() != self) return false; // slow-path for IMS exception + +@@ -210,8 +210,8 @@ bool ObjectSynchronizer::quick_enter(oop obj, Thread * Self, + if (obj == NULL) return false; // Need to throw NPE + const markOop mark = obj->mark(); + +- if (mark->has_monitor()) { +- ObjectMonitor * const m = mark->monitor(); ++ if (mark.has_monitor()) { ++ ObjectMonitor * const m = mark.monitor(); + assert(m->object() == obj, "invariant"); + Thread * const owner = (Thread *) m->_owner; + +@@ -273,7 +273,7 @@ void ObjectSynchronizer::fast_enter(Handle obj, BasicLock* lock, + assert(!attempt_rebias, "can not rebias toward VM thread"); + BiasedLocking::revoke_at_safepoint(obj); + } +- assert(!obj->mark()->has_bias_pattern(), "biases should be revoked by now"); ++ assert(!obj->mark().has_bias_pattern(), "biases should be revoked by now"); + } + + slow_enter(obj, lock, THREAD); +@@ -283,10 +283,10 @@ void ObjectSynchronizer::fast_exit(oop object, BasicLock* lock, TRAPS) { + markOop mark = object->mark(); + // We cannot check for Biased Locking if we are racing an inflation. + assert(mark == markOopDesc::INFLATING() || +- !mark->has_bias_pattern(), "should not see bias pattern here"); ++ !mark.has_bias_pattern(), "should not see bias pattern here"); + + markOop dhw = lock->displaced_header(); +- if (dhw == NULL) { ++ if (dhw.value() == 0) { + // If the displaced header is NULL, then this exit matches up with + // a recursive enter. No real work to do here except for diagnostics. + #ifndef PRODUCT +@@ -294,10 +294,10 @@ void ObjectSynchronizer::fast_exit(oop object, BasicLock* lock, TRAPS) { + // Only do diagnostics if we are not racing an inflation. Simply + // exiting a recursive enter of a Java Monitor that is being + // inflated is safe; see the has_monitor() comment below. +- assert(!mark->is_neutral(), "invariant"); +- assert(!mark->has_locker() || +- THREAD->is_lock_owned((address)mark->locker()), "invariant"); +- if (mark->has_monitor()) { ++ assert(!mark.is_neutral(), "invariant"); ++ assert(!mark.has_locker() || ++ THREAD->is_lock_owned((address)mark.locker()), "invariant"); ++ if (mark.has_monitor()) { + // The BasicLock's displaced_header is marked as a recursive + // enter and we have an inflated Java Monitor (ObjectMonitor). + // This is a special case where the Java Monitor was inflated +@@ -306,7 +306,7 @@ void ObjectSynchronizer::fast_exit(oop object, BasicLock* lock, TRAPS) { + // Monitor owner's stack and update the BasicLocks because a + // Java Monitor can be asynchronously inflated by a thread that + // does not own the Java Monitor. +- ObjectMonitor * m = mark->monitor(); ++ ObjectMonitor * m = mark.monitor(); + assert(((oop)(m->object()))->mark() == mark, "invariant"); + assert(m->is_entered(THREAD), "invariant"); + } +@@ -315,10 +315,10 @@ void ObjectSynchronizer::fast_exit(oop object, BasicLock* lock, TRAPS) { + return; + } + +- if (mark == (markOop) lock) { ++ if (mark == markOop::from_pointer(lock)) { + // If the object is stack-locked by the current thread, try to + // swing the displaced header from the BasicLock back to the mark. +- assert(dhw->is_neutral(), "invariant"); ++ assert(dhw.is_neutral(), "invariant"); + if (object->cas_set_mark(dhw, mark) == mark) { + TEVENT(fast_exit: release stack-lock); + return; +@@ -338,22 +338,22 @@ void ObjectSynchronizer::fast_exit(oop object, BasicLock* lock, TRAPS) { + // failed in the interpreter/compiler code. + void ObjectSynchronizer::slow_enter(Handle obj, BasicLock* lock, TRAPS) { + markOop mark = obj->mark(); +- assert(!mark->has_bias_pattern(), "should not see bias pattern here"); ++ assert(!mark.has_bias_pattern(), "should not see bias pattern here"); + +- if (mark->is_neutral()) { ++ if (mark.is_neutral()) { + // Anticipate successful CAS -- the ST of the displaced mark must + // be visible <= the ST performed by the CAS. + lock->set_displaced_header(mark); +- if (mark == obj()->cas_set_mark((markOop) lock, mark)) { ++ if (mark == obj()->cas_set_mark(markOop::from_pointer(lock), mark)) { + TEVENT(slow_enter: release stacklock); + return; + } + // Fall through to inflate() ... +- } else if (mark->has_locker() && +- THREAD->is_lock_owned((address)mark->locker())) { +- assert(lock != mark->locker(), "must not re-lock the same lock"); +- assert(lock != (BasicLock*)obj->mark(), "don't relock with same BasicLock"); +- lock->set_displaced_header(NULL); ++ } else if (mark.has_locker() && ++ THREAD->is_lock_owned((address)mark.locker())) { ++ assert(lock != mark.locker(), "must not re-lock the same lock"); ++ assert(lock != (BasicLock*)obj->mark().value(), "don't relock with same BasicLock"); ++ lock->set_displaced_header(markOop::from_pointer(NULL)); + return; + } + +@@ -391,7 +391,7 @@ intptr_t ObjectSynchronizer::complete_exit(Handle obj, TRAPS) { + TEVENT(complete_exit); + if (UseBiasedLocking) { + BiasedLocking::revoke_and_rebias(obj, false, THREAD); +- assert(!obj->mark()->has_bias_pattern(), "biases should be revoked by now"); ++ assert(!obj->mark().has_bias_pattern(), "biases should be revoked by now"); + } + + ObjectMonitor* monitor = ObjectSynchronizer::inflate(THREAD, +@@ -406,7 +406,7 @@ void ObjectSynchronizer::reenter(Handle obj, intptr_t recursion, TRAPS) { + TEVENT(reenter); + if (UseBiasedLocking) { + BiasedLocking::revoke_and_rebias(obj, false, THREAD); +- assert(!obj->mark()->has_bias_pattern(), "biases should be revoked by now"); ++ assert(!obj->mark().has_bias_pattern(), "biases should be revoked by now"); + } + + ObjectMonitor* monitor = ObjectSynchronizer::inflate(THREAD, +@@ -423,7 +423,7 @@ void ObjectSynchronizer::jni_enter(Handle obj, TRAPS) { + TEVENT(jni_enter); + if (UseBiasedLocking) { + BiasedLocking::revoke_and_rebias(obj, false, THREAD); +- assert(!obj->mark()->has_bias_pattern(), "biases should be revoked by now"); ++ assert(!obj->mark().has_bias_pattern(), "biases should be revoked by now"); + } + THREAD->set_current_pending_monitor_is_from_java(false); + ObjectSynchronizer::inflate(THREAD, obj(), inflate_cause_jni_enter)->enter(THREAD); +@@ -438,7 +438,7 @@ void ObjectSynchronizer::jni_exit(oop obj, Thread* THREAD) { + BiasedLocking::revoke_and_rebias(h_obj, false, THREAD); + obj = h_obj(); + } +- assert(!obj->mark()->has_bias_pattern(), "biases should be revoked by now"); ++ assert(!obj->mark().has_bias_pattern(), "biases should be revoked by now"); + + ObjectMonitor* monitor = ObjectSynchronizer::inflate(THREAD, + obj, +@@ -479,7 +479,7 @@ ObjectLocker::~ObjectLocker() { + int ObjectSynchronizer::wait(Handle obj, jlong millis, TRAPS) { + if (UseBiasedLocking) { + BiasedLocking::revoke_and_rebias(obj, false, THREAD); +- assert(!obj->mark()->has_bias_pattern(), "biases should be revoked by now"); ++ assert(!obj->mark().has_bias_pattern(), "biases should be revoked by now"); + } + if (millis < 0) { + TEVENT(wait - throw IAX); +@@ -502,7 +502,7 @@ int ObjectSynchronizer::wait(Handle obj, jlong millis, TRAPS) { + void ObjectSynchronizer::waitUninterruptibly(Handle obj, jlong millis, TRAPS) { + if (UseBiasedLocking) { + BiasedLocking::revoke_and_rebias(obj, false, THREAD); +- assert(!obj->mark()->has_bias_pattern(), "biases should be revoked by now"); ++ assert(!obj->mark().has_bias_pattern(), "biases should be revoked by now"); + } + if (millis < 0) { + TEVENT(wait - throw IAX); +@@ -516,11 +516,11 @@ void ObjectSynchronizer::waitUninterruptibly(Handle obj, jlong millis, TRAPS) { + void ObjectSynchronizer::notify(Handle obj, TRAPS) { + if (UseBiasedLocking) { + BiasedLocking::revoke_and_rebias(obj, false, THREAD); +- assert(!obj->mark()->has_bias_pattern(), "biases should be revoked by now"); ++ assert(!obj->mark().has_bias_pattern(), "biases should be revoked by now"); + } + + markOop mark = obj->mark(); +- if (mark->has_locker() && THREAD->is_lock_owned((address)mark->locker())) { ++ if (mark.has_locker() && THREAD->is_lock_owned((address)mark.locker())) { + return; + } + ObjectSynchronizer::inflate(THREAD, +@@ -532,11 +532,11 @@ void ObjectSynchronizer::notify(Handle obj, TRAPS) { + void ObjectSynchronizer::notifyall(Handle obj, TRAPS) { + if (UseBiasedLocking) { + BiasedLocking::revoke_and_rebias(obj, false, THREAD); +- assert(!obj->mark()->has_bias_pattern(), "biases should be revoked by now"); ++ assert(!obj->mark().has_bias_pattern(), "biases should be revoked by now"); + } + + markOop mark = obj->mark(); +- if (mark->has_locker() && THREAD->is_lock_owned((address)mark->locker())) { ++ if (mark.has_locker() && THREAD->is_lock_owned((address)mark.locker())) { + return; + } + ObjectSynchronizer::inflate(THREAD, +@@ -583,14 +583,14 @@ static volatile int ForceMonitorScavenge = 0; // Scavenge required and pending + + static markOop ReadStableMark(oop obj) { + markOop mark = obj->mark(); +- if (!mark->is_being_inflated()) { ++ if (!mark.is_being_inflated()) { + return mark; // normal fast-path return + } + + int its = 0; + for (;;) { + markOop mark = obj->mark(); +- if (!mark->is_being_inflated()) { ++ if (!mark.is_being_inflated()) { + return mark; // normal fast-path return + } + +@@ -716,7 +716,7 @@ intptr_t ObjectSynchronizer::FastHashCode(Thread * Self, oop obj) { + // been checked to make sure they can handle a safepoint. The + // added check of the bias pattern is to avoid useless calls to + // thread-local storage. +- if (obj->mark()->has_bias_pattern()) { ++ if (obj->mark().has_bias_pattern()) { + // Handle for oop obj in case of STW safepoint + Handle hobj(Self, obj); + // Relaxing assertion for bug 6320749. +@@ -725,7 +725,7 @@ intptr_t ObjectSynchronizer::FastHashCode(Thread * Self, oop obj) { + "biases should not be seen by VM thread here"); + BiasedLocking::revoke_and_rebias(hobj, false, JavaThread::current()); + obj = hobj(); +- assert(!obj->mark()->has_bias_pattern(), "biases should be revoked by now"); ++ assert(!obj->mark().has_bias_pattern(), "biases should be revoked by now"); + } + } + +@@ -744,15 +744,15 @@ intptr_t ObjectSynchronizer::FastHashCode(Thread * Self, oop obj) { + markOop mark = ReadStableMark(obj); + + // object should remain ineligible for biased locking +- assert(!mark->has_bias_pattern(), "invariant"); ++ assert(!mark.has_bias_pattern(), "invariant"); + +- if (mark->is_neutral()) { +- hash = mark->hash(); // this is a normal header ++ if (mark.is_neutral()) { ++ hash = mark.hash(); // this is a normal header + if (hash) { // if it has hash, just return it + return hash; + } + hash = get_next_hash(Self, obj); // allocate a new hash code +- temp = mark->copy_set_hash(hash); // merge the hash code into header ++ temp = mark.copy_set_hash(hash); // merge the hash code into header + // use (machine word version) atomic operation to install the hash + test = obj->cas_set_mark(temp, mark); + if (test == mark) { +@@ -761,19 +761,19 @@ intptr_t ObjectSynchronizer::FastHashCode(Thread * Self, oop obj) { + // If atomic operation failed, we must inflate the header + // into heavy weight monitor. We could add more code here + // for fast path, but it does not worth the complexity. +- } else if (mark->has_monitor()) { +- monitor = mark->monitor(); ++ } else if (mark.has_monitor()) { ++ monitor = mark.monitor(); + temp = monitor->header(); +- assert(temp->is_neutral(), "invariant"); +- hash = temp->hash(); ++ assert(temp.is_neutral(), "invariant"); ++ hash = temp.hash(); + if (hash) { + return hash; + } + // Skip to the following code to reduce code size +- } else if (Self->is_lock_owned((address)mark->locker())) { +- temp = mark->displaced_mark_helper(); // this is a lightweight monitor owned +- assert(temp->is_neutral(), "invariant"); +- hash = temp->hash(); // by current thread, check if the displaced ++ } else if (Self->is_lock_owned((address)mark.locker())) { ++ temp = mark.displaced_mark_helper(); // this is a lightweight monitor owned ++ assert(temp.is_neutral(), "invariant"); ++ hash = temp.hash(); // by current thread, check if the displaced + if (hash) { // header contains hash code + return hash; + } +@@ -792,19 +792,20 @@ intptr_t ObjectSynchronizer::FastHashCode(Thread * Self, oop obj) { + monitor = ObjectSynchronizer::inflate(Self, obj, inflate_cause_hash_code); + // Load displaced header and check it has hash code + mark = monitor->header(); +- assert(mark->is_neutral(), "invariant"); +- hash = mark->hash(); ++ assert(mark.is_neutral(), "invariant"); ++ hash = mark.hash(); + if (hash == 0) { + hash = get_next_hash(Self, obj); +- temp = mark->copy_set_hash(hash); // merge hash code into header +- assert(temp->is_neutral(), "invariant"); +- test = Atomic::cmpxchg(temp, monitor->header_addr(), mark); ++ temp = mark.copy_set_hash(hash); // merge hash code into header ++ assert(temp.is_neutral(), "invariant"); ++ uintptr_t t = Atomic::cmpxchg(temp.value(), (volatile uintptr_t*)monitor->header_addr(), mark.value()); ++ test = markOop(t); + if (test != mark) { + // The only update to the header in the monitor (outside GC) + // is install the hash code. If someone add new usage of + // displaced header, please update this code +- hash = test->hash(); +- assert(test->is_neutral(), "invariant"); ++ hash = test.hash(); ++ assert(test.is_neutral(), "invariant"); + assert(hash != 0, "Trivial unexpected object/monitor header usage."); + } + } +@@ -823,7 +824,7 @@ bool ObjectSynchronizer::current_thread_holds_lock(JavaThread* thread, + Handle h_obj) { + if (UseBiasedLocking) { + BiasedLocking::revoke_and_rebias(h_obj, false, thread); +- assert(!h_obj->mark()->has_bias_pattern(), "biases should be revoked by now"); ++ assert(!h_obj->mark().has_bias_pattern(), "biases should be revoked by now"); + } + + assert(thread == JavaThread::current(), "Can only be called on current thread"); +@@ -832,16 +833,16 @@ bool ObjectSynchronizer::current_thread_holds_lock(JavaThread* thread, + markOop mark = ReadStableMark(obj); + + // Uncontended case, header points to stack +- if (mark->has_locker()) { +- return thread->is_lock_owned((address)mark->locker()); ++ if (mark.has_locker()) { ++ return thread->is_lock_owned((address)mark.locker()); + } + // Contended case, header points to ObjectMonitor (tagged pointer) +- if (mark->has_monitor()) { +- ObjectMonitor* monitor = mark->monitor(); ++ if (mark.has_monitor()) { ++ ObjectMonitor* monitor = mark.monitor(); + return monitor->is_entered(thread) != 0; + } + // Unlocked case, header in place +- assert(mark->is_neutral(), "sanity check"); ++ assert(mark.is_neutral(), "sanity check"); + return false; + } + +@@ -859,10 +860,10 @@ ObjectSynchronizer::LockOwnership ObjectSynchronizer::query_lock_ownership + + // Possible mark states: neutral, biased, stack-locked, inflated + +- if (UseBiasedLocking && h_obj()->mark()->has_bias_pattern()) { ++ if (UseBiasedLocking && h_obj()->mark().has_bias_pattern()) { + // CASE: biased + BiasedLocking::revoke_and_rebias(h_obj, false, self); +- assert(!h_obj->mark()->has_bias_pattern(), ++ assert(!h_obj->mark().has_bias_pattern(), + "biases should be revoked by now"); + } + +@@ -871,23 +872,23 @@ ObjectSynchronizer::LockOwnership ObjectSynchronizer::query_lock_ownership + markOop mark = ReadStableMark(obj); + + // CASE: stack-locked. Mark points to a BasicLock on the owner's stack. +- if (mark->has_locker()) { +- return self->is_lock_owned((address)mark->locker()) ? ++ if (mark.has_locker()) { ++ return self->is_lock_owned((address)mark.locker()) ? + owner_self : owner_other; + } + + // CASE: inflated. Mark (tagged pointer) points to an objectMonitor. + // The Object:ObjectMonitor relationship is stable as long as we're + // not at a safepoint. +- if (mark->has_monitor()) { +- void * owner = mark->monitor()->_owner; ++ if (mark.has_monitor()) { ++ void * owner = mark.monitor()->_owner; + if (owner == NULL) return owner_none; + return (owner == self || + self->is_lock_owned((address)owner)) ? owner_self : owner_other; + } + + // CASE: neutral +- assert(mark->is_neutral(), "sanity check"); ++ assert(mark.is_neutral(), "sanity check"); + return owner_none; // it's unlocked + } + +@@ -899,7 +900,7 @@ JavaThread* ObjectSynchronizer::get_lock_owner(ThreadsList * t_list, Handle h_ob + } else { + BiasedLocking::revoke_and_rebias(h_obj, false, JavaThread::current()); + } +- assert(!h_obj->mark()->has_bias_pattern(), "biases should be revoked by now"); ++ assert(!h_obj->mark().has_bias_pattern(), "biases should be revoked by now"); + } + + oop obj = h_obj(); +@@ -908,13 +909,13 @@ JavaThread* ObjectSynchronizer::get_lock_owner(ThreadsList * t_list, Handle h_ob + markOop mark = ReadStableMark(obj); + + // Uncontended case, header points to stack +- if (mark->has_locker()) { +- owner = (address) mark->locker(); ++ if (mark.has_locker()) { ++ owner = (address) mark.locker(); + } + + // Contended case, header points to ObjectMonitor (tagged pointer) +- if (mark->has_monitor()) { +- ObjectMonitor* monitor = mark->monitor(); ++ if (mark.has_monitor()) { ++ ObjectMonitor* monitor = mark.monitor(); + assert(monitor != NULL, "monitor should be non-null"); + owner = (address) monitor->owner(); + } +@@ -927,7 +928,7 @@ JavaThread* ObjectSynchronizer::get_lock_owner(ThreadsList * t_list, Handle h_ob + // Unlocked case, header in place + // Cannot have assertion since this object may have been + // locked by another thread when reaching here. +- // assert(mark->is_neutral(), "sanity check"); ++ // assert(mark.is_neutral(), "sanity check"); + + return NULL; + } +@@ -1374,10 +1375,10 @@ static void post_monitor_inflate_event(EventJavaMonitorInflate* event, + // Fast path code shared by multiple functions + ObjectMonitor* ObjectSynchronizer::inflate_helper(oop obj) { + markOop mark = obj->mark(); +- if (mark->has_monitor()) { +- assert(ObjectSynchronizer::verify_objmon_isinpool(mark->monitor()), "monitor is invalid"); +- assert(mark->monitor()->header()->is_neutral(), "monitor must record a good object header"); +- return mark->monitor(); ++ if (mark.has_monitor()) { ++ assert(ObjectSynchronizer::verify_objmon_isinpool(mark.monitor()), "monitor is invalid"); ++ assert(mark.monitor()->header().is_neutral(), "monitor must record a good object header"); ++ return mark.monitor(); + } + return ObjectSynchronizer::inflate(Thread::current(), + obj, +@@ -1397,7 +1398,7 @@ ObjectMonitor* ObjectSynchronizer::inflate(Thread * Self, + + for (;;) { + const markOop mark = object->mark(); +- assert(!mark->has_bias_pattern(), "invariant"); ++ assert(!mark.has_bias_pattern(), "invariant"); + + // The mark can be in one of the following states: + // * Inflated - just return +@@ -1407,9 +1408,9 @@ ObjectMonitor* ObjectSynchronizer::inflate(Thread * Self, + // * BIASED - Illegal. We should never see this + + // CASE: inflated +- if (mark->has_monitor()) { +- ObjectMonitor * inf = mark->monitor(); +- assert(inf->header()->is_neutral(), "invariant"); ++ if (mark.has_monitor()) { ++ ObjectMonitor * inf = mark.monitor(); ++ assert(inf->header().is_neutral(), "invariant"); + assert(inf->object() == object, "invariant"); + assert(ObjectSynchronizer::verify_objmon_isinpool(inf), "monitor is invalid"); + return inf; +@@ -1446,7 +1447,7 @@ ObjectMonitor* ObjectSynchronizer::inflate(Thread * Self, + // before or after the CAS(INFLATING) operation. + // See the comments in omAlloc(). + +- if (mark->has_locker()) { ++ if (mark.has_locker()) { + ObjectMonitor * m = omAlloc(Self); + // Optimistically prepare the objectmonitor - anticipate successful CAS + // We do this before the CAS in order to minimize the length of time +@@ -1484,7 +1485,7 @@ ObjectMonitor* ObjectSynchronizer::inflate(Thread * Self, + // drop the lock (restoring the header from the basiclock to the object) + // while inflation is in-progress. This protocol avoids races that might + // would otherwise permit hashCode values to change or "flicker" for an object. +- // Critically, while object->mark is 0 mark->displaced_mark_helper() is stable. ++ // Critically, while object->mark is 0 mark.displaced_mark_helper() is stable. + // 0 serves as a "BUSY" inflate-in-progress indicator. + + +@@ -1492,18 +1493,18 @@ ObjectMonitor* ObjectSynchronizer::inflate(Thread * Self, + // The owner can't die or unwind past the lock while our INFLATING + // object is in the mark. Furthermore the owner can't complete + // an unlock on the object, either. +- markOop dmw = mark->displaced_mark_helper(); +- assert(dmw->is_neutral(), "invariant"); ++ markOop dmw = mark.displaced_mark_helper(); ++ assert(dmw.is_neutral(), "invariant"); + + // Setup monitor fields to proper values -- prepare the monitor + m->set_header(dmw); + +- // Optimization: if the mark->locker stack address is associated ++ // Optimization: if the mark.locker stack address is associated + // with this thread we could simply set m->_owner = Self. + // Note that a thread can inflate an object + // that it has stack-locked -- as might happen in wait() -- directly + // with CAS. That is, we can avoid the xchg-NULL .... ST idiom. +- m->set_owner(mark->locker()); ++ m->set_owner(mark.locker()); + m->set_object(object); + // TODO-FIXME: assert BasicLock->dhw != 0. + +@@ -1520,7 +1521,7 @@ ObjectMonitor* ObjectSynchronizer::inflate(Thread * Self, + if (object->is_instance()) { + ResourceMark rm; + log_debug(monitorinflation)("Inflating object " INTPTR_FORMAT " , mark " INTPTR_FORMAT " , type %s", +- p2i(object), p2i(object->mark()), ++ p2i(object), object->mark().value(), + object->klass()->external_name()); + } + } +@@ -1540,7 +1541,7 @@ ObjectMonitor* ObjectSynchronizer::inflate(Thread * Self, + // An inflateTry() method that we could call from fast_enter() and slow_enter() + // would be useful. + +- assert(mark->is_neutral(), "invariant"); ++ assert(mark.is_neutral(), "invariant"); + ObjectMonitor * m = omAlloc(Self); + // prepare m for installation - set monitor to initial state + m->Recycle(); +@@ -1571,7 +1572,7 @@ ObjectMonitor* ObjectSynchronizer::inflate(Thread * Self, + if (object->is_instance()) { + ResourceMark rm; + log_debug(monitorinflation)("Inflating object " INTPTR_FORMAT " , mark " INTPTR_FORMAT " , type %s", +- p2i(object), p2i(object->mark()), ++ p2i(object), object->mark().value(), + object->klass()->external_name()); + } + } +@@ -1623,8 +1624,8 @@ bool ObjectSynchronizer::deflate_monitor(ObjectMonitor* mid, oop obj, + bool deflated; + // Normal case ... The monitor is associated with obj. + guarantee(obj->mark() == markOopDesc::encode(mid), "invariant"); +- guarantee(mid == obj->mark()->monitor(), "invariant"); +- guarantee(mid->header()->is_neutral(), "invariant"); ++ guarantee(mid == obj->mark().monitor(), "invariant"); ++ guarantee(mid->header().is_neutral(), "invariant"); + + if (mid->is_busy()) { + if (ClearResponsibleAtSTW) mid->_Responsible = NULL; +@@ -1639,7 +1640,7 @@ bool ObjectSynchronizer::deflate_monitor(ObjectMonitor* mid, oop obj, + ResourceMark rm; + log_debug(monitorinflation)("Deflating object " INTPTR_FORMAT " , " + "mark " INTPTR_FORMAT " , type %s", +- p2i(obj), p2i(obj->mark()), ++ p2i(obj), obj->mark().value(), + obj->klass()->external_name()); + } + } +diff --git a/src/hotspot/share/runtime/vframe.cpp b/src/hotspot/share/runtime/vframe.cpp +index cca364217..7dfb2e4a2 100644 +--- a/src/hotspot/share/runtime/vframe.cpp ++++ b/src/hotspot/share/runtime/vframe.cpp +@@ -222,7 +222,7 @@ void javaVFrame::print_lock_info_on(outputStream* st, int frame_count) { + if (monitor->owner() != NULL) { + // the monitor is associated with an object, i.e., it is locked + +- markOop mark = NULL; ++ markOop mark = markOop::zero(); + const char *lock_state = "locked"; // assume we have the monitor locked + if (!found_first_monitor && frame_count == 0) { + // If this is the first frame and we haven't found an owned +@@ -231,17 +231,17 @@ void javaVFrame::print_lock_info_on(outputStream* st, int frame_count) { + // an inflated monitor that is first on the monitor list in + // the first frame can block us on a monitor enter. + mark = monitor->owner()->mark(); +- if (mark->has_monitor() && ++ if (mark.has_monitor() && + ( // we have marked ourself as pending on this monitor +- mark->monitor() == thread()->current_pending_monitor() || ++ mark.monitor() == thread()->current_pending_monitor() || + // we are not the owner of this monitor +- !mark->monitor()->is_entered(thread()) ++ !mark.monitor()->is_entered(thread()) + )) { + lock_state = "waiting to lock"; + } else { + // We own the monitor which is not as interesting so + // disable the extra printing below. +- mark = NULL; ++ mark = markOop::zero(); + } + } else if (frame_count != 0) { + // This is not the first frame so we either own this monitor +@@ -250,23 +250,23 @@ void javaVFrame::print_lock_info_on(outputStream* st, int frame_count) { + // numbered frame on the stack, we have to check all the + // monitors on the list for this frame. + mark = monitor->owner()->mark(); +- if (mark->has_monitor() && ++ if (mark.has_monitor() && + ( // we have marked ourself as pending on this monitor +- mark->monitor() == thread()->current_pending_monitor() || ++ mark.monitor() == thread()->current_pending_monitor() || + // we are not the owner of this monitor +- !mark->monitor()->is_entered(thread()) ++ !mark.monitor()->is_entered(thread()) + )) { + lock_state = "waiting to re-lock in wait()"; + } else { + // We own the monitor which is not as interesting so + // disable the extra printing below. +- mark = NULL; ++ mark = markOop::zero(); + } + } + print_locked_object_class_name(st, Handle(THREAD, monitor->owner()), lock_state); +- if (ObjectMonitor::Knob_Verbose && mark != NULL) { ++ if (ObjectMonitor::Knob_Verbose && mark.to_pointer() != NULL) { + st->print("\t- lockbits="); +- mark->print_on(st); ++ mark.print_on(st); + st->cr(); + } + +diff --git a/src/hotspot/share/runtime/vmStructs.cpp b/src/hotspot/share/runtime/vmStructs.cpp +index adce6da6a..b161a6ec1 100644 +--- a/src/hotspot/share/runtime/vmStructs.cpp ++++ b/src/hotspot/share/runtime/vmStructs.cpp +@@ -1285,7 +1285,6 @@ typedef PaddedEnd PaddedObjectMonitor; + declare_type(arrayOopDesc, oopDesc) \ + declare_type(objArrayOopDesc, arrayOopDesc) \ + declare_type(instanceOopDesc, oopDesc) \ +- declare_type(markOopDesc, oopDesc) \ + \ + /**************************************************/ \ + /* MetadataOopDesc hierarchy (NOTE: some missing) */ \ +@@ -1325,7 +1324,6 @@ typedef PaddedEnd PaddedObjectMonitor; + /* Oops */ \ + /********/ \ + \ +- declare_oop_type(markOop) \ + declare_oop_type(objArrayOop) \ + declare_oop_type(oop) \ + declare_oop_type(narrowOop) \ +@@ -1983,6 +1981,8 @@ typedef PaddedEnd PaddedObjectMonitor; + declare_type(BitMapView, BitMap) \ + \ + declare_integer_type(AccessFlags) /* FIXME: wrong type (not integer) */\ ++ declare_integer_type(markOop) \ ++ declare_type(markOopDesc, markOop) \ + declare_toplevel_type(address) /* FIXME: should this be an integer type? */\ + declare_integer_type(BasicType) /* FIXME: wrong type (not integer) */\ + JVMTI_ONLY(declare_toplevel_type(BreakpointInfo)) \ +-- +2.54.0 + diff --git a/pkgs/development/compilers/openjdk/generic.nix b/pkgs/development/compilers/openjdk/generic.nix index 65bed061789e..7d123cb1fdf9 100644 --- a/pkgs/development/compilers/openjdk/generic.nix +++ b/pkgs/development/compilers/openjdk/generic.nix @@ -234,6 +234,9 @@ stdenv.mkDerivation (finalAttrs: { else ./8/patches/swing-use-gtk-jdk8.patch ) + ] + ++ lib.optionals (featureVersion == "11") [ + ./11/patches/fix-oopdesc-ptr-alignment-ub.patch ]; strictDeps = true; From f893dec7853aa976efc4de8e437c8933a180995b Mon Sep 17 00:00:00 2001 From: transcaffeine Date: Wed, 24 Jun 2026 22:20:08 +0200 Subject: [PATCH 80/95] element-{desktop,web}: 1.12.21 -> 1.12.22 Release notes: https://github.com/element-hq/element-web/releases/tag/v1.12.22 Full changelog: https://github.com/element-hq/element-web/compare/v1.12.21...v1.12.22 (cherry picked from commit a3e3d4e22b5c3cf5157aecee35b82617d8289d09) --- pkgs/by-name/el/element-desktop/package.nix | 6 +++--- pkgs/by-name/el/element-web-unwrapped/package.nix | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/el/element-desktop/package.nix b/pkgs/by-name/el/element-desktop/package.nix index 118a37a0023c..1ca0250cacc6 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.21"; + version = "1.12.22"; src = fetchFromGitHub { owner = "element-hq"; repo = "element-web"; tag = "v${finalAttrs.version}"; - hash = "sha256-wtMmfNZptCMPp3j6dicEM/80otz20UBQw+HXb8EXJl0="; + hash = "sha256-TtC4KUnaKy/gmh5CbkPTWKCFjdeKvt8esFt3awdkA/g="; }; pnpmDeps = fetchPnpmDeps { @@ -47,7 +47,7 @@ stdenv.mkDerivation (finalAttrs: { ; inherit pnpm; fetcherVersion = 3; - hash = "sha256-OPpJ5XJ0YeidvlT88JwQIKXxbQ40l0xdVH/9uT3La2M="; + hash = "sha256-Cxc2/NpOpkXavDvBgaU6Douud7AO06jt1KjuaLnZh8M="; }; env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1"; diff --git a/pkgs/by-name/el/element-web-unwrapped/package.nix b/pkgs/by-name/el/element-web-unwrapped/package.nix index ee61fce02654..3cb26541f8c4 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.21"; + version = "1.12.22"; src = fetchFromGitHub { owner = "element-hq"; repo = "element-web"; tag = "v${finalAttrs.version}"; - hash = "sha256-wtMmfNZptCMPp3j6dicEM/80otz20UBQw+HXb8EXJl0="; + hash = "sha256-TtC4KUnaKy/gmh5CbkPTWKCFjdeKvt8esFt3awdkA/g="; }; pnpmDeps = fetchPnpmDeps { @@ -39,7 +39,7 @@ stdenv.mkDerivation (finalAttrs: { inherit (finalAttrs) version src; inherit pnpm; fetcherVersion = 3; - hash = "sha256-OPpJ5XJ0YeidvlT88JwQIKXxbQ40l0xdVH/9uT3La2M="; + hash = "sha256-Cxc2/NpOpkXavDvBgaU6Douud7AO06jt1KjuaLnZh8M="; }; nativeBuildInputs = [ From 139a66fe7e6fe027ed9ecaaf536cc0c9a322602b Mon Sep 17 00:00:00 2001 From: Aliaksandr Date: Sat, 25 Apr 2026 02:23:25 +0300 Subject: [PATCH 81/95] ci/github-script/merge: skip auto-merge when CI has already failed The merge bot falls back to GitHub Auto Merge whenever the merge queue won't accept a PR yet. That is the right move while CI is still running, but pointless once CI has already failed: Auto Merge can never trigger, and fixing CI requires a new push, which invalidates the merge command anyway (the bot only acts on comments after the latest push). Fetch the `no PR failures` commit status and, when the merge-queue enqueue fails, branch on it. If CI has already failed (`error`/`failure`), skip Auto Merge and reply that a fresh `@NixOS/nixpkgs-merge-bot merge` comment is needed once CI is green again. Otherwise (pending or missing status) enable Auto Merge as before. `merge()` now returns `{ reaction, messages }` so the CI-failure path can leave a thumbs-down reaction rather than the rocket used for an actual merge. Closes #512554. Assisted-by: claude-code with claude-opus-4-8[1m]-high (cherry picked from commit da97bf84234657e6fdde8fabd8720eceb685d4f4) --- ci/README.md | 9 +++++ ci/github-script/merge.js | 69 ++++++++++++++++++++++++++++++--------- 2 files changed, 63 insertions(+), 15 deletions(-) diff --git a/ci/README.md b/ci/README.md index be0e8e4c4fca..814299ed8182 100644 --- a/ci/README.md +++ b/ci/README.md @@ -52,6 +52,14 @@ To ensure security and a focused utility, the bot adheres to specific limitation - The user attempting to merge is a member of [@NixOS/nixpkgs-maintainers]. - The user attempting to merge is a maintainer of all packages touched by the PR. +Once these constraints are met, the bot picks a merge strategy based on the `no PR failures` commit status: + +- CI passing: the PR is added to the merge queue. +- CI unfinished (pending or missing status): the bot enables [Auto Merge], which queues the PR once required checks succeed. + Note that if CI later fails, nothing happens until it is fixed and passes. +- CI already failing (`error`/`failure` status): the bot does not enable Auto Merge, because it would never trigger, and fixing CI requires a new push that invalidates the merge command. + A fresh `@NixOS/nixpkgs-merge-bot merge` comment is needed once CI is green again. + ### Approving merge bot changes Changes to the bot can usually be approved by the [@NixOS/nixpkgs-ci] team, as with other CI changes. @@ -104,3 +112,4 @@ This script can also be run locally to print basic test cases. [@NixOS/nixpkgs-ci]: https://github.com/orgs/NixOS/teams/nixpkgs-ci [@NixOS/nixpkgs-core]: https://github.com/orgs/NixOS/teams/nixpkgs-core [RFC 172]: https://github.com/NixOS/rfcs/pull/172 +[Auto Merge]: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request diff --git a/ci/github-script/merge.js b/ci/github-script/merge.js index ee861e21187d..e7f0cac8cc83 100644 --- a/ci/github-script/merge.js +++ b/ci/github-script/merge.js @@ -57,6 +57,9 @@ function runChecklist({ pull_request.user.login === 'r-ryantm', }, 'PR is not a draft': !pull_request.draft, + // CI state is intentionally *not* a checklist item: auto-merge exists precisely to + // cover unfinished CI, and an already-failed CI is reported via the merge message + // (see merge() below) rather than a blanket refusal. } if (user) { @@ -148,6 +151,14 @@ async function handleMerge({ // including an early exit when the first non-by-name file is found. if (files.length >= 100) return false + const noPrFailuresState = ( + await github.rest.repos.listCommitStatusesForRef({ + ...context.repo, + ref: pull_request.head.sha, + per_page: 100, + }) + ).data.find(({ context }) => context === 'no PR failures')?.state + // Only look through comments *after* the latest (force) push. const lastPush = events.findLastIndex( ({ event, sha, commit_id }) => @@ -173,10 +184,12 @@ async function handleMerge({ )), ) + // Returns `{ reaction, messages }`: the reaction to leave on the merge comment and the + // lines to append to the bot's reply. Throws only on an unexpected API error. async function merge() { if (dry) { core.info(`Merging #${pull_number}... (dry)`) - return ['Merge completed (dry)'] + return { reaction: 'ROCKET', messages: ['Merge completed (dry)'] } } // Using GraphQL mutations instead of the REST /merge endpoint, because the latter @@ -197,16 +210,37 @@ async function handleMerge({ { node_id: pull_request.node_id, sha: pull_request.head.sha }, ) log('merge', 'Queued for merge') - return [ - `:heavy_check_mark: [Queued](${resp.enqueuePullRequest.mergeQueueEntry.mergeQueue.url}) for merge (#306934)`, - ] + return { + reaction: 'ROCKET', + messages: [ + `:heavy_check_mark: [Queued](${resp.enqueuePullRequest.mergeQueueEntry.mergeQueue.url}) for merge (#306934)`, + ], + } } catch (e) { log('Enqueuing failed', e.response.errors[0].message) } - // If required status checks are not satisfied, yet, the above will fail. In this case - // we can enable auto-merge. We could also only use auto-merge, but this often gets - // stuck for no apparent reason. + // Enqueuing fails when the required status checks are not satisfied, yet. If CI has + // already failed, enabling auto-merge would be pointless: it would never fire, and + // fixing CI requires a new push, which invalidates this merge command anyway (we only + // act on comments after the latest push). So we don't enable auto-merge and instead + // ask for a fresh command once CI is green again. + if (['error', 'failure'].includes(noPrFailuresState)) { + log('merge', 'CI has failed, not enabling auto-merge') + return { + reaction: 'THUMBS_DOWN', + messages: [ + ':x: Pull Request could not be merged: CI has failed (#305350).', + '', + '> [!TIP]', + '> PRs cannot be merged while CI is failing.', + '> Once CI is passing, comment `@NixOS/nixpkgs-merge-bot merge` again.', + ], + } + } + + // CI has not finished yet, so we enable auto-merge. We could also only use auto-merge, + // but this often gets stuck for no apparent reason. try { await github.graphql( `mutation($node_id: ID!, $sha: GitObjectID) { @@ -219,12 +253,15 @@ async function handleMerge({ { node_id: pull_request.node_id, sha: pull_request.head.sha }, ) log('merge', 'Auto-merge enabled') - return [ - `:heavy_check_mark: Enabled Auto Merge (#306934)`, - '', - '> [!TIP]', - '> Sometimes GitHub gets stuck after enabling Auto Merge. In this case, leaving another approval should trigger the merge.', - ] + return { + reaction: 'ROCKET', + messages: [ + `:heavy_check_mark: Enabled Auto Merge (#306934)`, + '', + '> [!TIP]', + '> Sometimes GitHub gets stuck after enabling Auto Merge. In this case, leaving another approval should trigger the merge.', + ], + } } catch (e) { log('Auto Merge failed', e.response.errors[0].message) throw new Error(e.response.errors[0].message) @@ -308,10 +345,12 @@ async function handleMerge({ } if (result) { - await react('ROCKET') try { - body.push(...(await merge())) + const { reaction, messages } = await merge() + await react(reaction) + body.push(...messages) } catch (e) { + await react('THUMBS_DOWN') // Remove the HTML comment with node_id reference to allow retrying this merge on the next run. body.shift() body.push(`:x: Merge failed with: ${e} (#371492)`) From 86980620a28c4c63ebb598ceecadceea71aa50a4 Mon Sep 17 00:00:00 2001 From: Aliaksandr Date: Sat, 25 Apr 2026 03:12:03 +0300 Subject: [PATCH 82/95] ci/github-script/merge: refuse merge when a committer has requested changes A "changes requested" review from a committer blocks both the merge queue and auto-merge, but unlike approvals it isn't auto-dismissed when new commits are pushed. Surface it as a checklist item so the bot's reply explains the block instead of silently enabling auto-merge that will never trigger. Implementation pulls every review for the PR via `listReviews` and, for each committer, takes the latest review whose state is `APPROVED`/`CHANGES_REQUESTED`. The check fails if any committer's latest stance is `CHANGES_REQUESTED`. Other review states fall out naturally: - A dismissed review surfaces as `DISMISSED`, so a committer dismissing their own changes-requested review unblocks the PR. - A comment-only follow-up surfaces as `COMMENTED`, so it doesn't override an earlier actionable review - the prior stance still stands until the committer explicitly approves or requests changes again. Assisted-by: claude-code with claude-opus-4-8[1m]-high (cherry picked from commit b94b44d3f9e0d7d021dc4d550d2dd0185da47489) --- ci/README.md | 2 ++ ci/github-script/merge.js | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) diff --git a/ci/README.md b/ci/README.md index 814299ed8182..6fbdca39800c 100644 --- a/ci/README.md +++ b/ci/README.md @@ -51,6 +51,8 @@ To ensure security and a focused utility, the bot adheres to specific limitation - opened by [@r-ryantm](https://nix-community.github.io/nixpkgs-update/r-ryantm/). - The user attempting to merge is a member of [@NixOS/nixpkgs-maintainers]. - The user attempting to merge is a maintainer of all packages touched by the PR. +- No [committer][@NixOS/nixpkgs-committers] has an outstanding "changes requested" review. + These block both the merge queue and auto-merge, so the bot refuses to merge until the review is addressed or dismissed. Once these constraints are met, the bot picks a merge strategy based on the `no PR failures` commit status: diff --git a/ci/github-script/merge.js b/ci/github-script/merge.js index e7f0cac8cc83..1d218b27b0ae 100644 --- a/ci/github-script/merge.js +++ b/ci/github-script/merge.js @@ -7,6 +7,7 @@ function runChecklist({ pull_request, log, maintainers, + reviews, user, userIsMaintainer, }) { @@ -41,6 +42,27 @@ function runChecklist({ .filter(Boolean), ) + // A "changes requested" review from a committer blocks both the merge queue and + // auto-merge, even if it was made on an older commit (unlike approvals, GitHub does + // not auto-dismiss changes-requested reviews on push). For each committer, take their + // latest actionable review; if it's CHANGES_REQUESTED, they're blocking the PR. + // Dismissed reviews surface as DISMISSED and comment-only follow-ups as COMMENTED, so + // both are skipped naturally — the prior actionable review still stands until the + // committer explicitly approves or requests changes again. + const committerReviewState = new Map() + for (const { user, state } of reviews) { + if ( + user && + committers.has(user.id) && + ['APPROVED', 'CHANGES_REQUESTED'].includes(state) + ) { + committerReviewState.set(user.id, state) + } + } + const noBlockingReviews = !Array.from(committerReviewState.values()).includes( + 'CHANGES_REQUESTED', + ) + const checklist = { 'PR targets a [development branch](https://github.com/NixOS/nixpkgs/blob/-/ci/README.md#branch-classification).': classify(pull_request.base.ref).type.includes('development'), @@ -60,6 +82,8 @@ function runChecklist({ // CI state is intentionally *not* a checklist item: auto-merge exists precisely to // cover unfinished CI, and an already-failed CI is reported via the merge message // (see merge() below) rather than a blanket refusal. + 'PR is not blocked by a "changes requested" review from a [committer](https://github.com/orgs/NixOS/teams/nixpkgs-committers).': + noBlockingReviews, } if (user) { @@ -159,6 +183,15 @@ async function handleMerge({ }) ).data.find(({ context }) => context === 'no PR failures')?.state + // Reviews are returned in chronological order; the latest review per user wins below. + // Dismissed reviews surface with state DISMISSED and comment-only follow-ups as + // COMMENTED, so both naturally drop out of the committer-blocking check. + const reviews = await github.paginate(github.rest.pulls.listReviews, { + ...context.repo, + pull_number, + per_page: 100, + }) + // Only look through comments *after* the latest (force) push. const lastPush = events.findLastIndex( ({ event, sha, commit_id }) => @@ -309,6 +342,7 @@ async function handleMerge({ pull_request, log, maintainers, + reviews, user: comment.user, userIsMaintainer: await isMaintainer(comment.user.login), }) @@ -380,6 +414,7 @@ async function handleMerge({ pull_request, log, maintainers, + reviews, }) // Returns a boolean, which indicates whether the PR is merge-bot eligible in principle. From e934e8a36434a63ff1e516a5bff9447574aed2fb Mon Sep 17 00:00:00 2001 From: Aliaksandr Date: Sat, 9 May 2026 15:04:29 +0300 Subject: [PATCH 83/95] ci/github-script/merge: clarify Auto Merge follow-up tip The previous tip ("Sometimes GitHub gets stuck after enabling Auto Merge") didn't explain why nothing happens immediately after the bot's "Enabled Auto Merge" reply, leaving maintainers unsure whether to wait or intervene. Spell out that Auto Merge waits for required CI before queueing, that a later CI failure leaves the PR un-queued until it is fixed, and link to GitHub's documentation; keep the existing "leave another approval" workaround for the rare cases where Auto Merge stalls after CI completes. Assisted-by: claude-code with claude-opus-4-8[1m]-high (cherry picked from commit 6f9325fb5dbf965b2078cba8a5ca4ad285e8f0af) --- ci/github-script/merge.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ci/github-script/merge.js b/ci/github-script/merge.js index 1d218b27b0ae..963d2c1e61bf 100644 --- a/ci/github-script/merge.js +++ b/ci/github-script/merge.js @@ -292,7 +292,9 @@ async function handleMerge({ `:heavy_check_mark: Enabled Auto Merge (#306934)`, '', '> [!TIP]', - '> Sometimes GitHub gets stuck after enabling Auto Merge. In this case, leaving another approval should trigger the merge.', + '> [Auto Merge](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request) will queue this PR once required CI checks succeed.', + '> If CI fails instead, fixing it needs a new push, which disables Auto Merge and invalidates this command — comment `@NixOS/nixpkgs-merge-bot merge` again once CI is green.', + '> If GitHub gets stuck even though CI passed (it sometimes does), leaving another approval should kick off the merge.', ], } } catch (e) { From 926237f642380c1aefcc2cf2aa414ca16456da8a Mon Sep 17 00:00:00 2001 From: Aliaksandr Date: Sat, 9 May 2026 15:15:27 +0300 Subject: [PATCH 84/95] ci/github-script/merge: share reviews fetch with bot.js, drop events `bot.js` already pulls reviews via GraphQL for the approval-count labels. Move that fetch above the `handleMerge` call, add `commit { oid }` to the query, and pass the result through. `handleMerge` no longer issues its own `listReviews` REST call. While here, the `approvals` set is now derived from the same reviews data. Two upsides: - A reviewer who approved and was later dismissed no longer counts towards the approval check; their review now surfaces with state DISMISSED instead of leaving a stale `reviewed` event behind. - `events` is no longer needed by `runChecklist` (it was only feeding the approvals filter); the parameter is dropped from both call sites. `handleMerge` still uses `events` for tracking the latest push and merge-command comments. Also drop the redundant `user` truthy checks (and the stale "some users have been deleted" comment) in `runChecklist`. The GraphQL query uses `author { ... on User { login id } }` and bot.js then filters via `r.user?.login`, so by the time reviews reach `runChecklist` every entry already has a populated `user`. Verified by querying real PRs: bots surface as `{__typename: "Bot"}` (no `login`/`id`, filtered out by bot.js), and deleted accounts surface as the "ghost" user (login `"ghost"`, id `10137`), which passes the filter but matches no committer - harmless for both checks. Assisted-by: claude-code with claude-opus-4-8[1m]-high (cherry picked from commit 0c1c3d48139703764cb5415b585313ef8b15d0fe) --- ci/github-script/bot.js | 29 ++++++++++++++++------------- ci/github-script/merge.js | 27 ++++++--------------------- 2 files changed, 22 insertions(+), 34 deletions(-) diff --git a/ci/github-script/bot.js b/ci/github-script/bot.js index c952499cec54..8e0043d5505c 100644 --- a/ci/github-script/bot.js +++ b/ci/github-script/bot.js @@ -206,20 +206,8 @@ module.exports = async ({ github, context, core, dry }) => { const maintainers = await getMaintainerMap(pull_request.base.ref) - const merge_bot_eligible = await handleMerge({ - github, - context, - core, - log, - dry, - pull_request, - events, - maintainers, - getTeamMembers, - getUser, - }) - // Check for any human reviews other than the PR author, GitHub actions and other GitHub apps. + // `commit { oid }` is needed by handleMerge to verify approvals are against the current head. const reviews = ( await github.graphql( `query($owner: String!, $repo: String!, $pr: Int!) { @@ -231,6 +219,7 @@ module.exports = async ({ github, context, core, dry }) => { reviews(first: 100) { nodes { state + commit { oid } user: author { # Only get users, no bots ... on User { @@ -266,6 +255,20 @@ module.exports = async ({ github, context, core, dry }) => { r.user.id !== pull_request.user?.id, ) + const merge_bot_eligible = await handleMerge({ + github, + context, + core, + log, + dry, + pull_request, + events, + reviews, + maintainers, + getTeamMembers, + getUser, + }) + const approvals = new Set( reviews .filter((review) => review.state === 'APPROVED') diff --git a/ci/github-script/merge.js b/ci/github-script/merge.js index 963d2c1e61bf..180a12b0fe4a 100644 --- a/ci/github-script/merge.js +++ b/ci/github-script/merge.js @@ -2,7 +2,6 @@ const { classify } = require('../supportedBranches.js') function runChecklist({ committers, - events, files, pull_request, log, @@ -28,18 +27,15 @@ function runChecklist({ .reduce((acc, cur) => acc?.intersection(cur) ?? cur) const approvals = new Set( - events + reviews .filter( - ({ event, state, commit_id }) => - event === 'reviewed' && - state === 'approved' && + ({ state, commit }) => + state === 'APPROVED' && // Only approvals for the current head SHA count, otherwise authors could push // bad code between the approval and the merge. - commit_id === pull_request.head.sha, + commit?.oid === pull_request.head.sha, ) - .map(({ user }) => user?.id) - // Some users have been deleted, so filter these out. - .filter(Boolean), + .map(({ user }) => user.id), ) // A "changes requested" review from a committer blocks both the merge queue and @@ -52,7 +48,6 @@ function runChecklist({ const committerReviewState = new Map() for (const { user, state } of reviews) { if ( - user && committers.has(user.id) && ['APPROVED', 'CHANGES_REQUESTED'].includes(state) ) { @@ -150,6 +145,7 @@ async function handleMerge({ dry, pull_request, events, + reviews, maintainers, getTeamMembers, getUser, @@ -183,15 +179,6 @@ async function handleMerge({ }) ).data.find(({ context }) => context === 'no PR failures')?.state - // Reviews are returned in chronological order; the latest review per user wins below. - // Dismissed reviews surface with state DISMISSED and comment-only follow-ups as - // COMMENTED, so both naturally drop out of the committer-blocking check. - const reviews = await github.paginate(github.rest.pulls.listReviews, { - ...context.repo, - pull_number, - per_page: 100, - }) - // Only look through comments *after* the latest (force) push. const lastPush = events.findLastIndex( ({ event, sha, commit_id }) => @@ -339,7 +326,6 @@ async function handleMerge({ const { result, eligible, checklist } = runChecklist({ committers, - events, files, pull_request, log, @@ -411,7 +397,6 @@ async function handleMerge({ const { result } = runChecklist({ committers, - events, files, pull_request, log, From a51b6aa9aebaee56d9c178e9588039b8ce572c19 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Wed, 24 Jun 2026 14:30:12 +0200 Subject: [PATCH 85/95] grafana: 13.0.2 -> 13.0.3 ChangeLog: https://github.com/grafana/grafana/releases/tag/v13.0.3 (cherry picked from commit 19863f1d2a55140e833bef391e9380555cf06f45) --- pkgs/by-name/gr/grafana/package.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/gr/grafana/package.nix b/pkgs/by-name/gr/grafana/package.nix index 19e9c093ff56..c7ad9b9f092a 100644 --- a/pkgs/by-name/gr/grafana/package.nix +++ b/pkgs/by-name/gr/grafana/package.nix @@ -21,7 +21,7 @@ buildGoModule (finalAttrs: { pname = "grafana"; - version = "13.0.2"; + version = "13.0.3"; subPackages = [ "pkg/cmd/grafana" @@ -33,7 +33,7 @@ buildGoModule (finalAttrs: { owner = "grafana"; repo = "grafana"; rev = "v${finalAttrs.version}"; - hash = "sha256-knalINdJPFrvj6HNxWPV6wu6TSkrRvgkZjOnECOsWwU="; + hash = "sha256-HOTArHAoqhyKiqJf0Py2JMiMBloSgNDnVPDcKWlnY3I="; }; patches = [ @@ -55,12 +55,12 @@ buildGoModule (finalAttrs: { # Since this is not a dependency attribute the buildPackages has to be specified. offlineCache = buildPackages.yarn-berry_4-fetcher.fetchYarnBerryDeps { inherit (finalAttrs) src missingHashes patches; - hash = "sha256-NXDXmed2TsMQS99breDt0Ky6X2ZyuWkJ5KyKz5Apkt8="; + hash = "sha256-pYuNW74ghHmBVzRcfXTXROjxo2FmsxmkTUbJpEFMkow="; }; disallowedRequisites = [ finalAttrs.offlineCache ]; - vendorHash = "sha256-rFGwtplr+n0qgIulycNQ5L/lh4ZFoHCrYeIfbb+e/h4="; + vendorHash = "sha256-dVu95a6xc7fEK3epeY0ZzF4IUT+WhozAmSDicYoIL4A="; # Grafana seems to just set it to the latest version available # nowadays. From 71dfe187906e8f1b529ce51ccf61fbdc0198fe27 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Thu, 25 Jun 2026 21:01:54 +0200 Subject: [PATCH 86/95] pretix: 2026.4.3 -> 2026.4.4 https://pretix.eu/about/en/blog/20260625-release-2026-5-2/ https://github.com/pretix/pretix/compare/v2026.4.3...v2026.4.4 Fixes: CVE-2026-57532, CVE-2026-57533, CVE-2026-57535, CVE-2026-13225 --- pkgs/by-name/pr/pretix/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/pr/pretix/package.nix b/pkgs/by-name/pr/pretix/package.nix index e1d16cae94db..103f13593b2a 100644 --- a/pkgs/by-name/pr/pretix/package.nix +++ b/pkgs/by-name/pr/pretix/package.nix @@ -51,13 +51,13 @@ let }; pname = "pretix"; - version = "2026.4.3"; + version = "2026.4.4"; src = fetchFromGitHub { owner = "pretix"; repo = "pretix"; tag = "v${version}"; - hash = "sha256-fzM6WlqXH+ehPxHsvzNeM21Vupj0GBYXhFL0tpBp1uY="; + hash = "sha256-aDOI2XZF0n653ZgTtgEOb+JL/R0zDsdHOFvBsQdbwRw="; }; npmDeps = buildNpmPackage { From 0b4240de33e04bfd7dc32ab770e2575f14c0175e Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Thu, 25 Jun 2026 21:02:40 +0200 Subject: [PATCH 87/95] pretix.plugins.pages: 1.6.3 -> 1.6.4 https://github.com/pretix/pretix-pages/compare/v1.6.3...v1.6.4 Fixes: CVE-2026-57534 (cherry picked from commit a0a8146f2d4269476aace34499dcb03e706b2536) --- pkgs/by-name/pr/pretix/plugins/pages/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/pr/pretix/plugins/pages/package.nix b/pkgs/by-name/pr/pretix/plugins/pages/package.nix index 3b2f61e8e84e..37c32fa5b20c 100644 --- a/pkgs/by-name/pr/pretix/plugins/pages/package.nix +++ b/pkgs/by-name/pr/pretix/plugins/pages/package.nix @@ -8,14 +8,14 @@ buildPythonPackage rec { pname = "pretix-pages"; - version = "1.6.3"; + version = "1.6.4"; pyproject = true; src = fetchFromGitHub { owner = "pretix"; repo = "pretix-pages"; rev = "v${version}"; - hash = "sha256-ZM38zHlFB5013PvoJwm7YC5/wHg2GZWmrhvreXuqNc8="; + hash = "sha256-whpO8aE0VUSrByf3P0JaIoruYbJi8wj4nZo/2tx+XLU="; }; build-system = [ From 464f845902cb1726d70f6fb502596be5c59c59a8 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Thu, 28 May 2026 01:54:45 +0200 Subject: [PATCH 88/95] pretix.plugins.mollie: 2.5.4 -> 2.5.5 https://github.com/pretix/pretix-mollie/compare/v2.5.4...v2.5.5 (cherry picked from commit aa6cc97146f281ad8088ddedfb13cc78455a8cdf) --- pkgs/by-name/pr/pretix/plugins/mollie/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/pr/pretix/plugins/mollie/package.nix b/pkgs/by-name/pr/pretix/plugins/mollie/package.nix index df4813bbde40..a48afd06166b 100644 --- a/pkgs/by-name/pr/pretix/plugins/mollie/package.nix +++ b/pkgs/by-name/pr/pretix/plugins/mollie/package.nix @@ -8,14 +8,14 @@ buildPythonPackage rec { pname = "pretix-mollie"; - version = "2.5.4"; + version = "2.5.5"; pyproject = true; src = fetchFromGitHub { owner = "pretix"; repo = "pretix-mollie"; tag = "v${version}"; - hash = "sha256-lDICcpO8Qod++eM2okq4CJirIBM18zYnbM6Bbwb9e34="; + hash = "sha256-EqitdAoTm6mpXp8g2HftvxRbg+6gXxR7xUsC+aYfv8U="; }; build-system = [ From 7e6880fb6d0ce254d0972c74ca67bcd0d1f3a483 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Thu, 25 Jun 2026 21:02:55 +0200 Subject: [PATCH 89/95] pretix.plugins.mollie: 2.5.5 -> 2.5.6 https://github.com/pretix/pretix-mollie/compare/v2.5.5...v2.5.6 Fixes: CVE-2026-57536 (cherry picked from commit b9f887622c936bfac7516a1ecfa3c2030368c15c) --- pkgs/by-name/pr/pretix/plugins/mollie/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/pr/pretix/plugins/mollie/package.nix b/pkgs/by-name/pr/pretix/plugins/mollie/package.nix index a48afd06166b..b17d5d52a534 100644 --- a/pkgs/by-name/pr/pretix/plugins/mollie/package.nix +++ b/pkgs/by-name/pr/pretix/plugins/mollie/package.nix @@ -8,14 +8,14 @@ buildPythonPackage rec { pname = "pretix-mollie"; - version = "2.5.5"; + version = "2.5.6"; pyproject = true; src = fetchFromGitHub { owner = "pretix"; repo = "pretix-mollie"; tag = "v${version}"; - hash = "sha256-EqitdAoTm6mpXp8g2HftvxRbg+6gXxR7xUsC+aYfv8U="; + hash = "sha256-XInwUecuC3sEcRpuS+xa7Gb2Isb18SexbZ2+CcUF7/E="; }; build-system = [ From c5644dead4f8b042f2572caace0dd61dcb99edf8 Mon Sep 17 00:00:00 2001 From: "nixpkgs-ci[bot]" <190413589+nixpkgs-ci[bot]@users.noreply.github.com> Date: Thu, 25 Jun 2026 19:49:53 +0000 Subject: [PATCH 90/95] maintainers/github-teams.json: Automated sync (cherry picked from commit ab2fe2ce89aa09b8f61a4ac0c5189817a8bf683d) --- maintainers/github-teams.json | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/maintainers/github-teams.json b/maintainers/github-teams.json index e61912fb3a8e..b1901f4c40ec 100644 --- a/maintainers/github-teams.json +++ b/maintainers/github-teams.json @@ -556,8 +556,7 @@ "members": { "Ericson2314": 1055245, "peterwaller-arm": 52030119, - "rrbutani": 7833358, - "sternenseemann": 3154475 + "rrbutani": 7833358 }, "name": "LLVM" }, @@ -943,6 +942,7 @@ }, "members": { "andir": 638836, + "leona-ya": 11006031, "pyrox0": 35778371 }, "name": "Security review" @@ -997,6 +997,17 @@ }, "name": "systemd" }, + "test-driver": { + "description": "Maintain the NixOS integration test driver.", + "id": 18201265, + "maintainers": { + "Ma27": 6025220, + "kmein": 10352507, + "tfc": 29044 + }, + "members": {}, + "name": "test-driver" + }, "xen-project": { "description": "Maintain the Xen Project Hypervisor and the related tooling ecosystem. Members listed as \"Maintainers\" are recipients of Xen Security Advisories sent to xsa@nixos.org.", "id": 11127725, From 5d61e31707153dca09beaa190f184a9bdc7a0c74 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Thu, 25 Jun 2026 21:54:18 +0200 Subject: [PATCH 91/95] servo: 0.2.0 -> 0.3.0 https://github.com/servo/servo/releases/tag/v0.3.0 (cherry picked from commit d8adca4d3353138ae18f051122d0fe957654bef4) --- pkgs/by-name/se/servo/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/se/servo/package.nix b/pkgs/by-name/se/servo/package.nix index 1dc10fc3c775..659112af119e 100644 --- a/pkgs/by-name/se/servo/package.nix +++ b/pkgs/by-name/se/servo/package.nix @@ -69,13 +69,13 @@ in rustPlatform.buildRustPackage (finalAttrs: { pname = "servo"; - version = "0.2.0"; + version = "0.3.0"; src = fetchFromGitHub { owner = "servo"; repo = "servo"; tag = "v${finalAttrs.version}"; - hash = "sha256-zZitnAiexoroKx3TMu3sB0KDvIsBcT7Krwa6lJqY4yw="; + hash = "sha256-DfUjByBtDcOShExuBBLSHmgP9CPMSdkovw9QeGRDYaA="; # Breaks reproducibility depending on whether the picked commit # has other ref-names or not, which may change over time, i.e. with # "ref-names: HEAD -> main" as long this commit is the branch HEAD @@ -85,7 +85,7 @@ rustPlatform.buildRustPackage (finalAttrs: { ''; }; - cargoHash = "sha256-hZBI3Vte/FvN7qJy2VGF0LVQIFSWa931BFFbaUfN814="; + cargoHash = "sha256-N0MUtL0HslJHEQUCB0iMbXGdD9hA6GRqcmdSjjhsu8E="; # set `HOME` to a temp dir for write access # Fix invalid option errors during linking (https://github.com/mozilla/nixpkgs-mozilla/commit/c72ff151a3e25f14182569679ed4cd22ef352328) From ba4f4947add6a565c4d57cb821b37fbec8d9228c Mon Sep 17 00:00:00 2001 From: networkException Date: Thu, 25 Jun 2026 23:43:28 +0200 Subject: [PATCH 92/95] ungoogled-chromium: 149.0.7827.155-1 -> 149.0.7827.196-1 https://chromereleases.googleblog.com/2026/06/stable-channel-update-for-desktop_0482630350.html This update includes 18 security fixes. CVEs: CVE-2026-13028 CVE-2026-13032 CVE-2026-13033 CVE-2026-13038 CVE-2026-13021 CVE-2026-13022 CVE-2026-13023 CVE-2026-13024 CVE-2026-13025 CVE-2026-13026 CVE-2026-13027 CVE-2026-13029 CVE-2026-13030 CVE-2026-13031 CVE-2026-13034 CVE-2026-13035 CVE-2026-13036 CVE-2026-13037 (cherry picked from commit ba69f95928184ab80e2f8fd6bd7534c633f1364c) --- .../networking/browsers/chromium/info.json | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/pkgs/applications/networking/browsers/chromium/info.json b/pkgs/applications/networking/browsers/chromium/info.json index bf2bd624c1ea..fc3ece2ce796 100644 --- a/pkgs/applications/networking/browsers/chromium/info.json +++ b/pkgs/applications/networking/browsers/chromium/info.json @@ -823,7 +823,7 @@ } }, "ungoogled-chromium": { - "version": "149.0.7827.155", + "version": "149.0.7827.196", "deps": { "depot_tools": { "rev": "45dedc4c3b87c982fd846b3dc599b233ed3aff90", @@ -835,16 +835,16 @@ "hash": "sha256-oFs7fZAZEs/gQ7X1A4uigo9+Y+iEN9sMMQYwAjEuD04=" }, "ungoogled-patches": { - "rev": "149.0.7827.155-1", - "hash": "sha256-+DviTrU7mdY3YQIIUzFh0DbFKUokQI8+lmQslUZdNSU=" + "rev": "149.0.7827.196-1", + "hash": "sha256-nRcMTP+su+mFP/JkyLBIDrG+dKYhvPANFw0Y8qVWzrA=" }, "npmHash": "sha256-pF0JtwFpPC4/fodbhSJnQKkczA9WlDg4VqEAy9aDVLg=" }, "DEPS": { "src": { "url": "https://chromium.googlesource.com/chromium/src.git", - "rev": "07b52360cc15066f987c910ab34dfbcd4a8778d2", - "hash": "sha256-D9RKH0kzEfaMsCDnFFIGCGLyfhghnGMOLA0XmOa9MtI=", + "rev": "43eb30368c6ca3d14d540487954abb2780aeae3a", + "hash": "sha256-pwSfASgR4SiQTJBERhOVyR8mANYJk67f+u2pmCCW6ko=", "recompress": true }, "src/third_party/clang-format/script": { @@ -914,8 +914,8 @@ }, "src/third_party/angle": { "url": "https://chromium.googlesource.com/angle/angle.git", - "rev": "591ee1999d950f2bc54be89651eb62c8d7925314", - "hash": "sha256-crooDCkJ6voJyDBIUvtjmXnA4xOx7YmGltuf2ulTLIk=" + "rev": "355cc61af2aadd8f0494800325b2bf9908138108", + "hash": "sha256-fgaCyO0oaz90aTaWMHH8ocySA0hXDHsPEl6vtMj4BY0=" }, "src/third_party/angle/third_party/glmark2/src": { "url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2", @@ -954,8 +954,8 @@ }, "src/third_party/dawn": { "url": "https://dawn.googlesource.com/dawn.git", - "rev": "5f4c5ef509c5ffa65822302341cf9b2ccad471f9", - "hash": "sha256-h+0Gep+RWTTEVoRrXCRDCtHdbYlSYdNK1botahtqUX0=" + "rev": "54b4153cfef88e048f365f99b962478f0087dfe8", + "hash": "sha256-Bv30zz/pCNVzUl+mKCpusWc94poytv9ZFelZIcs+2B8=" }, "src/third_party/dawn/third_party/glfw3/src": { "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw", @@ -1639,8 +1639,8 @@ }, "src/v8": { "url": "https://chromium.googlesource.com/v8/v8.git", - "rev": "6511f6cfab1f24c360d0fb737d205c27da48a623", - "hash": "sha256-Dpe0Z/zjdPlOlqi85c9QSr7rLs7dww+a/BY68B2MTCw=" + "rev": "933ce636c562cd54d68e7f7c93ab5cdffd685fca", + "hash": "sha256-zYArO6QS9nDIVWPINRVaDN1uX8X/wchBDeZHPZnwHYk=" } } } From fa8cae660cf4d0e1ae451f9e2a2e620eebf58fa8 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Sat, 30 May 2026 14:28:11 +0200 Subject: [PATCH 93/95] element-call: 0.18.0 -> 0.20.1 Changelog: https://github.com/element-hq/element-call/releases/tag/v0.20.1 Full diff: https://github.com/element-hq/element-call/compare/v0.18.0...v0.20.1 Upstream moved to pnpm as well, so accounts for that. License is corrected to agplv3, see also https://github.com/element-hq/element-call/pull/2984 (cherry picked from commit 49095ae2dd2e4e215ce6842f7f98f8bb2f5375e0) --- .../el/element-call/missing-hashes.json | 115 ----------------- pkgs/by-name/el/element-call/package.nix | 121 +++++++++++------- .../el/element-call/yarn-4.14-support.patch | 21 --- 3 files changed, 72 insertions(+), 185 deletions(-) delete mode 100644 pkgs/by-name/el/element-call/missing-hashes.json delete mode 100644 pkgs/by-name/el/element-call/yarn-4.14-support.patch diff --git a/pkgs/by-name/el/element-call/missing-hashes.json b/pkgs/by-name/el/element-call/missing-hashes.json deleted file mode 100644 index d07a1b8b2cbd..000000000000 --- a/pkgs/by-name/el/element-call/missing-hashes.json +++ /dev/null @@ -1,115 +0,0 @@ -{ - "@esbuild/aix-ppc64@npm:0.25.1": "6de3a364b7f79f21f66d606d4d29c72ef81c741d71ab4bb941c4eabe7b6a809b1340f4dd5c943827005e421912880741320b9617d17fce762d204cfb94175223", - "@esbuild/aix-ppc64@npm:0.27.2": "78d13201fd4d048d19955fc510db508b14b5fc1a38f4ea506469eac65db770c65fc3727df15b087778178fc8e3304df88559a7441d227451efd8a0b1a688a729", - "@esbuild/android-arm64@npm:0.25.1": "716c98ad3220c71cbaedcfa34aa7c877a3fae911938c3776a66600d7f65980e384799a6832a1b9aea96c6d5a8880610f54744bd0813e743c511d44056ef528d6", - "@esbuild/android-arm64@npm:0.27.2": "e8aded79b2f1f8841c082396f7476bee51c056ed468e438fe2ee00b6b73e96acd640d0b8d0cc13e63c972898f6cdd275483c36c562d4186f0efc01881672b08a", - "@esbuild/android-arm@npm:0.25.1": "d2c9e95dd2027f6e14250a90a11136d9ce73a2157a8d104df4a9dd199d3c50cd91f25813536b4776630acb78596bd5a025976962c6d624df7594c32f2d9c1395", - "@esbuild/android-arm@npm:0.27.2": "ac673502cf6672dabb4b82a26bb3cc120402acba1b87a92481c0a37c8fa06847fd16503714bb227f6351d836f6f60c644ab50fda95c896d8eeb3e5ec3af96226", - "@esbuild/android-x64@npm:0.25.1": "92f1bec801b414ecdc4b73adfbb4482f4f2cfba423d33296914fa59ffdafb81facc445a7f65d1eea813c078220a0606f4be02252843bb9039ceb2755f643387c", - "@esbuild/android-x64@npm:0.27.2": "dcf5c84443645af089e3b82421097c0288a4bdebabf231449ddd66e1b48952e5af975bd26954a50be0441605b91cfe779ca2192bc4b02b7b19192a2a86f912f1", - "@esbuild/darwin-arm64@npm:0.25.1": "9c4cd09c0bd8479e27e04e2397edccebae928184c463684490137d2b7ea3171051b66596db229af2ad3e6a911c1c8a9d10b8aed30d11d0aa155ac0d309fd5dd6", - "@esbuild/darwin-arm64@npm:0.27.2": "cf08b03672941acbea8b509db79a7cb9cf8c81b563c75414c87b8c8442cb1178063eaa14b7cd1ae6cae95dba7e1de9343b721a6d19523a5f21c3d1367e3688b7", - "@esbuild/darwin-x64@npm:0.25.1": "31b64c02be9438e175e8b343c52e0bbc7964f08a1b44e0adbfa2a1b229ccd0ad0184cdb8313272b4590298833ea0b197d82a909466caffe90105f8acb30402d0", - "@esbuild/darwin-x64@npm:0.27.2": "5d3207cf85674b01a817c43064525e39b215802a9ecf352d15e92e926c3e549d95b30e127c2d3f8196ac9472ecca87a861d9f270221ee55884c7a6d0aa636fe1", - "@esbuild/freebsd-arm64@npm:0.25.1": "e04018ffd760dd101a5931e0248751bdfca98e3f29be9b41051d55278907f52a3e5ab80c32168e208c2ff287510d6d5b765d3adc841bfd621af7930c10a547e6", - "@esbuild/freebsd-arm64@npm:0.27.2": "45f475fc6ab2f4760155ca2b50c4cf0ea8aef2bfad3ba4548f4547898d3cc785dcfc2ea58a190be3c20c715c771d1d694a9eb6ef5fb6b72d93b6abc94f366b98", - "@esbuild/freebsd-x64@npm:0.25.1": "438215bea2dc716d2c9ffe9b921bbde06e77d96ec0c837fd79f46bc6e195aa50e5f55490228f7433df7aa47810eec5c602a9d9cf956c1794778018632b196f34", - "@esbuild/freebsd-x64@npm:0.27.2": "7fb62475cb9cdf54d22f2fa984ef57f891d05f366143227efd1d28d507a3b1f2c723239b3e22b3ac418467e6284a08eaf6dcf0bfd2a0f1bea06d0ac73c2aa8de", - "@esbuild/linux-arm64@npm:0.25.1": "c839788b6db471f144bc2627a117083c9a50402c76cde2f0e5411faaeb3a5cde4972bb7336b87de67cd0a65d4d5b00759668407a03b5d4ed3130d4984837429a", - "@esbuild/linux-arm64@npm:0.27.2": "89b8e94e2f4e7cf564623bb6b1d2e9ab218c6d4cafed93778fb797b552d3495f08c99e49d9a2573823bc62660353ce4b4cf17a2828359a3437a9caf8da99673b", - "@esbuild/linux-arm@npm:0.25.1": "ecf9fd9028d2166619b9a45161a987eebb6ef3dcb0159a2607ab164c58c26a15cf274e0b1088834c07ef9166349276d595fdad5c42bce8d03a55cb213d947efa", - "@esbuild/linux-arm@npm:0.27.2": "fd7c845a5ee2073ef6c5bc9d914844b48b82006ebf00f5acb98a43f600ee83fda578034ed8eb6f7f462ed4e3ecd8b7c6570a78bb708ee7eb10b93751ab879ad6", - "@esbuild/linux-ia32@npm:0.25.1": "36f208e10a4b778a28a9002338872e52d24dfc18e25d3b41dc53892279c3ee842d76c7b608a30620f128d85344acac0dc86f203f5de7082a21fa2e908c96b68c", - "@esbuild/linux-ia32@npm:0.27.2": "23f67cfbab67aa860d7afa842e29fa75eb16af8577a811c54263fc3a276c05e468d532bcdb118d174624ed76a9e133d2520567937d4ed646caf9dd19aadbae15", - "@esbuild/linux-loong64@npm:0.25.1": "75d95e6ee995c9f2abb202ca430685e5d58fbe9b0b5b01a69b498c9b360d309026d15bae7831de9c0c4f02e45028a92ffb169117c3b56dd1ac7ea8c6ef50628d", - "@esbuild/linux-loong64@npm:0.27.2": "b37e531c91346c7b5d31ce6664a334c391a27c3c9fb282136abf232111575387e9d066abf27f29436afc913270a8e2c2b09c1210fbf87e70f1028685d94ec4de", - "@esbuild/linux-mips64el@npm:0.25.1": "7fc22eb8a7dc9ee743113cb327eef3591bced4753f416f8dd722794a198a053ab6e120b3b13c1bb6cc89cbd02ea502187b1a3c9ebe8187407665c78995153740", - "@esbuild/linux-mips64el@npm:0.27.2": "8b48a6c7dc8f16147c1087b56710685f3b89279498caab6b63cad3db9402308adf633111d773cfe31756d41fe46e895f2c1ece0fc1ed484ab02e92c28357f0c6", - "@esbuild/linux-ppc64@npm:0.25.1": "84f914a776774bf209c5f96a3708e52477e1966b689a880c0256530063bc581125b5cc04b9700f4aa892e7770ba47c5a950a4be9f1bb3ccbe60a500383602156", - "@esbuild/linux-ppc64@npm:0.27.2": "4f207f87bfc1253974e00d3cf27316d3e93b7e51fde46ed618367e62f2875dffd66812acb85e8d2949dffc73eed7b3939a42bb93f40ec8fca4a6988173709dab", - "@esbuild/linux-riscv64@npm:0.25.1": "97f47cd5695686254b58f950ca973df1fcecfebf3bd585629121a65323ffaa7f95cf821392011ee069da492b46fdff771be332c699a438cf123351610e12d621", - "@esbuild/linux-riscv64@npm:0.27.2": "837a0aa03e82a1b853632d153515d68035e57b39ccf730a778311c04e3429aa80f001d990392519a641945501f6ab3af331481eb4551e99718e7cd2ba5862089", - "@esbuild/linux-s390x@npm:0.25.1": "10760a999d432d092a8ebe5f09752ee7e8ea77a1afa5f1adfe7f9ccb5bbf77d6e0da6dce5d1a4a7cd731d89b6075723c2bc0328f446ed129c4b63c6441ba22ae", - "@esbuild/linux-s390x@npm:0.27.2": "426a4b9d9d4c58d61031a412c64c8cfb0db0e38da3cf4dade253c45a46dc539dccee24700e965e66c7c397a65fef765fc43bdc6b3f46d6bc6f289f79c4b6d7d5", - "@esbuild/linux-x64@npm:0.25.1": "4cdb1625726580eb42432878912d5480a0321559ef2c6425c1db55f89f3fe1c35fb03b3adec92c3f52a4db751d7535f23086b80ed7b219d1edbb254ffbe96e68", - "@esbuild/linux-x64@npm:0.27.2": "febde9f6908220698cf72947534eca590c2b5ce8b0c9bc6170649c5f64f7f93808bb9be2caabd7c63068dc68e218741f27a17ffb8826d87fb487a0639888b90f", - "@esbuild/netbsd-arm64@npm:0.25.1": "f2427b094e072d2db7944b1d2a988dd9f17627976a395b941f225aec2d0565da2ea110a845eafae960af08e3eea74eb327e5eb9dbe06dc1e14f4439596c3b47c", - "@esbuild/netbsd-arm64@npm:0.27.2": "1f69c833bfc5d1d7c58f52fca35637df1686a5bff5c15af900c165b2561a809d805201dc8de712fa73c69205e96a078096cd00b00e9ca8fb5cd8741e4ec943b8", - "@esbuild/netbsd-x64@npm:0.25.1": "c8347ecc18b175923a3cbdaef61b64815ffe0cf2cc285f4034337c2df83e78a118ebfdf2ac3a46a8d8a19ce6a0e0605d27d11570d1758ab90074c99047b82fc0", - "@esbuild/netbsd-x64@npm:0.27.2": "29c9cbd018788521145d719013020dfbf744185eaeaff845f0fc925c67630c66743b03486a2531493f79482d2315e910a27a31f89a791e0a9589e04d86d295d7", - "@esbuild/openbsd-arm64@npm:0.25.1": "719812786b4f3ab4471a306c930ab1bf31e9d92f933ea2a34566f07d6269df5058e7d48408127daa197e6fdb21e30697303127d259b76b18936d534619a3eb15", - "@esbuild/openbsd-arm64@npm:0.27.2": "dccfe8ca6c0d648a26a626b5a4caf3325fed90d7ae343db2a86be9af2479391518c02d54470c2690aec23af1359debe7fbf125d979b5ea891a63fe4b206c2d6f", - "@esbuild/openbsd-x64@npm:0.25.1": "21590cbeda028e9b9f8131c54c36bab65a5d5bd5dd4e6bd9f80438045a655e9ac634bb3535a8650b694db267fe23bd2318a59cdec2fae1ba389ed1a00cc0bbe7", - "@esbuild/openbsd-x64@npm:0.27.2": "0bc581af266608ba01c530ec1fe2b475630dbd56538562f8b1748f7044727bd08d0784afa9aee8aa0a2afe843bb0b47572b4c6babb2a9953808d37263d730be1", - "@esbuild/openharmony-arm64@npm:0.27.2": "1f04a6d690bd2ef231801b0c46b40359b4d4451409cf46a865613f3942835e7633286c328c31f3a10065491f314e6c7c47d7a8f79c1a1ec25f59ff46f5765c6f", - "@esbuild/sunos-x64@npm:0.25.1": "e20ce3891d8717fe2cb885d92d16e9409802316eaa91071be5c7d75164d23dbc5a502be3691039051843d94192e8cf43ade61014a8bce298cfc13a8d3ddd85b0", - "@esbuild/sunos-x64@npm:0.27.2": "9543db0acc86a762f9fd708a3226ebc45a1625885532d153928b9d2b0de90b6d78db0f9b77261d345b95c1ba7282ff3ab0fa37932c2dcd9b1c2b7da7cf39cd76", - "@esbuild/win32-arm64@npm:0.25.1": "749a211eae6a47e5ceb71898df668d083bdec2ed762116fea7772824281f793aceb0487946e20ff604d7e102d1fc8538a73f15b476ca36e07f7ddfb601f6dfa1", - "@esbuild/win32-arm64@npm:0.27.2": "2bfe0fef3ace4a5b0f7647168ae21eda9344a8bef4924d60d1ca781b59eb1f7fef0858aef6e2fb8c185638117bfb7dc18c55a700db57799955c8f655eaaf1f44", - "@esbuild/win32-ia32@npm:0.25.1": "bb45fd889d858678ec68114bfc398965ed8d44e46a9517fcd9f7b397101c2cf94d78938a2640f6f2a1fe65de4ae8830fd426cd21a28302bb92333913b3c16c85", - "@esbuild/win32-ia32@npm:0.27.2": "c510d04bc11f11b7bd6bbf0ea28e2ba484e6232b7655b5cc8ccf8276ef7da760d54a79eaef87a1a40a81632a5ec4a9f7bb08f63920e5d145c8a893ae76d93094", - "@esbuild/win32-x64@npm:0.25.1": "e33291b9834095e6460bd20bb15c49361758bf66d28ccffe0c06a1565211c91f668d9cfc0cbd5bd7a5def693fe7272dbe290b08d4eadba29e750c8a9c739f564", - "@esbuild/win32-x64@npm:0.27.2": "d11933a70f9c908e3cd7202071dc23a9dea8afa58a4c2e22a3beab3516d0898345a5ebb2af47ffb2cc7f5d2a6d788ed4681fa7f37e121f1605149f124d632c67", - "@oxc-resolver/binding-android-arm-eabi@npm:11.19.1": "7fe35b00927acc6b1e9abd7cbf001cc4855f697b1a6604f245cf80ecb09628195d724545680b11ee58c462482247017e6d25d3b6074437ac61842ebb2200e925", - "@oxc-resolver/binding-android-arm64@npm:11.19.1": "2074f0f614aac0178d8c879f0a3897aebbe9cce66241bb8db8dd0400bf30db8a322fbcfb3dffd90e4a9f08eb52f32026155094c3515901f9e50f8c8115508bc2", - "@oxc-resolver/binding-darwin-arm64@npm:11.19.1": "43f0ebd467387f508dd13749b67a1b21b81902dfec7c7fdee24df1976942a78171e29e4ef09390dae88181dcdc4ccf08f43ade727c101572fff961b925f79834", - "@oxc-resolver/binding-darwin-x64@npm:11.19.1": "efad8b905d7cab94ddb749a7b486e7606d21a71ba3f2c8bb117e4a7648aa22499663c96819196e0f38830bb87885f147f517147f3117f805f908274086de01f9", - "@oxc-resolver/binding-freebsd-x64@npm:11.19.1": "750c57d8291f8ab8759f68f16b10aa5967879b7f6f432aed838d3e4b3ea25857c3f5dc1fd4677e79de890e79cc5bdf8bc845ab403bc7d9b7d7827c6af11404a3", - "@oxc-resolver/binding-linux-arm-gnueabihf@npm:11.19.1": "d1a71513000f2d7c300c45ac6b0900831e37759fd0df7c92a6cd2c66b87a724a303da7df94ed16fcbba72ccda45766923212c9711edd228b9f97dfa8da38e08a", - "@oxc-resolver/binding-linux-arm-musleabihf@npm:11.19.1": "4f1b757e8e86fbfdb7f8fd43e9684f3fe339e46606d836b509241c9217ae608397c5c4383b45ba9eabc3b6b4664842839037d41a9e49e726e4ef6e75d871904c", - "@oxc-resolver/binding-linux-arm64-gnu@npm:11.19.1": "6b1342772f5f347fe2a25582a8cd60f3814a7a6e4d2bc8e4a140355409df550858b961ce93932e3ce01fd440e7d4b2dd144978cd6372af325a6e2d85e496b4e8", - "@oxc-resolver/binding-linux-arm64-musl@npm:11.19.1": "40b99fcf1401d0f09a701572927bae4305a15705d2bb44003773ca5bb3ea8f28037e1e64fef5525eef314bd6ef348997b36cd521b4023053e0e0873b6700d52f", - "@oxc-resolver/binding-linux-ppc64-gnu@npm:11.19.1": "3581288514ce58eb79c927a03a43667e7e51b67b20be1f2c8343bce07f1fa848b9802f2d12990af73e8dae790d1ac6200611699c5350bd28a06abe3115a98002", - "@oxc-resolver/binding-linux-riscv64-gnu@npm:11.19.1": "1a8e43df91d8e7fec21c3cf816f20f98a0237b202e99d3768e1a9c49d9ddfbf0acea962991c4ae67dea936f3d2031d77bcacd3af615eecacf7828246be79becc", - "@oxc-resolver/binding-linux-riscv64-musl@npm:11.19.1": "a71fd4c5a13d7cb588d341318811d2728d64111878757988b15c2be3199d0e3f9dacb867ca990ec3cc38ff9eeaf9dfdee7aeb23738028031e6303903f0e501c4", - "@oxc-resolver/binding-linux-s390x-gnu@npm:11.19.1": "f4fc6a75967235ab88550b30891eb17a490e5bcfa8e9b2eaad33b3a4e7fd52ca60e6e0df3dbed5ab9bf4cab51bf05725e86e6d3172a46a1a95a928012a2d52bc", - "@oxc-resolver/binding-linux-x64-gnu@npm:11.19.1": "090f364639f4c6c021f345dc182c37c0d8370bc7b7ce5d93c546a49a3188d400a9c030106cba27a8c02dd7044384efc51187cee4f2e617109593e3c237a65509", - "@oxc-resolver/binding-linux-x64-musl@npm:11.19.1": "653779d9f6b78df664667e5f8693741727cd7c3e74831e0642a3ecd84fbfb36d302c1ae38a53cf33cc9516aef7d7f5ff66dacbb5f3701805baefc5785a5d7669", - "@oxc-resolver/binding-openharmony-arm64@npm:11.19.1": "4d88027b1ad55ab8b4820e8ee24c3a23b6ab6731c14da0da3c6b27394657bb54dd09d01085a64884e8f7219f719b48ea2221f0d7c8f10d2e7288c8a5e0b68287", - "@oxc-resolver/binding-wasm32-wasi@npm:11.19.1": "53be10977b68276a5e72be2a6b56361ff5548243aac269b93178a6058b0cf4dc14484a73ee5d0b68be1582982d96d434d97838515d1a9034a901080aef9d1b75", - "@oxc-resolver/binding-win32-arm64-msvc@npm:11.19.1": "f7671ed2e4f73d9f5ec386355fc9d93940c32bccdfbb7a7fb16bdc51e3cc42ed920cf9cd2f72d77c56e4a4a2c9357e53df3ae88b36106fcb363771e47f50e19e", - "@oxc-resolver/binding-win32-ia32-msvc@npm:11.19.1": "d60ccab0778023eb6977636c32d05c2369b54390aa8bdba4da1809323149548359bc546bccd9e5e717310c46e2a742ccd4dbc3f4750789aa97b5f9cef10ddcf7", - "@oxc-resolver/binding-win32-x64-msvc@npm:11.19.1": "bd84616bb214bd3f63531299f5576538f3f63411f95f1fb470fc8d7434c409fa1922bcbe535c4137673ceb3517e61b102e739a06b1963df600b717a954d22b16", - "@parcel/watcher-android-arm64@npm:2.5.1": "f99d569e4f6cf78a1b0097fb9d4682cb201a74370ae440c531da4e1d5021e46141bfcdf8ef708b51a5b9cb1c30f78eea933ce75216d5eeb7b969a2ad27c68e4a", - "@parcel/watcher-darwin-arm64@npm:2.5.1": "973c7ef3c94608da9cd1b20b18b9a7de2fb46fe44553731fe372b640de524491976150d0845f3d5953b74ed8ea469cb8d18a48651d0e5fb82f549a6b46b54f79", - "@parcel/watcher-darwin-x64@npm:2.5.1": "848c5516aed9c36e14751200dbbf57e83c0bd46cdab0932df33db120e66b9596de18eeb98980e319efde84014f67d9e7924d7555383d8ffcefe35c501166b84b", - "@parcel/watcher-freebsd-x64@npm:2.5.1": "cbd2b7884bc92422edabc0c74c3fbc06512bb7300fc137aaff2e96f46f61e5272265a0b5d230acc82a0e777b0c11661f0b8b7f89a9342c0920b752436dd2c750", - "@parcel/watcher-linux-arm-glibc@npm:2.5.1": "f2e1ec14dbb0f85a84a75f55fd7721598694976ba3ad439832b57e558b0d9240cc80ff83053fb8cf7caffb0592d51bb39d325112763ec1734924b49d4ba9c144", - "@parcel/watcher-linux-arm-musl@npm:2.5.1": "83344c7ecda2e79db59d711bcee0c3fa26922989139c031bd762cf3d5bfb191797e22e9ed6072690b822dfd62629623ba4e7eedb3c41930a987fc3d4106000e1", - "@parcel/watcher-linux-arm64-glibc@npm:2.5.1": "562231feb159a294752378bebecc69a2d33366a9d877835844578799f8536398006e0e570849f9e2db04085a3ea82131459cd10fd6b42dea10cd73bd0c9ca13e", - "@parcel/watcher-linux-arm64-musl@npm:2.5.1": "f62db52a90ebbaa29ca9900e6b9bd3fc6e5c650741bbde9a2742cbc332c678b753fc6a596d67659394fd9262aa826463ea667d18cc554bcaaac9e8da1a2a29d0", - "@parcel/watcher-linux-x64-glibc@npm:2.5.1": "425e557991fde5092d6a9e20be71810600415e5fa157dca0b39bd8db86653d3ee7b037305261c8782d1a065f2a64d235e17b57876b26f5bb0dd7a9bdbe364690", - "@parcel/watcher-linux-x64-musl@npm:2.5.1": "4dbb066ba9478c8b8de39e3c1083cbb74f86f03eaf4445603e69909d6c072134644316faa20a2445419b9fe1a8063ade7b5331a5766d807ee0b15b8a70c59a2d", - "@parcel/watcher-win32-arm64@npm:2.5.1": "e015314d6b9b727cbe25eedf963ca8b23bf6d4e78d3c28008bd0d2657940ad54a271330486df3a93a5f1a30f2b8d052d14415b85cc7e7b747c6c73b5dc055628", - "@parcel/watcher-win32-ia32@npm:2.5.1": "920b6ad6a2095aeb9c2d329c5118472a3c14669fa93eaa99aa8050c76c5c2d3d76d92677167ed748c2ac5487c568d5df16d5d94f4bc7c354094fccd8e0d6350c", - "@parcel/watcher-win32-x64@npm:2.5.1": "8f1c8e41ec9f86e4dcd0d4db0a077742d5dcc853f15ea888387183e34e2efcff09fd1cc9ec46fc1121b9ad4ddc0e221283f2ffb23cfd7dbcbb8b03060b461963", - "@rollup/rollup-android-arm-eabi@npm:4.50.1": "fc43d07ffb8be5b65f124a0d9ebbfce82c1126e38747c3c277bca067e188fe9618c0139ef2ec542857700ff2331aff297a7076309aa5e37cb970dd13871ab715", - "@rollup/rollup-android-arm64@npm:4.50.1": "a0ce9ce850a61c79b89b80624444521bdd067863883575448152fb8b7806626acbcf94c14bef42604b6149f50c9907273bbbdda406df6ebddc730195ef43eee1", - "@rollup/rollup-darwin-arm64@npm:4.50.1": "7545f01772f92cd050ce4e60dc1f182fe2eab85217be2eba8d05d971df603ab7fde6531c90472b3c5a0ae1509a1c038f61c14686695b7dd1863eb11192c27832", - "@rollup/rollup-darwin-x64@npm:4.50.1": "3e4eb9799b3c674902c8ea849a72f03f626371622279b95005c3937afabef6673f1ddeff047339a4b2f73670354fc5477f7698d5b1576faee9dc3640ced8d614", - "@rollup/rollup-freebsd-arm64@npm:4.50.1": "d5125df84bb7923185db9f77d096a0b31fd0262e1d28a1abf4372370a1630772edd8f50dfd8bd98de58ebe58a7d4a8034ad2333de6df1daa22d4bab9561c2752", - "@rollup/rollup-freebsd-x64@npm:4.50.1": "219f5206b2f0430b76da61e0c49b311275df6ecb9e7af3baac35b16dcb43f8d6d132b959c8287d8938ed2420e6f1d889a8a562fad4395c49ce24ee475e26476f", - "@rollup/rollup-linux-arm-gnueabihf@npm:4.50.1": "c8136810a86436369bc030d98afcfe53d7a8e1d33152f1c8a86f206213079b364089fc4445ddcfaa375b71868b9b9b58cabc9c3ea0a1b40b64bc5aac421d9a21", - "@rollup/rollup-linux-arm-musleabihf@npm:4.50.1": "61a435947f9d74b8e8618a03ac5e0c82dbc17a77a40b7c088c8f3c77fb571c469d89a440310bd83b054fbb0822487954161b78e7886f51f6418a6b1a45f7c379", - "@rollup/rollup-linux-arm64-gnu@npm:4.50.1": "7e06235ea040781c9a73e377cfeb0f051253f59d7ca56fc9b4f2a615342508779238c713dab3118de504b2ad62f1dafb6f8c97ec0c1fe7d2fc8124f0bdae3f98", - "@rollup/rollup-linux-arm64-musl@npm:4.50.1": "9b874c876de5be7f9290b7858952c6f5014958ef1db83ffe54a14877b12a6a912e34099a9278fbe1c2e23c910c09c6feee90e167b4d748dfb0ae63047062fff4", - "@rollup/rollup-linux-loongarch64-gnu@npm:4.50.1": "2ba32899d57949734db5ac0518656d53d1f54b7e970ac8424f8548364b867d7ee530a7a275af58bf5ac328ac8f12943a706446946b0a2b46a48662d75194cecc", - "@rollup/rollup-linux-ppc64-gnu@npm:4.50.1": "6d34e6737175738a86ec3b6b8d5cecdaa9fff9bf115aec434d15cdad3823afda7dfc68acae97e38256ffdc3ef45080907a980626f20682efe1c2d95e62970e3e", - "@rollup/rollup-linux-riscv64-gnu@npm:4.50.1": "df48c61bff1c47a3b109260c4bf13d0b72d0b18b4dd8b43828844ab81cd09b1c1974d353f8562df3281e0369c4fb0f5fd368f0a59078a58349123cc04e6e5b72", - "@rollup/rollup-linux-riscv64-musl@npm:4.50.1": "c8be03392cacd3b92bed221ea4b92694d8c8779c6e3e91d387cd81b280ebc0b5078b8e617c37ff317f3f05574e2c4b3443dea15c5a82f98f90b48c353aa9e2d1", - "@rollup/rollup-linux-s390x-gnu@npm:4.50.1": "4ae6fa0d82232f34357c85de9d4eb5b6865b547b17587caca7e9fdd06df5081bbff1fde9b193012ee5279b62cd8471e3257ad1c5a3fdaf6f484bb8758c14e756", - "@rollup/rollup-linux-x64-gnu@npm:4.50.1": "1d69c7626091b648547fea9a021fa35423a77b4e51297aa4fb7cf6c2d3492525ff2cef7392f77159eefaf53fcaad7ddbfb28b10bff3b633d756ee86f48445354", - "@rollup/rollup-linux-x64-musl@npm:4.50.1": "35de0d4d070b3d470e4ca08b7f66ca21ba44b71d79e530ecb2e81329edcd9b4ebc10e530008caac2c11b18b8093190bd62b5e5e06652a52097f84148d3228d3f", - "@rollup/rollup-openharmony-arm64@npm:4.50.1": "2721d51beca80da39a36b07b97c34d9a880d371ca69635aac21023774852de9f0ee282972969555b2f6ab31703915d18d7ef880bf13830cf63a463c37e017de8", - "@rollup/rollup-win32-arm64-msvc@npm:4.50.1": "909b72f1c9535ffb443dfa0be72f00662369c2292561f02804bf34d88908ff46ad7fb61284f3b58cc4cf52e046a38001b69f0a4e927dced3933fb4eba3e7e107", - "@rollup/rollup-win32-ia32-msvc@npm:4.50.1": "7454e38f68825ea98812fcc6a130e77968225af1347e3629930cea2cb18a23bf502624e3eafc6c47cb056f9755eb02ff4b2273b65cfa24d00211cee2fbdff080", - "@rollup/rollup-win32-x64-msvc@npm:4.50.1": "dfe41235a62327c50da7fcab7207f22ccc469ba3deabd8e55c1eccb1b45a88f8e7b0e86f8e77403fc938cb208aa652d0a62b531ba2671c6c64db93e45ea2b03b", - "@sentry/cli-darwin@npm:2.50.2": "c3584d15672040bd57f206f767c0fb1636db469337cd4e01cb290b3152ffe369e4ab58ec8f1e25b9198cf378eada0f932b558a426e66b125e053328ef2542c14", - "@sentry/cli-linux-arm64@npm:2.50.2": "6818e4746d1e47f852ecb71ca84ea2cc99ee1615ffd18803fb1edaaa3dd10ec87d02c21c259ce58d02b79d6c4bb6eed8d65762d5ea32c8e103220cb3d8e94d43", - "@sentry/cli-linux-arm@npm:2.50.2": "fcc0fe7b13fa98e3b4669ebe4375211b752b9f455c5caf2c06b31dd25c8d1c8f3e4cb8cb96be4cd10e8ee6aef7d4b0b04927244ede69b2806ca2c9e7fae183de", - "@sentry/cli-linux-i686@npm:2.50.2": "4b914dc15cc1a469f76d496900d8c912a4be1b0c803124aa157b1432d4c35db48e03f8e4fb0d2fa26ed671e85d7d0ebbc470b895b2f137ebe57b8589844743fc", - "@sentry/cli-linux-x64@npm:2.50.2": "b733701b644bfa872a51c88bdb714c029e32d0ca44b46c11c725a3f899739f6a1c15f8468b89631544001092fd7377b48d93628d20e4435b522fa92fba144e67", - "@sentry/cli-win32-arm64@npm:2.50.2": "ec047ae8c71450430151a75f7045752b0d6265805acad211249aeb4d10e36cabf0ba5ef9c6c388e862cc1e3137c78452231cb503891987467ddaad59917fcc46", - "@sentry/cli-win32-i686@npm:2.50.2": "b5e8752fe277aef134e92801a6186f007d1b328ff62caf2449593d7be4a6671df5d78e297be32ca1e5ae3ba61de69457f75d1affb4299d1320a3b7b021e58ee0", - "@sentry/cli-win32-x64@npm:2.50.2": "8d8e9e5210986f2766d1b70dcd1f086ffd3c702d881c52ba554409b004fba0b182a27d7dd6853802b0b21c92e9baf66d405252cf391e1c1b8999cc1ee02d0adf" -} diff --git a/pkgs/by-name/el/element-call/package.nix b/pkgs/by-name/el/element-call/package.nix index be6a7c822c9d..8b16d255f492 100644 --- a/pkgs/by-name/el/element-call/package.nix +++ b/pkgs/by-name/el/element-call/package.nix @@ -2,71 +2,91 @@ lib, stdenv, fetchFromGitHub, - fetchYarnDeps, - git, - yarn-berry, - yarnConfigHook, + pnpm_10, + pnpmConfigHook, + fetchPnpmDeps, nodejs, runCommand, }: +let + pnpm = pnpm_10; + + # Separately build matrix-js-sdk, as upstream expects to 'pnpm i && pnpm build' in the dependency's directory + # Keep this in sync with upstream locked version (likely a stable release, but not always latest) + matrix-js-sdk = stdenv.mkDerivation (finalAttrs: { + pname = "matrix-js-sdk"; + version = "41.7.0-rc.3"; + + src = fetchFromGitHub { + owner = "matrix-org"; + repo = "matrix-js-sdk"; + tag = "v${finalAttrs.version}"; + hash = "sha256-KD+AbMGVAaGEU5h2JB5JyQtwG0SYejdADjJ7TrxqVrY="; + }; + + pnpmDeps = fetchPnpmDeps { + inherit (finalAttrs) pname version src; + inherit pnpm; + fetcherVersion = 4; + hash = "sha256-mWtzWAV/lyaCZEIiGmOLUkhwwMouNAWoYJWL7Srr/bM="; + }; + + nativeBuildInputs = [ + nodejs + pnpmConfigHook + pnpm + ]; + + buildPhase = '' + runHook preBuild + pnpm build + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + + mkdir $out + cp -r src $out/ + cp -r lib $out/ + cp package.json $out/ + + runHook postInstall + ''; + }); +in stdenv.mkDerivation (finalAttrs: { pname = "element-call"; - version = "0.18.0"; + version = "0.20.1"; src = fetchFromGitHub { owner = "element-hq"; repo = "element-call"; tag = "v${finalAttrs.version}"; - hash = "sha256-/5RkZNf/ErSxNwW0ZfPwF52k3fZzAQAFMmbJ9xM7f74="; + hash = "sha256-g71b0GVpe181iNum5i6z1bTAbCykyoYUy300Ebeds1Q="; }; - patches = [ - # Remove after updating since project has moved to pnpm - # https://github.com/element-hq/element-call/blob/v0.19.2/package.json#L159 - ./yarn-4.14-support.patch - ]; - - matrixJsSdkRevision = "6e3efef0c5f660df47cf00874927dec1c75cc3cf"; - matrixJsSdkOfflineCache = fetchYarnDeps { - yarnLock = "${finalAttrs.offlineCache}/checkouts/${finalAttrs.matrixJsSdkRevision}/yarn.lock"; - hash = "sha256-YvXmPWHt3qL9z8uap0/faKi5OId6zZ0ISiMT3x6ARx8="; + pnpmDeps = fetchPnpmDeps { + inherit (finalAttrs) pname version src; + inherit pnpm; + fetcherVersion = 4; + hash = "sha256-K+ccoUDNYdmeVyVSYLP1UsvdsAgD1aH80HIubZY4Mf8="; }; - dontYarnInstallDeps = true; - preConfigure = '' - cp -r $offlineCache writable - chmod u+w -R writable - pushd writable/checkouts/${finalAttrs.matrixJsSdkRevision}/ - mkdir -p .git/{refs,objects} - echo ${finalAttrs.matrixJsSdkRevision} > .git/HEAD - SKIP_YARN_COREPACK_CHECK=1 offlineCache=$matrixJsSdkOfflineCache yarnConfigHook - SKIP_YARN_COREPACK_CHECK=1 yarn build - popd - offlineCache=writable - # The matrix-js-sdk git package checksum in yarn.lock was computed against a - # developer checkout with pre-compiled lib/. nix-prefetch-git stores a bare - # working tree so the repack at build time produces a different zip hash. - # The offline cache is already verified by the FOD hash, so this is safe. - export YARN_CHECKSUM_BEHAVIOR=ignore - ''; - - missingHashes = ./missing-hashes.json; - offlineCache = yarn-berry.fetchYarnBerryDeps { - inherit (finalAttrs) src missingHashes patches; - hash = "sha256-2P4kwccT2WP2SlJJ1biZCRU8O+Y43sGJmfRTUujklUg="; - }; + inherit matrix-js-sdk; nativeBuildInputs = [ - git - yarn-berry.yarnBerryConfigHook - yarnConfigHook nodejs + pnpmConfigHook + pnpm ]; buildPhase = '' runHook preBuild - ${lib.getExe yarn-berry} build + # Instead of making an override, invalidating the pnpm lock, just add the built files in lib right before invoking pnpm build + cp -r ${finalAttrs.matrix-js-sdk}/* node_modules/matrix-js-sdk/ + pnpm build runHook postBuild ''; @@ -79,17 +99,20 @@ stdenv.mkDerivation (finalAttrs: { runHook postInstall ''; - passthru.tests.build = runCommand "${finalAttrs.pname}-test" { } '' - test -f ${finalAttrs.finalPackage}/index.html - test -d ${finalAttrs.finalPackage}/assets - touch $out - ''; + passthru = { + tests.build = runCommand "${finalAttrs.pname}-test" { } '' + test -f ${finalAttrs.finalPackage}/index.html + test -d ${finalAttrs.finalPackage}/assets + touch $out + ''; + inherit (finalAttrs) matrix-js-sdk; + }; meta = { changelog = "https://github.com/element-hq/element-call/releases/tag/${finalAttrs.src.tag}"; homepage = "https://github.com/element-hq/element-call"; description = "Group calls powered by Matrix"; - license = lib.licenses.asl20; + license = lib.licenses.agpl3Only; maintainers = with lib.maintainers; [ kilimnik ]; }; }) diff --git a/pkgs/by-name/el/element-call/yarn-4.14-support.patch b/pkgs/by-name/el/element-call/yarn-4.14-support.patch deleted file mode 100644 index bb64eb874448..000000000000 --- a/pkgs/by-name/el/element-call/yarn-4.14-support.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff --git a/.yarnrc.yml b/.yarnrc.yml ---- a/.yarnrc.yml -+++ b/.yarnrc.yml -@@ -1,3 +1,6 @@ - nodeLinker: node-modules - plugins: - - .yarn/plugins/linker.cjs -+approvedGitRepositories: -+ - "**" -+enableScripts: true -diff --git a/yarn.lock b/yarn.lock ---- a/yarn.lock -+++ b/yarn.lock -@@ -2,6 +2,6 @@ - # Manual changes might be lost - proceed with caution! - - __metadata: -- version: 8 -+ version: 9 - cacheKey: 10c0 - From c05170b772659afed9f539bff38e4539a7ed3d7f Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Sat, 30 May 2026 14:30:18 +0200 Subject: [PATCH 94/95] element-call: add bartoostveen as a maintainer (cherry picked from commit 708884d57dc73054cf78aaac8c5251019bf551a6) --- pkgs/by-name/el/element-call/package.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/el/element-call/package.nix b/pkgs/by-name/el/element-call/package.nix index 8b16d255f492..1eb2861f3c5b 100644 --- a/pkgs/by-name/el/element-call/package.nix +++ b/pkgs/by-name/el/element-call/package.nix @@ -113,6 +113,9 @@ stdenv.mkDerivation (finalAttrs: { homepage = "https://github.com/element-hq/element-call"; description = "Group calls powered by Matrix"; license = lib.licenses.agpl3Only; - maintainers = with lib.maintainers; [ kilimnik ]; + maintainers = with lib.maintainers; [ + bartoostveen + kilimnik + ]; }; }) From dec0814cd6a20e46a4891632e1413c94e9cc1568 Mon Sep 17 00:00:00 2001 From: Bart Oostveen Date: Mon, 22 Jun 2026 15:22:10 +0200 Subject: [PATCH 95/95] element-call: 0.20.1 -> 0.20.2 Changelog: https://github.com/element-hq/element-call/releases/tag/v0.20.2 (cherry picked from commit 8aac9be20f0471255d85d3d64c3d6c4f482796ec) --- pkgs/by-name/el/element-call/package.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/el/element-call/package.nix b/pkgs/by-name/el/element-call/package.nix index 1eb2861f3c5b..8ae64d5d77ac 100644 --- a/pkgs/by-name/el/element-call/package.nix +++ b/pkgs/by-name/el/element-call/package.nix @@ -16,20 +16,20 @@ let # Keep this in sync with upstream locked version (likely a stable release, but not always latest) matrix-js-sdk = stdenv.mkDerivation (finalAttrs: { pname = "matrix-js-sdk"; - version = "41.7.0-rc.3"; + version = "41.8.0-rc.0"; src = fetchFromGitHub { owner = "matrix-org"; repo = "matrix-js-sdk"; tag = "v${finalAttrs.version}"; - hash = "sha256-KD+AbMGVAaGEU5h2JB5JyQtwG0SYejdADjJ7TrxqVrY="; + hash = "sha256-1e6nWeHNAhVynxv2R7GY5NRCBN0BriRjA3zLK0D5O9g="; }; pnpmDeps = fetchPnpmDeps { inherit (finalAttrs) pname version src; inherit pnpm; fetcherVersion = 4; - hash = "sha256-mWtzWAV/lyaCZEIiGmOLUkhwwMouNAWoYJWL7Srr/bM="; + hash = "sha256-Me76t/wl4HtmbQ+FzUNLEpOM6aYbzTl68tuDSEh+Hq4="; }; nativeBuildInputs = [ @@ -58,20 +58,20 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "element-call"; - version = "0.20.1"; + version = "0.20.2"; src = fetchFromGitHub { owner = "element-hq"; repo = "element-call"; tag = "v${finalAttrs.version}"; - hash = "sha256-g71b0GVpe181iNum5i6z1bTAbCykyoYUy300Ebeds1Q="; + hash = "sha256-paUcZhjcLbJOpQOR8gRpGe0LzSaKtWsTzE1svzQaVZY="; }; pnpmDeps = fetchPnpmDeps { inherit (finalAttrs) pname version src; inherit pnpm; fetcherVersion = 4; - hash = "sha256-K+ccoUDNYdmeVyVSYLP1UsvdsAgD1aH80HIubZY4Mf8="; + hash = "sha256-JOpKxtElmNKepx3W+1LIolcrYrevsCEq7+Aoh0kwZEw="; }; inherit matrix-js-sdk;