summaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/glib.scm188
-rw-r--r--gnu/packages/gnome.scm12
-rw-r--r--gnu/packages/graphics.scm4
-rw-r--r--gnu/packages/gstreamer.scm32
-rw-r--r--gnu/packages/gtk.scm27
-rw-r--r--gnu/packages/guile-xyz.scm2
-rw-r--r--gnu/packages/patches/glib-skip-failing-test.patch3
-rw-r--r--gnu/packages/patches/gtk2-harden-list-store.patch42
-rw-r--r--gnu/packages/telegram.scm10
9 files changed, 161 insertions, 159 deletions
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index e988e8dc87..9400abe79a 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -216,7 +216,7 @@ information, refer to the @samp{dbus-daemon(1)} man page.")))
(define glib
(package
(name "glib")
- (version "2.72.3")
+ (version "2.76.1")
(source
(origin
(method url-fetch)
@@ -225,14 +225,14 @@ information, refer to the @samp{dbus-daemon(1)} man page.")))
name "/" (string-take version 4) "/"
name "-" version ".tar.xz"))
(sha256
- (base32 "1w25sf2wxkkah2p2w189q58mza3zv8z1fh2q1m82sldq4kva4faa"))
+ (base32 "17x1zpr2avj8hjbpc6hp2sf2885lxac46v0kajsgan3929m0zp23"))
(patches
(search-patches "glib-appinfo-watch.patch"
"glib-skip-failing-test.patch"))
(modules '((guix build utils)))
(snippet
'(begin
- (substitute* "tests/spawn-test.c"
+ (substitute* "glib/tests/spawn-test.c"
(("/bin/sh") "sh"))))))
(build-system meson-build-system)
(outputs '("out" ;libraries, locales, etc
@@ -257,6 +257,9 @@ information, refer to the @samp{dbus-daemon(1)} man page.")))
#$output:bin "/bin"))
#:phases
#~(modify-phases %standard-phases
+ (add-after 'unpack 'set-G_TEST_SRCDIR
+ (lambda _
+ (setenv "G_TEST_SRCDIR" (string-append (getcwd) "/gio/tests"))))
;; Needed to pass the test phase on slower ARM and i686 machines.
(add-after 'unpack 'increase-test-timeout
(lambda _
@@ -272,9 +275,19 @@ information, refer to the @samp{dbus-daemon(1)} man page.")))
(substitute* '("unix.c" "utils.c")
(("[ \t]*g_test_add_func.*;") "")))
(with-directory-excursion "gio/tests"
- (substitute* '("contenttype.c" "gdbus-address-get-session.c"
- "gdbus-peer.c" "appinfo.c" "desktop-app-info.c")
- (("[ \t]*g_test_add_func.*;") "")))
+ (substitute* '("contenttype.c"
+ "gdbus-address-get-session.c"
+ "gdbus-server-auth.c"
+ "gdbus-peer.c"
+ "appinfo.c"
+ "desktop-app-info.c")
+ (("[ \t]*g_test_add_func.*;") ""))
+ (unless (which "update-desktop-database")
+ (substitute* "file.c"
+ (("[ \t]*g_test_add_func.*query-default-handler.*;") "")))
+ (substitute* '("portal-support-snap.c")
+ (("g_test_init .*")
+ "return EXIT_SUCCESS;")))
#$@(if (target-x86-32?)
;; Comment out parts of timer.c that fail on i686 due to
@@ -352,10 +365,10 @@ information, refer to the @samp{dbus-daemon(1)} man page.")))
python
python-wrapper))
(propagated-inputs
- (list libffi ;in the Requires.private field of gobject-2.0.pc
- pcre ;in the Requires.private field of glib-2.0.pc
- `(,util-linux "lib") ;for libmount
- zlib)) ;in the Requires.private field of glib-2.0.pc
+ (list libffi ; in the Requires.private field of gobject-2.0.pc
+ pcre2 ; in the Requires.private field of glib-2.0.pc
+ `(,util-linux "lib") ;for libmount
+ zlib)) ; in the Requires.private field of glib-2.0.pc
(native-search-paths
;; This variable is not really "owned" by GLib, but several related
;; packages refer to it: gobject-introspection's tools use it as a search
@@ -379,92 +392,47 @@ functions for strings and common data structures.")
(license license:lgpl2.1+)
(properties '((hidden? . #t)))))
-(define-public glib-next
- (package
- (inherit glib)
- (name "glib")
- (version "2.73.3")
- (source
- (origin
- (inherit (package-source glib))
- (uri
- (string-append "mirror://gnome/sources/"
- name "/" (string-take version 4) "/"
- name "-" version ".tar.xz"))
- (snippet
- '(substitute* "glib/tests/spawn-test.c"
- (("/bin/sh") "sh")))
- (sha256
- (base32 "1bgfch7zj1pq4rkqcibfky1470ijljyrx5pn5s5v9mk72s22n6nz"))))
- (arguments
- (substitute-keyword-arguments (package-arguments glib)
- ((#:test-options test-options ''())
- ;; Skip flaky or slow tests.
- `(cons* "--no-suite=slow" "--no-suite=flaky" ,test-options))
- ((#:phases phases #~%standard-phases)
- #~(modify-phases #$phases
- (replace 'disable-failing-tests
- (lambda _
- (with-directory-excursion "glib/tests"
- (substitute* '("unix.c" "utils.c")
- (("[ \t]*g_test_add_func.*;") "")))
- ;; The "glib:gio / file" test fails with the error "No
- ;; application is registered as handling this file" (see:
- ;; https://gitlab.gnome.org/GNOME/glib/-/issues/2742).
- (with-directory-excursion "gio/tests"
- (substitute* '("appinfo.c"
- "contenttype.c"
- "desktop-app-info.c"
- "file.c"
- "gdbus-address-get-session.c"
- "gdbus-peer.c")
- (("[ \t]*g_test_add_func.*;") "")))
-
- #$@(if (target-x86-32?)
- ;; Comment out parts of timer.c that fail on i686 due to
- ;; excess precision when building with GCC 10:
- ;; <https://gitlab.gnome.org/GNOME/glib/-/issues/820>.
- '((substitute* "glib/tests/timer.c"
- (("^ g_assert_cmpuint \\(micros.*" all)
- (string-append "//" all "\n"))
- (("^ g_assert_cmpfloat \\(elapsed, ==.*" all)
- (string-append "//" all "\n"))))
- '())))))))
- (native-inputs
- (modify-inputs (package-native-inputs glib)
- (append desktop-file-utils)))
- (propagated-inputs
- (modify-inputs (package-propagated-inputs glib)
- (replace "pcre" pcre2)))))
-
(define-public glib-with-documentation
;; glib's doc must be built in a separate package since it requires gtk-doc,
;; which in turn depends on glib.
- (package/inherit glib
- (properties (alist-delete 'hidden? (package-properties glib)))
- (outputs (cons "doc" (package-outputs glib))) ; 20 MiB of GTK-Doc reference
- (native-inputs
- (modify-inputs (package-native-inputs glib)
- (prepend docbook-xml-4.2
- docbook-xml
- docbook-xsl
- gtk-doc
- libxml2
- libxslt)))
- (arguments
- (substitute-keyword-arguments (package-arguments glib)
- ((#:configure-flags flags ''())
- #~(cons "-Dgtk_doc=true"
- (delete "-Dman=false" #$flags)))
- ((#:phases phases)
- #~(modify-phases #$phases
- (add-after 'install 'move-doc
- (lambda _
- (let ((html "/share/gtk-doc"))
- (mkdir-p (string-append #$output:doc "/share"))
- (rename-file
- (string-append #$output html)
- (string-append #$output:doc html)))))))))))
+ (let ((base glib))
+ (package/inherit base
+ (properties (alist-delete 'hidden? (package-properties base)))
+ (outputs (cons "doc" (package-outputs base))) ; 20 MiB of GTK-Doc reference
+ (native-inputs
+ `(("docbook-xml-4.2" ,docbook-xml-4.2)
+ ("docbook-xml-4.5" ,docbook-xml)
+ ("docbook-xsl" ,docbook-xsl)
+ ("gtk-doc" ,gtk-doc)
+ ("libxml2" ,libxml2)
+ ("xsltproc" ,libxslt)
+ ,@(package-native-inputs base)))
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:configure-flags flags ''())
+ #~(cons "-Dgtk_doc=true"
+ (delete "-Dman=false" #$flags)))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'patch-docbook-xml
+ (lambda* (#:key inputs #:allow-other-keys)
+ (with-directory-excursion "docs"
+ (substitute* (find-files "." "\\.xml$")
+ (("http://www.oasis-open.org/docbook/xml/4\\.5/")
+ (string-append (assoc-ref inputs "docbook-xml-4.5")
+ "/xml/dtd/docbook/"))
+ (("http://www.oasis-open.org/docbook/xml/4\\.2/")
+ (string-append (assoc-ref inputs "docbook-xml-4.2")
+ "/xml/dtd/docbook/"))))))
+ (add-after 'install 'move-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (assoc-ref outputs "doc"))
+ (html (string-append "/share/gtk-doc")))
+ (mkdir-p (string-append doc "/share"))
+ (rename-file
+ (string-append out html)
+ (string-append doc html))))))))))))
(define (python-extension-suffix python triplet)
"Determine the suffix for C extensions for PYTHON when compiled
@@ -505,14 +473,14 @@ be used when cross-compiling."
(define gobject-introspection
(package
(name "gobject-introspection")
- (version "1.72.0")
+ (version "1.76.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/"
"gobject-introspection/" (version-major+minor version)
"/gobject-introspection-" version ".tar.xz"))
(sha256
- (base32 "1g5aps3b20ck96ahy7fjl4nhp9nabkd9rlqd0s1qzn3111cqxzh2"))
+ (base32 "1grq6wmbi2nbnwffgvsljd481zm6darnk12dvkf02m9lcjzphq8r"))
(patches (search-patches
"gobject-introspection-cc.patch"
"gobject-introspection-girepository.patch"
@@ -606,10 +574,7 @@ provide bindings to call into the C library.")
(patches (search-patches
"gobject-introspection-cc-1.72.patch"
"gobject-introspection-girepository.patch"
- "gobject-introspection-absolute-shlib-path-1.72.patch"))))
- (propagated-inputs
- (modify-inputs (package-propagated-inputs gobject-introspection)
- (replace "glib" glib-next)))))
+ "gobject-introspection-absolute-shlib-path-1.72.patch"))))))
(define intltool
(package
@@ -868,7 +833,7 @@ libraries.")
(define glibmm
(package
(name "glibmm")
- (version "2.72.1")
+ (version "2.76.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/glibmm/"
@@ -876,7 +841,7 @@ libraries.")
"/glibmm-" version ".tar.xz"))
(sha256
(base32
- "1n2w2pcpbxjbsxynmar3i5ibr7src6gnrdxb9nn57p5miai4jxia"))))
+ "1cia8vrpwzn8zwalws42mga5hi965840m5s8dvfzv55xx86dhdw6"))))
(build-system meson-build-system)
(outputs '("out" "doc"))
(arguments
@@ -917,23 +882,6 @@ libraries.")
useful for C++.")
(license license:lgpl2.1+)))
-(define-public glibmm-next
- (package
- (inherit glibmm)
- (version "2.76.0")
- (name "glibmm")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnome/sources/glibmm/"
- (version-major+minor version)
- "/glibmm-" version ".tar.xz"))
- (sha256
- (base32
- "1cia8vrpwzn8zwalws42mga5hi965840m5s8dvfzv55xx86dhdw6"))))
- (propagated-inputs
- (modify-inputs (package-propagated-inputs glibmm)
- (replace "glib" glib-next)))))
-
(define-public glibmm-2.64
(package
(inherit glibmm)
@@ -955,7 +903,7 @@ useful for C++.")
(define-public python-pygobject
(package
(name "python-pygobject")
- (version "3.42.2")
+ (version "3.44.1")
(source
(origin
(method url-fetch)
@@ -964,7 +912,7 @@ useful for C++.")
"/pygobject-" version ".tar.xz"))
(sha256
(base32
- "0my95gjnps093inzznbipkhf25cffbc32v9is2fq8wvh59g6ks5d"))
+ "042pmpyaz7bsbr68znnwdqyhs3j3cajib0k45v1hrs8v6b8has1w"))
(modules '((guix build utils)))
(snippet
'(begin
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 33db3f3c19..17ef8a642c 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -5078,7 +5078,7 @@ and the GLib main loop, to integrate well with GNOME applications.")
(define-public libsoup-minimal-2
(package
(inherit libsoup-minimal)
- (version "2.74.2")
+ (version "2.74.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/libsoup/"
@@ -5086,7 +5086,7 @@ and the GLib main loop, to integrate well with GNOME applications.")
"libsoup-" version ".tar.xz"))
(sha256
(base32
- "0n8is108n0dn4dw7nm2wq9rydcm1vy47w40wywfrxqazdrjjg97h"))))
+ "04rgv6hkyhgi7lak9865yxgbgky6gc635p7w6nhcbj64rx0prdz4"))))
(arguments
(substitute-keyword-arguments (package-arguments libsoup-minimal)
((#:phases phases)
@@ -12909,7 +12909,7 @@ GObject introspection bindings.")
(propagated-inputs
(list polkit))
(inputs
- (list glib-next
+ (list glib
gtk
json-glib
libadwaita
@@ -12918,7 +12918,7 @@ GObject introspection bindings.")
polkit))
(native-inputs
(list gettext-minimal
- `(,glib-next "bin") ;for gdbus-codegen, etc.
+ `(,glib "bin") ;for gdbus-codegen, etc.
itstool
libxml2
pkg-config))
@@ -13186,7 +13186,7 @@ your data.")
(substitute* "build-aux/meson/meson_post_install.py"
(("gtk-update-icon-cache") (which "true"))))))))
(native-inputs
- (list `(,glib-next "bin")
+ (list `(,glib "bin")
gettext-minimal
itstool
pkg-config))
@@ -13194,7 +13194,7 @@ your data.")
(list json-glib
jsonrpc-glib
gettext-minimal
- glib-next
+ glib
gsettings-desktop-schemas
gspell
libgda
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 3a65b96919..88b3b8c631 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -881,9 +881,9 @@ exception-handling library.")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://gitlab.com/inkscape/lib2geom.git")
+ (url "https://gitlab.com/inkscape/lib2geom")
(commit version)))
- (file-name (git-file-name name version))
+ (file-name (git-file-name "lib2geom" version))
(sha256
(base32
"0dq981g894hmvhd6rmfl1w32mksg9hpvpjs1qvfxrnz87rhkknj8"))))
diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
index 075f424560..b883022621 100644
--- a/gnu/packages/gstreamer.scm
+++ b/gnu/packages/gstreamer.scm
@@ -461,7 +461,7 @@ the GStreamer multimedia framework.")
(define-public gstreamer
(package
(name "gstreamer")
- (version "1.22.2")
+ (version "1.22.3")
(source
(origin
(method url-fetch)
@@ -470,7 +470,7 @@ the GStreamer multimedia framework.")
version ".tar.xz"))
(sha256
(base32
- "08cfz2vkf494rsg0bn75px26fxs3syvxnsc9lj5n074j0cvfgbxj"))))
+ "0x2rdl6vfpbr7wnh1nk0rllw28cgx0js4g9vxfank7rz0naspzlz"))))
(build-system meson-build-system)
(arguments
(list #:disallowed-references (list python)
@@ -542,7 +542,7 @@ This package provides the core library and elements.")
(define-public gst-plugins-base
(package
(name "gst-plugins-base")
- (version "1.22.2")
+ (version "1.22.3")
(source
(origin
(method url-fetch)
@@ -550,7 +550,7 @@ This package provides the core library and elements.")
name "-" version ".tar.xz"))
(sha256
(base32
- "0jcxcx4mgfjvfb3ixibwhx8j330mq3ap469w7hapm6z79q614rgb"))))
+ "1ww9xx6c4mwvgn9k56d1xfnd3i1jm4v8rfiy4f07686ll24n4n8w"))))
(build-system meson-build-system)
(propagated-inputs
(list glib ;required by gstreamer-sdp-1.0.pc
@@ -641,7 +641,7 @@ for the GStreamer multimedia library.")
(define-public gst-plugins-good
(package
(name "gst-plugins-good")
- (version "1.22.2")
+ (version "1.22.3")
(source
(origin
(method url-fetch)
@@ -650,7 +650,7 @@ for the GStreamer multimedia library.")
"https://gstreamer.freedesktop.org/src/" name "/"
name "-" version ".tar.xz"))
(sha256
- (base32 "1p8cpkk4dynglw0xswqyf57xl5fnxmb3xld71kv35cpj4nacb33w"))))
+ (base32 "0wq2f5q395vs7hnwjqpc2gysdvkgd4jmyfdszv9g9wrf795ib0dg"))))
(build-system meson-build-system)
(arguments
(list
@@ -760,14 +760,14 @@ model to base your own plug-in on, here it is.")
(define-public gst-plugins-bad
(package
(name "gst-plugins-bad")
- (version "1.22.2")
+ (version "1.22.3")
(source (origin
(method url-fetch)
(uri (string-append "https://gstreamer.freedesktop.org/src/"
name "/" name "-" version ".tar.xz"))
(sha256
(base32
- "03rd09wsrf9xjianpnnvamb4n3lndhd4x31srqsqab20wcfaz3rx"))
+ "1n116sphawmlqyjp1b8sv07vz4rjk1zn07286w37y4l65pp8yyg1"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -951,7 +951,7 @@ par compared to the rest.")
(define-public gst-plugins-ugly
(package
(name "gst-plugins-ugly")
- (version "1.22.2")
+ (version "1.22.3")
(source
(origin
(method url-fetch)
@@ -959,7 +959,7 @@ par compared to the rest.")
(string-append "https://gstreamer.freedesktop.org/src/"
name "/" name "-" version ".tar.xz"))
(sha256
- (base32 "1486x08bwasq6l7kc75nph5az61siq9mbgkgpw4kf1mxn16z8c4g"))))
+ (base32 "0q53snvh7kr8g7qqxy4v5ska0d78kgc5bkp6qjrnhcr9qbaqxj9x"))))
(build-system meson-build-system)
(arguments
(list #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
@@ -1008,7 +1008,7 @@ think twice about shipping them.")
(define-public gst-libav
(package
(name "gst-libav")
- (version "1.22.2")
+ (version "1.22.3")
(source
(origin
(method url-fetch)
@@ -1017,7 +1017,7 @@ think twice about shipping them.")
"https://gstreamer.freedesktop.org/src/" name "/"
name "-" version ".tar.xz"))
(sha256
- (base32 "1zfg7giwampmjxkqr5pqy66vck42b0akmwby661brwz8iy3zkapw"))))
+ (base32 "08x929yhjd2wpy05146fnqv6p2hw58ha079bwfkp2hwbh02wii9f"))))
(build-system meson-build-system)
(native-inputs (list perl pkg-config python-wrapper ruby))
(inputs (list ffmpeg))
@@ -1031,7 +1031,7 @@ decoders, muxers, and demuxers provided by FFmpeg.")
(define-public gst-editing-services
(package
(name "gst-editing-services")
- (version "1.22.2")
+ (version "1.22.3")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1039,7 +1039,7 @@ decoders, muxers, and demuxers provided by FFmpeg.")
"gst-editing-services-" version ".tar.xz"))
(sha256
(base32
- "1gyfw11ns2la1cm6gvvvv5qj3q5gcvcypc3wk8kdwmrqzij18fs5"))))
+ "18nfq3av5ksz17048l2b4r4zbh11yd0yq2asx0jy3c894pkbr98m"))))
(build-system meson-build-system)
(arguments
(list
@@ -1099,7 +1099,7 @@ binary, but none of the actual plugins.")))
(define-public python-gst
(package
(name "python-gst")
- (version "1.22.2")
+ (version "1.22.3")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1107,7 +1107,7 @@ binary, but none of the actual plugins.")))
"gst-python-" version ".tar.xz"))
(sha256
(base32
- "1bak46bj92gyz613m99mnl0yw0qhbhq5dfxifnvldgp45kcb7wmy"))))
+ "073kii36ncgsyq0b5njbsvprrg1k3kmydr3dxwiccjv3pvxd7gkh"))))
(build-system meson-build-system)
(arguments
(list
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index ca41612e90..b957989689 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -366,7 +366,7 @@ applications.")
(define-public pango
(package
(name "pango")
- (version "1.50.10")
+ (version "1.50.14")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/pango/"
@@ -375,7 +375,7 @@ applications.")
(patches (search-patches "pango-skip-libthai-test.patch"))
(sha256
(base32
- "0rj9sszflckk8gj47ppirpndpp3mzsx97l64lalj8kc580g2ypby"))))
+ "1s41sprfgkc944fva36zjmkmdpv8hn1bdpyg55xc4663pw2z4rqx"))))
(build-system meson-build-system)
(arguments
'(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
@@ -616,6 +616,11 @@ printing and other features typical of a source code editor.")
;; Tests require a running X server.
(system (string-append Xvfb " :1 &"))
(setenv "DISPLAY" ":1")
+ ;; Use an X11 setup to find the display.
+ (setenv "GDK_BACKEND" "x11")
+ ;; Avoid spawning (and failing to connect to) the accessiblity
+ ;; bus.
+ (setenv "GTK_A11Y" "none")
;; For the missing /etc/machine-id.
(setenv "DBUS_FATAL_WARNINGS" "0")))))))
(native-inputs
@@ -632,7 +637,7 @@ printing and other features typical of a source code editor.")
;; gtksourceview-5.pc refers to all these.
(list fontconfig
fribidi
- glib-next
+ glib
gtk
libxml2
pango
@@ -899,6 +904,7 @@ is part of the GNOME accessibility project.")
"1nn6kks1zyvb5xikr9y2k7r9bwjy1g4b0m0s66532bclymbwfamc"))
(patches (search-patches "gtk2-respect-GUIX_GTK2_PATH.patch"
"gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch"
+ "gtk2-harden-list-store.patch"
"gtk2-theme-paths.patch"
"gtk2-fix-builder-test.patch"))))
(build-system gnu-build-system)
@@ -1108,7 +1114,7 @@ application suites.")
(define-public gtk
(package
(name "gtk")
- (version "4.8.1")
+ (version "4.10.3")
(source
(origin
(method url-fetch)
@@ -1116,9 +1122,11 @@ application suites.")
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
- (base32 "1za2nyqqs2lrbss61gfw17qba2f0w6a119m1xk4d0fx2k3gdis2w"))
+ (base32 "1aff06l9v40j16s4s0qvdbj8cs54qxnh41d7w2v7wdwyswd48ia5"))
(patches
- (search-patches "gtk4-respect-GUIX_GTK4_PATH.patch"))))
+ (search-patches "gtk4-respect-GUIX_GTK4_PATH.patch"))
+ (modules '((guix build utils)))
+ (snippet #~(begin (delete-file-recursively "subprojects/gi-docgen")))))
(build-system meson-build-system)
(outputs '("out" "bin" "doc"))
(arguments
@@ -1142,6 +1150,8 @@ application suites.")
;; Use the same test options as upstream uses for
;; their CI.
"--suite=gtk"
+ "--no-suite=failing"
+ "--no-suite=flaky"
"--no-suite=gsk-compare-broadway")
#:phases
#~(modify-phases %standard-phases
@@ -1248,6 +1258,7 @@ application suites.")
cups ;for CUPS print-backend
ffmpeg ;for ffmpeg media-backend
fribidi
+ gi-docgen
gstreamer ;for gstreamer media-backend
gst-plugins-bad ;provides gstreamer-player
gst-plugins-base ;provides gstreamer-gl
@@ -2930,11 +2941,11 @@ Unix desktop environment under X11 as well as Wayland.")
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")))))))
- (native-inputs (list `(,glib-next "bin")
+ (native-inputs (list `(,glib "bin")
gobject-introspection
pkg-config
vala))
- (inputs (list glib-next gtk libadwaita))
+ (inputs (list glib gtk libadwaita))
(home-page "https://gitlab.gnome.org/GNOME/libpanel")
(synopsis "Dock and panel library for GTK 4")
(description "Libpanel provides a library to create IDE-like applications
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index da929709e4..80e0f452c1 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -2329,7 +2329,7 @@ capabilities.")
(setenv "DISPLAY" ":1")
#t)))))
(inputs
- (list guile-3.0 guile-lib glib-next))
+ (list guile-3.0 guile-lib glib))
(native-inputs
(list autoconf
automake
diff --git a/gnu/packages/patches/glib-skip-failing-test.patch b/gnu/packages/patches/glib-skip-failing-test.patch
index c7706aaa74..3fde5cb1e2 100644
--- a/gnu/packages/patches/glib-skip-failing-test.patch
+++ b/gnu/packages/patches/glib-skip-failing-test.patch
@@ -10,12 +10,13 @@ diff --git a/gio/tests/meson.build b/gio/tests/meson.build
index a926ae0..4fdbe7a 100644
--- a/gio/tests/meson.build
+++ b/gio/tests/meson.build
-@@ -317,10 +317,6 @@ if host_machine.system() != 'windows'
+@@ -317,11 +317,6 @@ if host_machine.system() != 'windows'
'extra_sources' : [extra_sources, gdbus_test_codegen_generated, gdbus_test_codegen_generated_interface_info],
'c_args' : ['-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_32'],
},
- 'gdbus-threading' : {
- 'extra_sources' : extra_sources,
+- 'extra_programs': extra_programs,
- 'suite' : ['slow'],
- },
'gmenumodel' : {
diff --git a/gnu/packages/patches/gtk2-harden-list-store.patch b/gnu/packages/patches/gtk2-harden-list-store.patch
new file mode 100644
index 0000000000..f49dc3bc77
--- /dev/null
+++ b/gnu/packages/patches/gtk2-harden-list-store.patch
@@ -0,0 +1,42 @@
+Backport the implementation of gtk_list_store_iter_is_valid from gtk+-3.
+
+Index: gtk+-2.24.33/gtk/gtkliststore.c
+===================================================================
+--- gtk+-2.24.33.orig/gtk/gtkliststore.c
++++ gtk+-2.24.33/gtk/gtkliststore.c
+@@ -1195,16 +1195,31 @@ gboolean
+ gtk_list_store_iter_is_valid (GtkListStore *list_store,
+ GtkTreeIter *iter)
+ {
++ GSequenceIter *seq_iter;
++
+ g_return_val_if_fail (GTK_IS_LIST_STORE (list_store), FALSE);
+ g_return_val_if_fail (iter != NULL, FALSE);
+
+- if (!VALID_ITER (iter, list_store))
+- return FALSE;
++ /* can't use VALID_ITER() here, because iter might point
++ * to random memory.
++ *
++ * We MUST NOT dereference it.
++ */
+
+- if (g_sequence_iter_get_sequence (iter->user_data) != list_store->seq)
++ if (iter == NULL ||
++ iter->user_data == NULL ||
++ list_store->stamp != iter->stamp)
+ return FALSE;
+
+- return TRUE;
++ for (seq_iter = g_sequence_get_begin_iter (list_store->seq);
++ !g_sequence_iter_is_end (seq_iter);
++ seq_iter = g_sequence_iter_next (seq_iter))
++ {
++ if (seq_iter == iter->user_data)
++ return TRUE;
++ }
++
++ return FALSE;
+ }
+
+ static gboolean real_gtk_list_store_row_draggable (GtkTreeDragSource *drag_source,
diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm
index aa01c2f692..d56409cbe9 100644
--- a/gnu/packages/telegram.scm
+++ b/gnu/packages/telegram.scm
@@ -319,8 +319,8 @@
(list abseil-cpp-cxxstd17
crc32c
ffmpeg
- glib-next
- glibmm-next
+ glib
+ glibmm
libdrm
libglvnd
libjpeg-turbo
@@ -479,7 +479,7 @@ Telegram project, for its use in telegram desktop client.")
(add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)))))
(native-inputs
- (list `(,glib-next "bin")
+ (list `(,glib "bin")
`(,gtk+ "bin")
pkg-config
python-wrapper))
@@ -491,8 +491,8 @@ Telegram project, for its use in telegram desktop client.")
fcitx-qt5
fcitx5-qt
ffmpeg
- glib-next
- glibmm-next
+ glib
+ glibmm
gtk+
hime
hunspell