summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim@guixotic.coop>2026-03-24 10:43:05 +0900
committerNoé Lopez <noelopez@free.fr>2026-08-25 01:15:26 +0200
commitcb2d82f3ad1c1f1dbfe8c9cef4b9de2f3c90531b (patch)
treef97f46f3ed224e14f6331badc0f808914a62f784 /gnu
parent1cca344ac629d0ca0fbe2885c73204b918c34b4a (diff)
gnu: gtk+: Update to 3.24.52.
* gnu/packages/patches/gtk3-treeview-test-fix.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/gtk.scm (gtk+): Update to 3.24.52. Apply patch. Change-Id: Ibf49241f637ac1d5ed2c6f9675f78810c8acb265 Signed-off-by: Noé Lopez <noelopez@free.fr>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/gtk.scm43
-rw-r--r--gnu/packages/patches/gtk3-treeview-test-fix.patch67
3 files changed, 89 insertions, 22 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index c346b60807f..24aaaf3e007 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1593,6 +1593,7 @@ dist_patch_DATA = \
1593 %D%/packages/patches/gtk2-theme-paths.patch \ 1593 %D%/packages/patches/gtk2-theme-paths.patch \
1594 %D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \ 1594 %D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \
1595 %D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \ 1595 %D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \
1596 %D%/packages/patches/gtk3-treeview-test-fix.patch \
1596 %D%/packages/patches/gtk-doc-respect-xml-catalog.patch \ 1597 %D%/packages/patches/gtk-doc-respect-xml-catalog.patch \
1597 %D%/packages/patches/gtk-doc-mkhtml-test-fix.patch \ 1598 %D%/packages/patches/gtk-doc-mkhtml-test-fix.patch \
1598 %D%/packages/patches/gtk4-demo-reproducible.patch \ 1599 %D%/packages/patches/gtk4-demo-reproducible.patch \
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 7ea2fa52af3..9194e997494 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -24,7 +24,7 @@
24;;; Copyright © 2019 Giacomo Leidi <therewasa@fishinthecalculator.me> 24;;; Copyright © 2019 Giacomo Leidi <therewasa@fishinthecalculator.me>
25;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot> 25;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
26;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net> 26;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
27;;; Copyright © 2020-2025 Maxim Cournoyer <maxim@guixotic.coop> 27;;; Copyright © 2020-2026 Maxim Cournoyer <maxim@guixotic.coop>
28;;; Copyright © 2021 Leo Famulari <leo@famulari.name> 28;;; Copyright © 2021 Leo Famulari <leo@famulari.name>
29;;; Copyright © 2021 Simon Streit <simon@netpanic.org> 29;;; Copyright © 2021 Simon Streit <simon@netpanic.org>
30;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> 30;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
@@ -980,7 +980,7 @@ application suites.")
980 (package 980 (package
981 (inherit gtk+-2) 981 (inherit gtk+-2)
982 (name "gtk+") 982 (name "gtk+")
983 (version "3.24.51") 983 (version "3.24.52")
984 (source (origin 984 (source (origin
985 (method git-fetch) 985 (method git-fetch)
986 (uri (git-reference 986 (uri (git-reference
@@ -989,10 +989,11 @@ application suites.")
989 (file-name (git-file-name name version)) 989 (file-name (git-file-name name version))
990 (sha256 990 (sha256
991 (base32 991 (base32
992 "07vw0rani9d65px36fzzj7sprv5r48shyjdgzipkihzqaldd98yh")) 992 "197w1mb5vqm5d07sgdqkg54can7f1p4yjh42zx0y8z6m9p43shck"))
993 (patches (search-patches 993 (patches (search-patches
994 "gtk3-respect-GUIX_GTK3_PATH.patch" 994 "gtk3-respect-GUIX_GTK3_PATH.patch"
995 "gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch")))) 995 "gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"
996 "gtk3-treeview-test-fix.patch"))))
996 ;; There is no "doc" output, because adding gtk-doc here would introduce a 997 ;; There is no "doc" output, because adding gtk-doc here would introduce a
997 ;; dependency cycle with itself. 998 ;; dependency cycle with itself.
998 (outputs '("out" "bin")) 999 (outputs '("out" "bin"))
@@ -1068,22 +1069,20 @@ application suites.")
1068 #~(modify-phases %standard-phases 1069 #~(modify-phases %standard-phases
1069 (add-after 'unpack 'disable-failing-tests 1070 (add-after 'unpack 'disable-failing-tests
1070 (lambda _ 1071 (lambda _
1071 ;; These tests fail only in the containerized environment, for 1072 (substitute* "testsuite/gtk/meson.build"
1072 ;; unknown reasons. 1073 ((".*\\['defaultvalue'],.*") "")
1073 (substitute* "testsuite/gtk/meson.build" 1074 ((".*\\['objects-finalize',.*") ""))
1074 ((".*\\['defaultvalue'],.*") "") 1075 ;; The 'flipping-icons.ui' and 'gtk-icontheme-sizing.ui' tests
1075 ((".*\\['objects-finalize',.*") "")) 1076 ;; fail for unknown reasons (see:
1076 ;; The 'flipping-icons.ui' and 'gtk-icontheme-sizing.ui' tests 1077 ;; <https://gitlab.gnome.org/GNOME/gtk/-/issues/7679>).
1077 ;; fail for unknown reasons (see: 1078 (substitute* "testsuite/reftests/meson.build"
1078 ;; <https://gitlab.gnome.org/GNOME/gtk/-/issues/7679>). 1079 ((" 'flipping-icons.ui',.*") "")
1079 (substitute* "testsuite/reftests/meson.build" 1080 ((" 'gtk-icontheme-sizing.ui',.*") ""))
1080 ((" 'flipping-icons.ui',.*") "") 1081 ;; This test fails just on i686-linux, for unknown reasons.
1081 ((" 'gtk-icontheme-sizing.ui',.*") "")) 1082 #$@(if (target-x86-32?)
1082 ;; This test fails just on i686-linux, for unknown reasons. 1083 #~((substitute* "testsuite/reftests/meson.build"
1083 #$@(if (target-x86-32?) 1084 ((" 'linear-gradient.ui',.*") "")))
1084 #~((substitute* "testsuite/reftests/meson.build" 1085 #~())))
1085 ((" 'linear-gradient.ui',.*") "")))
1086 #~())))
1087 (add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file 1086 (add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
1088 (assoc-ref glib-or-gtk:%standard-phases 1087 (assoc-ref glib-or-gtk:%standard-phases
1089 'generate-gdk-pixbuf-loaders-cache-file)) 1088 'generate-gdk-pixbuf-loaders-cache-file))
@@ -1107,8 +1106,8 @@ application suites.")
1107 "/share/applications"))))))) 1106 "/share/applications")))))))
1108 (native-search-paths 1107 (native-search-paths
1109 (list (search-path-specification 1108 (list (search-path-specification
1110 (variable "GUIX_GTK3_PATH") 1109 (variable "GUIX_GTK3_PATH")
1111 (files '("lib/gtk-3.0"))))))) 1110 (files '("lib/gtk-3.0")))))))
1112 1111
1113(define-public gtk 1112(define-public gtk
1114 (package 1113 (package
diff --git a/gnu/packages/patches/gtk3-treeview-test-fix.patch b/gnu/packages/patches/gtk3-treeview-test-fix.patch
new file mode 100644
index 00000000000..52505b188e3
--- /dev/null
+++ b/gnu/packages/patches/gtk3-treeview-test-fix.patch
@@ -0,0 +1,67 @@
1From 8fb3557bce1fdf9e2c4146e89b43753688d64455 Mon Sep 17 00:00:00 2001
2From: Alessandro Astone <alessandro.astone@canonical.com>
3Date: Mon, 23 Mar 2026 15:48:20 +0100
4Subject: [PATCH] testsuite/a11y: Fixup treeview test after focus policy
5 changes
6
7Since commit
8 fbc28541f0 ("a11y: Don't send focus-related events for unfocused treeview")
9the window must have focus in order for the treeview to have focus and emit
10the signal we want to test for.
11
12Part-of: <https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/9716>
13---
14 testsuite/a11y/tree-relationships.c | 26 +++++++++++++++++++++++---
15 1 file changed, 23 insertions(+), 3 deletions(-)
16
17diff --git a/testsuite/a11y/tree-relationships.c b/testsuite/a11y/tree-relationships.c
18index 34f45b690a5..a1cc1f38288 100644
19--- a/testsuite/a11y/tree-relationships.c
20+++ b/testsuite/a11y/tree-relationships.c
21@@ -223,6 +223,24 @@ process_pending_idles ()
22 g_main_loop_run (loop);
23 }
24
25+static void
26+on_window_focus (GObject *obj,
27+ GParamSpec *pspec,
28+ gpointer data)
29+{
30+ GMainLoop *loop = data;
31+ g_main_loop_quit (loop);
32+}
33+
34+
35+static void
36+wait_window_focus (GtkWidget *window)
37+{
38+ GMainLoop *loop = g_main_loop_new (NULL, FALSE);
39+ g_signal_connect (window, "notify::is-active", G_CALLBACK (on_window_focus), loop);
40+ g_main_loop_run (loop);
41+}
42+
43 static void
44 test_a11y_tree_focus (void)
45 {
46@@ -243,13 +261,15 @@ test_a11y_tree_focus (void)
47 window = builder_get_toplevel (builder);
48 g_assert (window);
49
50- populate_tree (builder);
51+ gtk_widget_show (window);
52+ gtk_window_present (GTK_WINDOW (window));
53+ wait_window_focus (window);
54
55+ populate_tree (builder);
56 tv = (GtkTreeView *)gtk_builder_get_object (builder, "treeview1");
57 gtk_tree_view_expand_all (tv);
58
59- gtk_widget_show (window);
60-
61+ gtk_widget_grab_focus (GTK_WIDGET (tv));
62 gtk_tree_view_get_cursor (tv, &path, &focus_column);
63 gtk_tree_path_down (path);
64 data.count = 0;
65--
66GitLab
67