diff options
| author | Maxim Cournoyer <maxim@guixotic.coop> | 2026-03-24 10:43:05 +0900 |
|---|---|---|
| committer | Noé Lopez <noelopez@free.fr> | 2026-08-25 01:15:26 +0200 |
| commit | cb2d82f3ad1c1f1dbfe8c9cef4b9de2f3c90531b (patch) | |
| tree | f97f46f3ed224e14f6331badc0f808914a62f784 /gnu | |
| parent | 1cca344ac629d0ca0fbe2885c73204b918c34b4a (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.mk | 1 | ||||
| -rw-r--r-- | gnu/packages/gtk.scm | 43 | ||||
| -rw-r--r-- | gnu/packages/patches/gtk3-treeview-test-fix.patch | 67 |
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 @@ | |||
| 1 | From 8fb3557bce1fdf9e2c4146e89b43753688d64455 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Alessandro Astone <alessandro.astone@canonical.com> | ||
| 3 | Date: Mon, 23 Mar 2026 15:48:20 +0100 | ||
| 4 | Subject: [PATCH] testsuite/a11y: Fixup treeview test after focus policy | ||
| 5 | changes | ||
| 6 | |||
| 7 | Since commit | ||
| 8 | fbc28541f0 ("a11y: Don't send focus-related events for unfocused treeview") | ||
| 9 | the window must have focus in order for the treeview to have focus and emit | ||
| 10 | the signal we want to test for. | ||
| 11 | |||
| 12 | Part-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 | |||
| 17 | diff --git a/testsuite/a11y/tree-relationships.c b/testsuite/a11y/tree-relationships.c | ||
| 18 | index 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 | -- | ||
| 66 | GitLab | ||
| 67 | |||
