From b78f0cbff4a5243d7bf2d6fc62c810d8f85b82a4 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 19 Dec 2021 23:37:26 -0500 Subject: gnu: gtk: Update to 4.4.1. * gnu/packages/patches/gtk-introspection-test.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/gtk.scm (gtk): Update to 4.4.1. [origin]: Apply new patch. [phases]{pre-check}: Set TZDIR. [native-inputs]: Add graphene, python-pygobject and tzdata. --- gnu/local.mk | 5 +++-- gnu/packages/gtk.scm | 17 ++++++++++++----- gnu/packages/patches/gtk-introspection-test.patch | 22 ++++++++++++++++++++++ 3 files changed, 37 insertions(+), 7 deletions(-) create mode 100644 gnu/packages/patches/gtk-introspection-test.patch diff --git a/gnu/local.mk b/gnu/local.mk index aa679ee6c7..86c1e57aa4 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1232,8 +1232,9 @@ dist_patch_DATA = \ %D%/packages/patches/gtk2-theme-paths.patch \ %D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \ %D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \ - %D%/packages/patches/gtk-doc-respect-xml-catalog.patch \ - %D%/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch \ + %D%/packages/patches/gtk-doc-respect-xml-catalog.patch \ + %D%/packages/patches/gtk-introspection-test.patch \ + %D%/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch \ %D%/packages/patches/gtkglext-disable-disable-deprecated.patch \ %D%/packages/patches/gtksourceview-2-add-default-directory.patch \ %D%/packages/patches/gzdoom-search-in-installed-share.patch \ diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 77b348d18d..58e428c921 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -1059,7 +1059,7 @@ application suites.") (define-public gtk (package (name "gtk") - (version "4.2.1") + (version "4.4.1") (source (origin (method url-fetch) @@ -1067,9 +1067,10 @@ application suites.") (version-major+minor version) "/" name "-" version ".tar.xz")) (sha256 - (base32 "1rh9fd5axf79pmd93hb2fmmflic5swcvqvq6vqghlgz4bmvnjc82")) + (base32 "1x6xlc063nqp7cg6py4kq1kpw9pkq49ifk5kki0brc667ncdmahg")) (patches - (search-patches "gtk4-respect-GUIX_GTK4_PATH.patch")))) + (search-patches "gtk4-respect-GUIX_GTK4_PATH.patch" + "gtk-introspection-test.patch")))) (build-system meson-build-system) (outputs '("out" "bin" "doc")) (arguments @@ -1122,7 +1123,7 @@ application suites.") (lambda _ (setenv "XDG_CACHE_HOME" (getcwd)))) (add-before 'check 'pre-check - (lambda _ + (lambda* (#:key inputs #:allow-other-keys) ;; Tests require a running X server. (system "Xvfb :1 +extension GLX &") (setenv "DISPLAY" ":1") @@ -1131,7 +1132,10 @@ application suites.") ;; Tests look for those variables. (setenv "XDG_RUNTIME_DIR" (getcwd)) ;; For missing '/etc/machine-id'. - (setenv "DBUS_FATAL_WARNINGS" "0"))) + (setenv "DBUS_FATAL_WARNINGS" "0") + ;; Required for the calendar test. + (setenv "TZDIR" (search-input-directory inputs + "share/zoneinfo")))) (add-after 'install 'move-files (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -1166,10 +1170,12 @@ application suites.") ("gettext-minimal" ,gettext-minimal) ("glib:bin" ,glib "bin") ("gobject-introspection" ,gobject-introspection) ;for building introspection data + ("graphene" ,graphene) ("gtk-doc" ,gtk-doc) ;for building documentation ("intltool" ,intltool) ("libxslt" ,libxslt) ;for building man-pages ("pkg-config" ,pkg-config) + ("python-pygobject" ,python-pygobject) ;; These python modules are required for building documentation. ("python-jinja2" ,python-jinja2) ("python-markdown" ,python-markdown) @@ -1178,6 +1184,7 @@ application suites.") ("python-toml" ,python-toml) ("python-typogrify" ,python-typogrify) ("sassc" ,sassc) ;for building themes + ("tzdata" ,tzdata-for-tests) ("vala" ,vala) ("xorg-server-for-tests" ,xorg-server-for-tests))) (inputs diff --git a/gnu/packages/patches/gtk-introspection-test.patch b/gnu/packages/patches/gtk-introspection-test.patch new file mode 100644 index 0000000000..570ea806a9 --- /dev/null +++ b/gnu/packages/patches/gtk-introspection-test.patch @@ -0,0 +1,22 @@ +# Extend rather than stomp environment variables. +# Upstream status: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4268 +diff --git a/testsuite/introspection/meson.build b/testsuite/introspection/meson.build +index 6202fb7446..b59191eb0f 100644 +--- a/testsuite/introspection/meson.build ++++ b/testsuite/introspection/meson.build +@@ -1,9 +1,10 @@ ++env = environment() ++env.prepend('GI_TYPELIB_PATH', ++ join_paths(project_build_root, 'gtk'), ++ gi_dep.get_pkgconfig_variable('typelibdir')) ++env.prepend('LD_PRELOAD', join_paths(project_build_root, 'gtk', 'libgtk-4.so')) + + test('api', + find_program('api.py', dirs: meson.current_source_dir()), + suite: ['introspection'], +- env: [ +- 'GI_TYPELIB_PATH=@0@/gtk:@1@'.format(project_build_root, +- gi_dep.get_pkgconfig_variable('typelibdir')), +- 'LD_PRELOAD=@0@/gtk/libgtk-4.so'.format(project_build_root), +- ]) ++ env: env) -- cgit v1.2.3