diff --git a/meta-openembedded/meta-gnome/recipes-gnome/amtk/amtk_5.2.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/amtk/amtk_5.3.1.bb
similarity index 66%
rename from meta-openembedded/meta-gnome/recipes-gnome/amtk/amtk_5.2.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/amtk/amtk_5.3.1.bb
index 41cda1e..d4d91ed 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/amtk/amtk_5.2.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/amtk/amtk_5.3.1.bb
@@ -7,8 +7,12 @@
     gtk+3 \
 "
 
+GNOMEBASEBUILDCLASS = "meson"
+
+GIR_MESON_OPTION = ""
+
 inherit gnomebase gettext features_check gobject-introspection
 
 ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
 
-SRC_URI[archive.sha256sum] = "820545bb4cf87ecebc2c3638d6b6e58b8dbd60a419a9b43cf020124e5dad7078"
+SRC_URI[archive.sha256sum] = "d5aa236c5d71dc41aa4674f345560a67a27f21c0efc97c9b3da09cb582b4638b"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor/0001-editor-meson.build-fix-meson-0.61-errors.patch b/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor/0001-editor-meson.build-fix-meson-0.61-errors.patch
new file mode 100644
index 0000000..850d8a9
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor/0001-editor-meson.build-fix-meson-0.61-errors.patch
@@ -0,0 +1,31 @@
+From 86379a220a4eb00c309f514d2ca57ed6c1c8b35c Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex@linutronix.de>
+Date: Fri, 21 Jan 2022 22:22:58 +0100
+Subject: [PATCH] editor/meson.build: fix meson 0.61 errors
+
+Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/dconf-editor/-/merge_requests/21]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ editor/meson.build | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/editor/meson.build b/editor/meson.build
+index 4c89ab99..0eb3bb1a 100644
+--- a/editor/meson.build
++++ b/editor/meson.build
+@@ -1,7 +1,6 @@
+ desktop = dconf_editor_namespace + '.desktop'
+ 
+ i18n.merge_file (
+-  desktop,
+   type: 'desktop',
+   input: desktop + '.in',
+   output: desktop,
+@@ -26,7 +25,6 @@ configure_file(
+ appdata = dconf_editor_namespace + '.appdata.xml'
+ 
+ i18n.merge_file(
+-  appdata,
+   input: appdata + '.in',
+   output: appdata,
+   po_dir: po_dir,
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.3.bb b/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.3.bb
index 97e994c..55b2913 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.3.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/dconf/dconf-editor_3.38.3.bb
@@ -8,6 +8,7 @@
 
 inherit gnomebase vala gettext gsettings bash-completion
 
+SRC_URI += " file://0001-editor-meson.build-fix-meson-0.61-errors.patch"
 SRC_URI[archive.sha256sum] = "571af4c7dad4f049b53e6cd728b79addf08c27ddab6bc57b396d211866ee79e3"
 
 FILES:${PN} += " \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/devilspie/devilspie2_0.43.bb b/meta-openembedded/meta-gnome/recipes-gnome/devilspie/devilspie2_0.43.bb
index f48f04f..8372448 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/devilspie/devilspie2_0.43.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/devilspie/devilspie2_0.43.bb
@@ -10,7 +10,7 @@
 
 SRCREV = "a3ee65b815a0247a0dbdaa39353444cef6f93499"
 
-SRC_URI = "git://github.com/dsalt/devilspie2;branch=master \
+SRC_URI = "git://github.com/dsalt/devilspie2;branch=master;protocol=https \
     file://default.lua \
     file://devilspie2.desktop \
 "
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-Remove-incorrect-args-for-i18n.merge_file.patch b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-Remove-incorrect-args-for-i18n.merge_file.patch
new file mode 100644
index 0000000..68447be
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-Remove-incorrect-args-for-i18n.merge_file.patch
@@ -0,0 +1,52 @@
+From b525a64d26bcba4e3a74f09c580429625d8a2104 Mon Sep 17 00:00:00 2001
+From: r-value <i@rvalue.moe>
+Date: Wed, 17 Nov 2021 18:22:45 +0800
+Subject: [PATCH] Remove incorrect args for i18n.merge_file
+
+`i18n.merge_file` has been ignoring positional arguments for
+a time and explicitly rejects with error since meson 0.60.0
+
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ backend/meson.build | 1 -
+ data/meson.build    | 1 -
+ meson.build         | 1 -
+ 3 files changed, 3 deletions(-)
+
+diff --git a/backend/meson.build b/backend/meson.build
+index 14629f2..2f972a8 100644
+--- a/backend/meson.build
++++ b/backend/meson.build
+@@ -53,7 +53,6 @@ foreach backend, backend_mime_types: backends
+   )
+ 
+   i18n.merge_file(
+-    appstream,
+     input: appstream_in,
+     output: appstream,
+     po_dir: po_dir,
+diff --git a/data/meson.build b/data/meson.build
+index 8a308b8..afc3020 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -15,7 +15,6 @@ foreach desktop: desktops
+   )
+ 
+   i18n.merge_file(
+-    desktop,
+     type: 'desktop',
+     input: desktop_in,
+     output: desktop,
+diff --git a/meson.build b/meson.build
+index 07fb8ec..0bb5d0f 100644
+--- a/meson.build
++++ b/meson.build
+@@ -498,7 +498,6 @@ install_headers(
+ appdata = ev_namespace + '.appdata.xml'
+ 
+ i18n.merge_file(
+-  appdata,
+   input: appdata + '.in',
+   output: appdata,
+   po_dir: po_dir,
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_40.4.bb b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_41.3.bb
similarity index 77%
rename from meta-openembedded/meta-gnome/recipes-gnome/evince/evince_40.4.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/evince/evince_41.3.bb
index ed4fb63..ec3dca2 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_40.4.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_41.3.bb
@@ -14,7 +14,7 @@
     orc \
     adwaita-icon-theme \
     libhandy \
-    ${@bb.utils.contains('DISTRO_FEATURES','x11','gnome-desktop3','',d)} \
+    ${@bb.utils.contains('DISTRO_FEATURES','x11','gnome-desktop','',d)} \
 "
 
 GNOMEBASEBUILDCLASS = "meson"
@@ -24,7 +24,8 @@
 def gnome_verdir(v):
     return oe.utils.trim_version(v, 1)
 
-SRC_URI[archive.sha256sum] = "33420500e0e060f178a435063197d42dae7b67e39cc437a96510a33ddf7e95fb"
+SRC_URI += " file://0001-Remove-incorrect-args-for-i18n.merge_file.patch"
+SRC_URI[archive.sha256sum] = "3346b01f9bdc8f2d5ffea92f110a090c64a3624942b5b543aad4592a9de33bb0"
 
 GTKDOC_MESON_OPTION = "gtk_doc"
 
@@ -38,17 +39,14 @@
 
 PACKAGECONFIG ??= ""
 PACKAGECONFIG[nautilus] = "-Dnautilus=true,-Dnautilus=false,nautilus"
-PACKAGECONFIG[browser-plugin] = "-Dbrowser_plugin=true,-Dbrowser_plugin=false"
 
 RDEPENDS:${PN} += "glib-2.0-utils"
 RRECOMMMENDS_${PN} = "adwaita-icon-theme"
 
 PACKAGES =+ "${PN}-nautilus-extension"
-PACKAGES =+ "${PN}-browser-plugin"
 
 FILES:${PN} += "${datadir}/dbus-1 \
                 ${datadir}/metainfo \
                 ${datadir}/thumbnailers \
 "
 FILES:${PN}-nautilus-extension = "${libdir}/nautilus/*/*so"
-FILES:${PN}-browser-plugin = "${libdir}/mozilla/*/*so"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb
index 571d430..9ccaedb 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb
@@ -2,11 +2,11 @@
 
 DEPENDS = " \
     ${BPN}-native intltool-native gperf-native \
-    glib-2.0 gtk+3 libgdata \
+    glib-2.0 gtk+3 libgdata libxml2 icu \
     dbus db virtual/libiconv zlib libsoup-2.4 libical nss libsecret \
 "
 
-inherit gsettings gobject-introspection features_check cmake gtk-doc gettext perlnative
+inherit pkgconfig gsettings gobject-introspection features_check cmake gtk-doc gettext perlnative vala
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
@@ -21,23 +21,23 @@
 LKSTRFTIME = "HAVE_LKSTRFTIME=ON"
 LKSTRFTIME:libc-musl = "HAVE_LKSTRFTIME=OFF"
 
-# For arm qemu-arm runs at 100% CPU load and never returns - so disable introspection for now
-GI_DATA_ENABLED="False"
-
 EXTRA_OECMAKE = " \
     -DSYSCONF_INSTALL_DIR=${sysconfdir} \
     -DWITH_KRB5=OFF \
-    -DENABLE_GOA=OFF \
     -DENABLE_UOA=OFF \
     -DENABLE_GOOGLE_AUTH=OFF \
     -DENABLE_WEATHER=OFF \
-    -DENABLE_INTROSPECTION=${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'ON', 'OFF', d)} \
+    -DG_IR_COMPILER=${STAGING_BINDIR}/g-ir-compiler-wrapper \
+    -DG_IR_SCANNER=${STAGING_BINDIR}/g-ir-scanner-wrapper \
+    -DVAPIGEN=${STAGING_BINDIR_NATIVE}/vapigen \
+    ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON -DENABLE_VALA_BINDINGS=ON', '-DENABLE_INTROSPECTION=OFF', d)} \
     -D${LKSTRFTIME} \
     -DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')} \
 "
 
 PACKAGECONFIG[canberra] = "-DENABLE_CANBERRA=ON,-DENABLE_CANBERRA=OFF,libcanberra"
 PACKAGECONFIG[oauth]    = "-DENABLE_OAUTH2=ON,-DENABLE_OAUTH2=OFF,webkitgtk json-glib"
+PACKAGECONFIG[goa]    = "-DENABLE_GOA=ON,-DENABLE_GOA=OFF,gnome-online-accounts"
 
 # BROKEN: due missing pkg-config in openldap eds' cmake finds host-libs when
 # searching for openldap-libs
@@ -48,17 +48,8 @@
 
 do_configure:append () {
     cp ${WORKDIR}/iconv-detect.h ${S}/src
-
-    # fix native perl shebang
-    sed -i 's:${STAGING_BINDIR_NATIVE}/perl-native:${bindir}:' ${B}/src/tools/addressbook-export/csv2vcard
-
-    # fix abs path for g-ir-scanner-wrapper
-    sed  -i ${B}/build.ninja \
-        -e 's: ${bindir}/g-ir-scanner-wrapper: ${STAGING_BINDIR}/g-ir-scanner-wrapper:g'
-}
-
-do_compile:prepend() {
-    export GIR_EXTRA_LIBS_PATH="${B}/camel/.libs:${B}/libedataserver/.libs"
+    # avoid writing perl-native path into csv2vcard shebang
+    sed -i "s|@PERL@|${bindir}/perl|" ${S}/src/tools/addressbook-export/csv2vcard.in
 }
 
 FILES:${PN} =+ " \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.inc b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.inc
index 86c7dea..96367aa 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.inc
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.inc
@@ -9,5 +9,5 @@
 
 inherit gnomebase upstream-version-is-even
 
-SRC_URI[archive.sha256sum] = "ec82951639f32a5cece80a8b0b9aa3f66b7d318e3ee2c1c35234f2e2bde8a418"
-PV = "3.40.2"
+SRC_URI[archive.sha256sum] = "6f5847a1234799073e9585db861c21381a09ed550dc0a2125f00ba5f90bd361d"
+PV = "3.42.3"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gdm/gdm/0001-Ensure-pam-file-installation.patch b/meta-openembedded/meta-gnome/recipes-gnome/gdm/gdm/0001-Ensure-pam-file-installation.patch
deleted file mode 100644
index 6362d5e..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gdm/gdm/0001-Ensure-pam-file-installation.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From f7bba53adf8a26f900442a05bb98326747c392b4 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Tue, 3 Dec 2019 00:24:27 +0100
-Subject: [PATCH] Ensure pam-file installation
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-All the detection magic does not work for us
-
-Upstream-Status: Inappropriate [OE-specific]
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
----
- data/Makefile.am | 12 +-----------
- 1 file changed, 1 insertion(+), 11 deletions(-)
-
-diff --git a/data/Makefile.am b/data/Makefile.am
-index bda9160..dbc3ea3 100644
---- a/data/Makefile.am
-+++ b/data/Makefile.am
-@@ -296,22 +296,12 @@ endif
- 		chown root:root $(DESTDIR)$(logdir) || : ; \
- 	fi
- 
--	system=`uname`; \
--	if test -f /usr/include/security/pam_appl.h; then \
--	  if test '!' -d $(DESTDIR)$(PAM_PREFIX)/pam.d; then \
- 		$(mkinstalldirs) $(DESTDIR)$(PAM_PREFIX)/pam.d; \
- 		chmod 755 $(DESTDIR)$(PAM_PREFIX)/pam.d; \
--	   fi; \
--	   if test $$system = Linux; then \
- 	     for pamfile in $(pam_files); do \
- 	       bn=$$(basename $$pamfile .pam); \
- 	       $(INSTALL_DATA) $(srcdir)/$$pamfile $(DESTDIR)$(PAM_PREFIX)/pam.d/$$bn; \
--	     done; \
--	   fi; \
--	   if test $$system = SunOS; then \
--		echo "Please add PAM authentication for gdm, gdm-autologin and gdm-welcome in $(PAM_PREFIX)/pam.conf!"; \
--	   fi; \
--	fi
-+	     done;
- 
- 	if test '!' -d $(DESTDIR)$(xauthdir); then \
- 		$(mkinstalldirs) $(DESTDIR)$(xauthdir); \
--- 
-2.21.0
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gdm/gdm_3.36.3.bb b/meta-openembedded/meta-gnome/recipes-gnome/gdm/gdm_41.0.bb
similarity index 70%
rename from meta-openembedded/meta-gnome/recipes-gnome/gdm/gdm_3.36.3.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gdm/gdm_41.0.bb
index e4c590e..e31ca13 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gdm/gdm_3.36.3.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gdm/gdm_41.0.bb
@@ -10,17 +10,19 @@
     libpam \
 "
 
-REQUIRED_DISTRO_FEATURES = "x11 systemd pam polkit"
+REQUIRED_DISTRO_FEATURES = "x11 systemd pam polkit gobject-introspection-data"
+GIR_MESON_OPTION = ""
 
-inherit gnomebase gsettings gobject-introspection gettext systemd useradd upstream-version-is-even features_check
+GNOMEBASEBUILDCLASS = "meson"
 
-SRC_URI[archive.sha256sum] = "3bfbb620cbc0d1cbd70b4c4376cf4b705db4dc36a37124e5be386ccc25fa7e81"
-SRC_URI += "file://0001-Ensure-pam-file-installation.patch"
+inherit gnomebase gsettings gobject-introspection gettext systemd useradd itstool gnome-help features_check
 
-EXTRA_OECONF = " \
-    --without-plymouth \
-    --with-default-pam-config=openembedded \
-    --with-pam-mod-dir=${base_libdir}/security \
+SRC_URI[archive.sha256sum] = "5738c4293a9f5a80d4a6e9e06f4d0df3e9f313ca7b61bfb4d8afaba983e200dc"
+
+EXTRA_OEMESON = " \
+    -Dplymouth=disabled \
+    -Ddefault-pam-config=openembedded \
+    -Dpam-mod-dir=${base_libdir}/security \
 "
 
 do_install:append() {
@@ -48,7 +50,7 @@
     ${datadir}/dconf \
     ${base_libdir}/security/pam_gdm.so \
     ${localstatedir} \
-    ${systemd_unitdir} \
+    ${systemd_unitdir} ${systemd_user_unitdir} \
 "
 
 RDEPENDS:${PN} += "${PN}-base"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit/0001-Remove-incorrect-args-for-i18n.merge_file.patch b/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit/0001-Remove-incorrect-args-for-i18n.merge_file.patch
new file mode 100644
index 0000000..66df3c2
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit/0001-Remove-incorrect-args-for-i18n.merge_file.patch
@@ -0,0 +1,34 @@
+From ea9a15afb76c093aea37f6c56c559b61afd9a9f2 Mon Sep 17 00:00:00 2001
+From: rvalue <i@rvalue.moe>
+Date: Wed, 15 Dec 2021 07:02:09 +0000
+Subject: [PATCH] Remove incorrect args for i18n.merge_file
+
+The positional argument has been silently ignored for a time. And it causes failure
+with "ERROR: Function does not take positional arguments" since meson 0.60.0
+
+Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gedit/-/merge_requests/124]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ data/meson.build | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/data/meson.build b/data/meson.build
+index bb61387..28d72a1 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -4,7 +4,6 @@ install_man('gedit.1')
+ 
+ appdata = 'org.gnome.gedit.appdata.xml'
+ appdata_file = i18n.merge_file(
+-  appdata,
+   input: appdata + '.in',
+   output: appdata,
+   po_dir: '../po/',
+@@ -23,7 +22,6 @@ endif
+ 
+ desktop_file = 'org.gnome.gedit.desktop'
+ desktop_output_file = i18n.merge_file(
+-  desktop_file,
+   type: 'desktop',
+   input: desktop_file + '.in',
+   output: desktop_file,
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_40.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_40.1.bb
index 035f5d1..df8ab62 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_40.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_40.1.bb
@@ -23,11 +23,12 @@
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
+SRC_URI += " file://0001-Remove-incorrect-args-for-i18n.merge_file.patch"
 SRC_URI[archive.sha256sum] = "55e394a82cb65678b1ab49526cf5bd43f00d8fba21476a4849051a8e137d3691"
 
 # gobject-introspection is mandatory and cannot be configured
 REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
-UNKNOWN_CONFIGURE_WHITELIST:append = " introspection"
+GIR_MESON_OPTION = ""
 
 GTKDOC_MESON_OPTION = "gtk_doc"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gexiv2/gexiv2_0.12.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/gexiv2/gexiv2_0.12.2.bb
deleted file mode 100644
index 708523e..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gexiv2/gexiv2_0.12.2.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "A GObject-based Exiv2 wrapper"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=625f055f41728f84a8d7938acc35bdc2"
-
-DEPENDS = "exiv2"
-
-GNOMEBASEBUILDCLASS = "meson"
-GTKDOC_MESON_OPTION = "gtk_doc"
-
-inherit gnomebase gobject-introspection gtk-doc
-
-SRC_URI[archive.md5sum] = "4c0cd962f021f937507904df147ea750"
-SRC_URI[archive.sha256sum] = "2322b552aca330eef79724a699c51a302345d5e074738578b398b7f2ff97944c"
-
-EXTRA_OEMESON = " \
-    -Dvapi=false \
-    -Dpython2_girdir=no \
-    -Dpython3_girdir=no \
-"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gexiv2/gexiv2_0.14.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gexiv2/gexiv2_0.14.0.bb
new file mode 100644
index 0000000..b2fd4b0
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gexiv2/gexiv2_0.14.0.bb
@@ -0,0 +1,21 @@
+SUMMARY = "A GObject-based Exiv2 wrapper"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=625f055f41728f84a8d7938acc35bdc2"
+
+DEPENDS = "exiv2 python3-pygobject-native"
+
+GNOMEBASEBUILDCLASS = "meson"
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+inherit gnomebase gobject-introspection gtk-doc python3native
+
+SRC_URI[archive.sha256sum] = "e58279a6ff20b6f64fa499615da5e9b57cf65ba7850b72fafdf17221a9d6d69e"
+
+EXTRA_OEMESON = " \
+    -Dvapi=false \
+    -Dpython3_girdir=${PYTHON_SITEPACKAGES_DIR}/gi/overrides \
+"
+
+PACKAGES =+ "${PN}-python3"
+FILES:${PN}-python3 = "${PYTHON_SITEPACKAGES_DIR}"
+RDEPENDS:${PN}-python3 = "${PN}"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-Disable-tests-on-host.patch b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-Disable-tests-on-host.patch
deleted file mode 100644
index 0953214..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-Disable-tests-on-host.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 95379de2132786f855e8caec1fd5869225774d02 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Sat, 18 May 2019 01:14:07 +0200
-Subject: [PATCH] Disable tests on host
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: Inappropriate [OE-specific]
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
----
- configure.ac | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index fa4e136..056e96e 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -335,9 +335,7 @@ AS_IF([test "x$with_dbus_tests" != "xno"], [
- ])
- AM_CONDITIONAL([DBUS_TESTS], [test "x$with_dbus_tests" != "xno"])
- 
--AC_MSG_CHECKING([for a suitable UTF-8 locale to run the tests in])
--TESTS_LOCALE=$($srcdir/build/choose-tests-locale.sh)
--AC_MSG_RESULT([$TESTS_LOCALE])
-+TESTS_LOCALE=C
- AC_SUBST([TESTS_LOCALE])
- 
- AC_SUBST([gjsjsdir], [\${datadir}/gjs-1.0])
--- 
-2.20.1
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-Support-cross-builds-a-bit-better.patch b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-Support-cross-builds-a-bit-better.patch
new file mode 100644
index 0000000..55af681
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-Support-cross-builds-a-bit-better.patch
@@ -0,0 +1,50 @@
+From 550e98013b0e003c1a6771d8e811375913adf16b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Wed, 27 Oct 2021 20:18:47 +0200
+Subject: [PATCH] Support cross builds a bit better
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+* Do not build/run mozjs-linked program
+* Do not try to run test applications
+
+Upstream-Status: Submitted[https://gitlab.gnome.org/GNOME/gjs/-/merge_requests/690]
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ meson.build | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index dfcc2c3..192b1b5 100644
+--- a/meson.build
++++ b/meson.build
+@@ -234,6 +234,7 @@ release builds of SpiderMonkey. Try configuring SpiderMonkey with
+ --disable-debug.''')
+ endif
+ 
++if not meson.is_cross_build()
+ # Check if a minimal SpiderMonkey program compiles, links, and runs. If not,
+ # it's most likely the case that SpiderMonkey was configured incorrectly, for
+ # example by building mozglue as a shared library.
+@@ -254,6 +255,7 @@ could not be compiled, linked, or run. Most likely you should build it with a
+ different configuration. Check the recommended configuration:
+ https://github.com/spidermonkey-embedders/spidermonkey-embedding-examples/blob/esr78/docs/Building%20SpiderMonkey.md''')
+ endif
++endif # not meson.is_cross_build()
+ 
+ have_printf_alternative_int = cc.compiles('''
+ #include <stdio.h>
+@@ -662,7 +664,7 @@ endif
+ 
+ # Note: The test program in test/ needs to be ported
+ #       to Windows before we can build it on Windows.
+-if host_machine.system() != 'windows'
++if host_machine.system() != 'windows' and not meson.is_cross_build()
+     subdir('test')
+ endif
+ 
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-maint-Avoid-g_once_init_enter-error-in-GCC-11.patch b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-maint-Avoid-g_once_init_enter-error-in-GCC-11.patch
deleted file mode 100644
index 6343a24..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0001-maint-Avoid-g_once_init_enter-error-in-GCC-11.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From dae0055be61937fe70252f3f4ee09b355aba2b8f Mon Sep 17 00:00:00 2001
-From: Philip Chimento <philip.chimento@gmail.com>
-Date: Sun, 14 Feb 2021 12:20:09 -0800
-Subject: [PATCH] maint: Avoid g_once_init_enter error in GCC 11
-
-On platforms where g_once_init_enter() is defined to use C11 atomic
-builtins, passing a pointer to a volatile value is an error in GCC 11 and
-later, in C++.
-
-More info about the GCC change:
-https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95378
-https://gcc.gnu.org/pipermail/gcc-patches/2020-June/548283.html
-
-However, it's my understanding that in modern C++ there is no longer a
-need to guard the initialization of these variables. Since C++11, static
-local variables in a function are guaranteed to be initialized only once,
-the first time control passes through that function. So we can just remove
-the g_once_init_enter guard.
-
-More info:
-https://en.cppreference.com/w/cpp/language/storage_duration#Static_local_variables
-
-Stack Overflow answers with quotations from the C++ standard:
-https://stackoverflow.com/a/58804/172999
-https://stackoverflow.com/a/8102145/172999
-
-Closes: #376
----
- gjs/error-types.cpp | 32 +++++++++++++-------------------
- 1 file changed, 13 insertions(+), 19 deletions(-)
-
-Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gjs/-/commit/f02eaf3a9d3465915eb849428c2d9615e2184a4c]
-diff --git a/gjs/error-types.cpp b/gjs/error-types.cpp
-index 86cb878..5eba61b 100644
---- a/gjs/error-types.cpp
-+++ b/gjs/error-types.cpp
-@@ -31,24 +31,18 @@ G_DEFINE_QUARK(gjs-js-error-quark, gjs_js_error)
- // clang-format on
- 
- GType gjs_js_error_get_type(void) {
--    static volatile GType g_type_id;
--
--    if (g_once_init_enter(&g_type_id)) {
--        static GEnumValue errors[] = {
--            { GJS_JS_ERROR_ERROR, "Error", "error" },
--            { GJS_JS_ERROR_EVAL_ERROR, "EvalError", "eval-error" },
--            { GJS_JS_ERROR_INTERNAL_ERROR, "InternalError", "internal-error" },
--            { GJS_JS_ERROR_RANGE_ERROR, "RangeError", "range-error" },
--            { GJS_JS_ERROR_REFERENCE_ERROR, "ReferenceError", "reference-error" },
--            { GJS_JS_ERROR_STOP_ITERATION, "StopIteration", "stop-iteration" },
--            { GJS_JS_ERROR_SYNTAX_ERROR, "SyntaxError", "syntax-error" },
--            { GJS_JS_ERROR_TYPE_ERROR, "TypeError", "type-error" },
--            { GJS_JS_ERROR_URI_ERROR, "URIError", "uri-error" },
--            { 0, nullptr, nullptr }
--        };
--
--        g_type_id = g_enum_register_static("GjsJSError", errors);
--    }
--
-+    static const GEnumValue errors[] = {
-+        {GJS_JS_ERROR_ERROR, "Error", "error"},
-+        {GJS_JS_ERROR_EVAL_ERROR, "EvalError", "eval-error"},
-+        {GJS_JS_ERROR_INTERNAL_ERROR, "InternalError", "internal-error"},
-+        {GJS_JS_ERROR_RANGE_ERROR, "RangeError", "range-error"},
-+        {GJS_JS_ERROR_REFERENCE_ERROR, "ReferenceError", "reference-error"},
-+        {GJS_JS_ERROR_STOP_ITERATION, "StopIteration", "stop-iteration"},
-+        {GJS_JS_ERROR_SYNTAX_ERROR, "SyntaxError", "syntax-error"},
-+        {GJS_JS_ERROR_TYPE_ERROR, "TypeError", "type-error"},
-+        {GJS_JS_ERROR_URI_ERROR, "URIError", "uri-error"},
-+        {0, nullptr, nullptr}};
-+    // Initialization of static local variable guaranteed only once in C++11
-+    static GType g_type_id = g_enum_register_static("GjsJSError", errors);
-     return g_type_id;
- }
--- 
-2.31.1
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0002-meson.build-Do-not-add-dir-installed-tests-when-inst.patch b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0002-meson.build-Do-not-add-dir-installed-tests-when-inst.patch
new file mode 100644
index 0000000..8777d14
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs/0002-meson.build-Do-not-add-dir-installed-tests-when-inst.patch
@@ -0,0 +1,34 @@
+From 6a29818204e647d5fad68ed7ca8cac53d301cae6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Wed, 27 Oct 2021 20:04:02 +0200
+Subject: [PATCH] meson.build: Do not add dir installed-tests when
+ installed_tests is false
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Submitted[https://gitlab.gnome.org/GNOME/gjs/-/merge_requests/690]
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ meson.build | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 6878e2e..edbbf79 100644
+--- a/meson.build
++++ b/meson.build
+@@ -635,7 +635,9 @@ if not get_option('skip_gtk_tests')
+     have_gtk4 = dependency('gtk4', required: false).found()
+ endif
+ 
+-subdir('installed-tests')
++if get_option('installed_tests')
++    subdir('installed-tests')
++endif
+ 
+ # Note: The test program in test/ needs to be ported
+ #       to Windows before we can build it on Windows.
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs_1.58.8.bb b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs_1.58.8.bb
deleted file mode 100644
index 096e277..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs_1.58.8.bb
+++ /dev/null
@@ -1,42 +0,0 @@
-SUMMARY = "Javascript bindings for GNOME"
-LICENSE = "MIT & LGPLv2+"
-LIC_FILES_CHKSUM = " \
-    file://COPYING;md5=beb29cf17fabe736f0639b09ee6e76fa \
-    file://COPYING.LGPL;md5=3bf50002aefd002f49e7bb854063f7e7 \
-"
-
-GNOMEBASEBUILDCLASS = "autotools"
-
-DEPENDS = "mozjs gtk+3"
-
-inherit gnomebase gsettings gobject-introspection vala gettext features_check upstream-version-is-even pkgconfig
-
-SRC_URI[archive.sha256sum] = "7fb3eb746c17363d9ee47f4a5d0bb048f0075611763eb0da11d85e0e57aff381"
-SRC_URI += "file://0001-Disable-tests-on-host.patch \
-            file://0001-maint-Avoid-g_once_init_enter-error-in-GCC-11.patch \
-"
-
-# gobject-introspection is mandatory and cannot be configured
-REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
-UNKNOWN_CONFIGURE_WHITELIST:append = " --enable-introspection --disable-introspection"
-
-EXTRA_OECONF = " \
-    --without-dbus-tests \
-    --disable-installed-tests \
-"
-
-do_configure:prepend() {
-    # make configure find gobject-introspection test code. Although we set
-    # --disable-installed-tests gjs builds them
-    sed -i 's|:$GI_DATADIR|:${STAGING_DIR_NATIVE}$GI_DATADIR|g' ${S}/configure.ac
-}
-
-FILES:${PN} += "${datadir}/gjs-1.0/lsan"
-
-PACKAGES =+ "${PN}-valgrind"
-FILES:${PN}-valgrind = "${datadir}/gjs-1.0/valgrind"
-RDEPENDS:${PN}-valgrind += "valgrind"
-
-# Valgrind not yet available on rv32/rv64
-RDEPENDS:${PN}-valgrind:remove:riscv32 = "valgrind"
-RDEPENDS:${PN}-valgrind:remove:riscv64 = "valgrind"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs_1.70.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs_1.70.0.bb
new file mode 100644
index 0000000..af4d7f6
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gjs/gjs_1.70.0.bb
@@ -0,0 +1,39 @@
+SUMMARY = "Javascript bindings for GNOME"
+LICENSE = "MIT & LGPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8dcea832f6acf45d856abfeb2d51ec48"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+DEPENDS = "mozjs-78 gtk4"
+
+inherit gnomebase gsettings gobject-introspection vala gettext features_check upstream-version-is-even pkgconfig
+
+SRC_URI[archive.sha256sum] = "4b0629341a318a02374e113ab97f9a9f3325423269fc1e0b043a5ffb01861c5f"
+SRC_URI += " \
+    file://0001-Support-cross-builds-a-bit-better.patch \
+    file://0002-meson.build-Do-not-add-dir-installed-tests-when-inst.patch \
+"
+
+# gobject-introspection is mandatory and cannot be configured
+REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
+GIR_MESON_OPTION = ""
+
+EXTRA_OEMESON = " \
+    -Dinstalled_tests=false \
+    -Dskip_dbus_tests=true \
+"
+
+LDFLAGS:append:mipsarch = " -latomic"
+LDFLAGS:append:powerpc = " -latomic"
+LDFLAGS:append:powerpc64 = " -latomic"
+LDFLAGS:append:riscv32 = " -latomic"
+
+FILES:${PN} += "${datadir}/gjs-1.0/lsan"
+
+PACKAGES =+ "${PN}-valgrind"
+FILES:${PN}-valgrind = "${datadir}/gjs-1.0/valgrind"
+RDEPENDS:${PN}-valgrind += "valgrind"
+
+# Valgrind not yet available on rv32/rv64
+RDEPENDS:${PN}-valgrind:remove:riscv32 = "valgrind"
+RDEPENDS:${PN}-valgrind:remove:riscv64 = "valgrind"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.3.3.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.3.3.bb
deleted file mode 100644
index 3e7b254..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.3.3.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "GNOME archive library"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
-
-DEPENDS = " \
-    gtk+3 \
-    libarchive \
-"
-
-inherit gnomebase gobject-introspection gtk-doc vala
-
-SRC_URI[archive.sha256sum] = "272400f73a375a7e88fdf1e12591bfb8f3f03edf01780cadcd74f70b613e5c04"
-
-do_compile:prepend() {
-    export GIR_EXTRA_LIBS_PATH="${B}/gnome-autoar/.libs"
-}
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.4.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.4.2.bb
new file mode 100644
index 0000000..24e7760
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.4.2.bb
@@ -0,0 +1,21 @@
+SUMMARY = "GNOME archive library"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS = " \
+    gtk+3 \
+    libarchive \
+"
+
+GNOMEBASEBUILDCLASS = "meson"
+GIR_MESON_ENABLE_FLAG = 'enabled'
+GIR_MESON_DISABLE_FLAG = 'disabled'
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+inherit gnomebase gobject-introspection gtk-doc vala
+
+SRC_URI[archive.sha256sum] = "1d20694079300e12feabdb77304a969d1cc190d1d12a949be845cad01c78a5d3"
+
+do_compile:prepend() {
+    export GIR_EXTRA_LIBS_PATH="${B}/gnome-autoar/.libs"
+}
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_3.38.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_3.38.0.bb
deleted file mode 100644
index aa49012..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_3.38.0.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "GNOME wallpapers"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=75859989545e37968a99b631ef42722e"
-
-SECTION = "x11/gnome"
-
-GNOMEBASEBUILDCLASS = "meson"
-
-inherit gnomebase allarch gettext upstream-version-is-even allarch
-
-SRC_URI[archive.sha256sum] = "f7712a873a80c9a9fcf3952611effeb2d9aed23a3e8abfcda8afb15c427d1ee3"
-
-FILES:${PN} += " \
-    ${datadir}/backgrounds \
-    ${datadir}/gnome-background-properties \
-"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_41.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_41.0.bb
new file mode 100644
index 0000000..289cc9e
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_41.0.bb
@@ -0,0 +1,21 @@
+SUMMARY = "GNOME wallpapers"
+LICENSE = "GPL-2.0-only & CC-BY-2.0 & CC-BY-SA-2.0 & CC-BY-SA-3.0"
+LIC_FILES_CHKSUM = " \
+    file://COPYING;md5=75859989545e37968a99b631ef42722e \
+    file://COPYING_CCBY2;md5=effd72660912b727dfa9722cb295d7be \
+    file://COPYING_CCBYSA2;md5=4737b7833b3212fdf30257f056ef3e64 \
+    file://COPYING_CCBYSA3;md5=b52fb0a6df395efb7047cb6fc56bfd7e \
+"
+
+SECTION = "x11/gnome"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+inherit gnomebase gettext allarch
+
+SRC_URI[archive.sha256sum] = "1da1ac0d261bedf0fcd2c85b480bc65505e23cf51f1143126c0d37717e693145"
+
+FILES:${PN} += " \
+    ${datadir}/backgrounds \
+    ${datadir}/gnome-background-properties \
+"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth/0001-build-Fix-build-for-newer-versions-of-meson.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth/0001-build-Fix-build-for-newer-versions-of-meson.patch
new file mode 100644
index 0000000..16c87b6
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth/0001-build-Fix-build-for-newer-versions-of-meson.patch
@@ -0,0 +1,25 @@
+From 7355664f671bec7852e3c4523d75c27fc77a2eb2 Mon Sep 17 00:00:00 2001
+From: Bastien Nocera <hadess@hadess.net>
+Date: Fri, 7 Jan 2022 12:51:22 +0100
+Subject: [PATCH] build: Fix build for newer versions of meson
+
+sendto/meson.build:24:5: ERROR: Function does not take positional arguments.
+
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ sendto/meson.build | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/sendto/meson.build b/sendto/meson.build
+index 24a4e39..3e233a0 100644
+--- a/sendto/meson.build
++++ b/sendto/meson.build
+@@ -22,7 +22,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file (
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_3.34.5.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_3.34.5.bb
index e3806f6..8eed262 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_3.34.5.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_3.34.5.bb
@@ -18,6 +18,7 @@
 # gtk-icon-cache bbclass will take care of this for us.
 EXTRA_OEMESON = "-Dicon_update=false"
 
+SRC_URI += " file://0001-build-Fix-build-for-newer-versions-of-meson.patch"
 SRC_URI[archive.md5sum] = "d83faa54abaf64bb40b5313bc233e74e"
 SRC_URI[archive.sha256sum] = "6c949e52c8becc2054daacd604901f66ce5cf709a5fa91c4bb7cacc939b53ea9"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-calculator/gnome-calculator_40.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-calculator/gnome-calculator_41.1.bb
similarity index 87%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-calculator/gnome-calculator_40.1.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-calculator/gnome-calculator_41.1.bb
index 8c0183c..f4aba65 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-calculator/gnome-calculator_40.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-calculator/gnome-calculator_41.1.bb
@@ -27,7 +27,7 @@
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[archive.sha256sum] = "7fe6c561f7b1f485ac106219772e45cc135c983bfa4278dd2d3fd83b57ff6af6"
+SRC_URI[archive.sha256sum] = "0267614afdb25d38b78411b42ebab7bc50c1b6340cc49bb68c0e432d7ddf8a34"
 
 FILES:${PN} += " \
     ${datadir}/dbus-1 \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar/0001-meson.build-fix-meson-0.61-builds.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar/0001-meson.build-fix-meson-0.61-builds.patch
new file mode 100644
index 0000000..8ec980b
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar/0001-meson.build-fix-meson-0.61-builds.patch
@@ -0,0 +1,23 @@
+From 7060aa63abbb64e7c6cbacc167d5f939d2a77e41 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex@linutronix.de>
+Date: Fri, 21 Jan 2022 21:18:39 +0100
+Subject: [PATCH] meson.build: fix meson 0.61 builds
+
+Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/198]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ data/appdata/meson.build | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/data/appdata/meson.build b/data/appdata/meson.build
+index b5ee6540..200c3507 100644
+--- a/data/appdata/meson.build
++++ b/data/appdata/meson.build
+@@ -1,7 +1,6 @@
+ appdata_conf = configuration_data()
+ appdata_conf.set('appid', application_id)
+ appdata = i18n.merge_file(
+-  'appdata',
+   input: configure_file(
+     input: files('org.gnome.Calendar.appdata.xml.in.in'),
+     output: 'org.gnome.Calendar.appdata.xml.in',
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar_41.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar_41.2.bb
similarity index 78%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar_41.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar_41.2.bb
index 4b9b14a..4b62a0c 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar_41.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar_41.2.bb
@@ -22,7 +22,8 @@
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[archive.sha256sum] = "73ac923c6618bd0957d6b7c012a00a47bff67ee934249358817433772ceb193f"
+SRC_URI += " file://0001-meson.build-fix-meson-0.61-builds.patch"
+SRC_URI[archive.sha256sum] = "956b2f190322651c67fe667223896f8aa5acf33b70ada5a3b05a5361bda6611a"
 
 FILES:${PN} += " \
     ${datadir}/gnome-shell \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center/0001-meson-drop-unused-argument-for-i18n.merge_file.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center/0001-meson-drop-unused-argument-for-i18n.merge_file.patch
new file mode 100644
index 0000000..7a1180e
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center/0001-meson-drop-unused-argument-for-i18n.merge_file.patch
@@ -0,0 +1,504 @@
+From 90715329c277f21537eb5af86d8f222c4a2abd24 Mon Sep 17 00:00:00 2001
+From: Jan Beich <jbeich@FreeBSD.org>
+Date: Fri, 7 Jan 2022 01:53:52 +0000
+Subject: [PATCH] meson: drop unused argument for i18n.merge_file()
+
+Ignored in Meson < 0.60.0, deprecated since 0.60.1 and fatal since 0.61.0.
+
+panels/applications/meson.build:10:5: ERROR: Function does not take positional arguments.
+panels/background/meson.build:10:5: ERROR: Function does not take positional arguments.
+panels/camera/meson.build:10:5: ERROR: Function does not take positional arguments.
+[...]
+
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ panels/applications/meson.build                   | 1 -
+ panels/background/meson.build                     | 1 -
+ panels/bluetooth/meson.build                      | 1 -
+ panels/camera/meson.build                         | 1 -
+ panels/color/meson.build                          | 1 -
+ panels/datetime/meson.build                       | 2 --
+ panels/default-apps/meson.build                   | 1 -
+ panels/diagnostics/meson.build                    | 1 -
+ panels/display/meson.build                        | 1 -
+ panels/info-overview/meson.build                  | 1 -
+ panels/keyboard/meson.build                       | 2 --
+ panels/location/meson.build                       | 1 -
+ panels/lock/meson.build                           | 1 -
+ panels/microphone/meson.build                     | 1 -
+ panels/mouse/meson.build                          | 1 -
+ panels/multitasking/meson.build                   | 1 -
+ panels/network/meson.build                        | 1 -
+ panels/notifications/meson.build                  | 1 -
+ panels/online-accounts/meson.build                | 1 -
+ panels/power/meson.build                          | 1 -
+ panels/printers/meson.build                       | 1 -
+ panels/region/meson.build                         | 1 -
+ panels/removable-media/meson.build                | 1 -
+ panels/search/meson.build                         | 1 -
+ panels/sharing/meson.build                        | 2 --
+ panels/sound/meson.build                          | 1 -
+ panels/thunderbolt/meson.build                    | 1 -
+ panels/universal-access/meson.build               | 1 -
+ panels/usage/meson.build                          | 1 -
+ panels/user-accounts/meson.build                  | 2 --
+ panels/wacom/meson.build                          | 1 -
+ panels/wwan/meson.build                           | 1 -
+ shell/appdata/meson.build                         | 1 -
+ shell/meson.build                                 | 1 -
+ tests/interactive-panels/applications/meson.build | 1 -
+ 35 files changed, 39 deletions(-)
+
+diff --git a/panels/applications/meson.build b/panels/applications/meson.build
+index d511bf6..bd4fd64 100644
+--- a/panels/applications/meson.build
++++ b/panels/applications/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-       desktop,
+          type : 'desktop',
+         input : desktop_in,
+        output : desktop,
+diff --git a/panels/background/meson.build b/panels/background/meson.build
+index 730cf54..1f231b9 100644
+--- a/panels/background/meson.build
++++ b/panels/background/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/bluetooth/meson.build b/panels/bluetooth/meson.build
+index c3fce74..4bed812 100644
+--- a/panels/bluetooth/meson.build
++++ b/panels/bluetooth/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/camera/meson.build b/panels/camera/meson.build
+index 4f26118..bf2e727 100644
+--- a/panels/camera/meson.build
++++ b/panels/camera/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/color/meson.build b/panels/color/meson.build
+index 742caf6..bb038cd 100644
+--- a/panels/color/meson.build
++++ b/panels/color/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/datetime/meson.build b/panels/datetime/meson.build
+index 6568394..9bbdc7c 100644
+--- a/panels/datetime/meson.build
++++ b/panels/datetime/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+@@ -20,7 +19,6 @@ i18n.merge_file(
+ polkit = 'org.gnome.controlcenter.@0@.policy'.format(cappletname)
+ 
+ i18n.merge_file(
+-  polkit,
+   input: polkit + '.in',
+   output: polkit,
+   po_dir: po_dir,
+diff --git a/panels/default-apps/meson.build b/panels/default-apps/meson.build
+index 6855006..2a24321 100644
+--- a/panels/default-apps/meson.build
++++ b/panels/default-apps/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/diagnostics/meson.build b/panels/diagnostics/meson.build
+index fac9b4c..2f25c21 100644
+--- a/panels/diagnostics/meson.build
++++ b/panels/diagnostics/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/display/meson.build b/panels/display/meson.build
+index 12f35cc..57bdfcf 100644
+--- a/panels/display/meson.build
++++ b/panels/display/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/info-overview/meson.build b/panels/info-overview/meson.build
+index 2fe10b3..aa81c48 100644
+--- a/panels/info-overview/meson.build
++++ b/panels/info-overview/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/keyboard/meson.build b/panels/keyboard/meson.build
+index a2ae026..ae71c94 100644
+--- a/panels/keyboard/meson.build
++++ b/panels/keyboard/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+@@ -45,7 +44,6 @@ xml_files = [
+ 
+ foreach file: xml_files
+   i18n.merge_file(
+-    file,
+     input: file + '.in',
+     output: file,
+     po_dir: po_dir,
+diff --git a/panels/location/meson.build b/panels/location/meson.build
+index bfc6e82..f4c835d 100644
+--- a/panels/location/meson.build
++++ b/panels/location/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/lock/meson.build b/panels/lock/meson.build
+index 0661af4..18dbfb2 100644
+--- a/panels/lock/meson.build
++++ b/panels/lock/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/microphone/meson.build b/panels/microphone/meson.build
+index e0847a4..bc7f73a 100644
+--- a/panels/microphone/meson.build
++++ b/panels/microphone/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/mouse/meson.build b/panels/mouse/meson.build
+index 357aaae..7b46097 100644
+--- a/panels/mouse/meson.build
++++ b/panels/mouse/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/multitasking/meson.build b/panels/multitasking/meson.build
+index 772b638..53fd0d8 100644
+--- a/panels/multitasking/meson.build
++++ b/panels/multitasking/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/network/meson.build b/panels/network/meson.build
+index d7cd6e4..43a5690 100644
+--- a/panels/network/meson.build
++++ b/panels/network/meson.build
+@@ -25,7 +25,6 @@ foreach name: panel_names
+   )
+ 
+   i18n.merge_file(
+-    desktop,
+     type: 'desktop',
+     input: desktop_in,
+     output: desktop,
+diff --git a/panels/notifications/meson.build b/panels/notifications/meson.build
+index df70261..1b04b24 100644
+--- a/panels/notifications/meson.build
++++ b/panels/notifications/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/online-accounts/meson.build b/panels/online-accounts/meson.build
+index 82f1d56..6870977 100644
+--- a/panels/online-accounts/meson.build
++++ b/panels/online-accounts/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/power/meson.build b/panels/power/meson.build
+index 0e3ea1d..1cafe2a 100644
+--- a/panels/power/meson.build
++++ b/panels/power/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/printers/meson.build b/panels/printers/meson.build
+index ccce64c..042c67a 100644
+--- a/panels/printers/meson.build
++++ b/panels/printers/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/region/meson.build b/panels/region/meson.build
+index 68b7f00..27bc5ff 100644
+--- a/panels/region/meson.build
++++ b/panels/region/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/removable-media/meson.build b/panels/removable-media/meson.build
+index b51799a..fc07c48 100644
+--- a/panels/removable-media/meson.build
++++ b/panels/removable-media/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/search/meson.build b/panels/search/meson.build
+index 39b076b..a4dd79d 100644
+--- a/panels/search/meson.build
++++ b/panels/search/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/sharing/meson.build b/panels/sharing/meson.build
+index b3803bc..49dbb06 100644
+--- a/panels/sharing/meson.build
++++ b/panels/sharing/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+@@ -29,7 +28,6 @@ polkit_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  polkit,
+   input: polkit_in,
+   output: polkit,
+   po_dir: po_dir,
+diff --git a/panels/sound/meson.build b/panels/sound/meson.build
+index fa0f128..18f75dd 100644
+--- a/panels/sound/meson.build
++++ b/panels/sound/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/thunderbolt/meson.build b/panels/thunderbolt/meson.build
+index 53aa9b4..38ef294 100644
+--- a/panels/thunderbolt/meson.build
++++ b/panels/thunderbolt/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/universal-access/meson.build b/panels/universal-access/meson.build
+index 5e225fe..d845e70 100644
+--- a/panels/universal-access/meson.build
++++ b/panels/universal-access/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/usage/meson.build b/panels/usage/meson.build
+index 74f720e..6047ce0 100644
+--- a/panels/usage/meson.build
++++ b/panels/usage/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+diff --git a/panels/user-accounts/meson.build b/panels/user-accounts/meson.build
+index b8ee9d9..fa56aae 100644
+--- a/panels/user-accounts/meson.build
++++ b/panels/user-accounts/meson.build
+@@ -8,7 +8,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
+@@ -85,7 +84,6 @@ meson.add_install_script('sh', '-c',
+ polkit = 'org.gnome.controlcenter.@0@.policy'.format(cappletname)
+ 
+ i18n.merge_file(
+-  polkit,
+   input: polkit + '.in',
+   output: polkit,
+   po_dir: po_dir,
+diff --git a/panels/wacom/meson.build b/panels/wacom/meson.build
+index 5f62220..88a9137 100644
+--- a/panels/wacom/meson.build
++++ b/panels/wacom/meson.build
+@@ -30,7 +30,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-       desktop,
+          type : 'desktop',
+         input : desktop_in,
+        output : desktop,
+diff --git a/panels/wwan/meson.build b/panels/wwan/meson.build
+index 8c1b02f..2ab238a 100644
+--- a/panels/wwan/meson.build
++++ b/panels/wwan/meson.build
+@@ -11,7 +11,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-       desktop,
+          type : 'desktop',
+         input : desktop_in,
+        output : desktop,
+diff --git a/shell/appdata/meson.build b/shell/appdata/meson.build
+index 3b36171..fdb8279 100644
+--- a/shell/appdata/meson.build
++++ b/shell/appdata/meson.build
+@@ -1,7 +1,6 @@
+ appdata = 'gnome-control-center.appdata.xml'
+ 
+ i18n.merge_file(
+-  appdata,
+   input: appdata + '.in',
+   output: appdata,
+   po_dir: po_dir,
+diff --git a/shell/meson.build b/shell/meson.build
+index 89b9659..4667804 100644
+--- a/shell/meson.build
++++ b/shell/meson.build
+@@ -23,7 +23,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-       desktop,
+          type : 'desktop',
+         input : desktop_in,
+        output : desktop,
+diff --git a/tests/interactive-panels/applications/meson.build b/tests/interactive-panels/applications/meson.build
+index 2657f95..82eed4d 100644
+--- a/tests/interactive-panels/applications/meson.build
++++ b/tests/interactive-panels/applications/meson.build
+@@ -12,7 +12,6 @@ desktop_files = [
+ 
+ foreach desktop_file : desktop_files
+   i18n.merge_file(
+-              desktop,
+                 type : 'desktop',
+                input : 'gtp-@0@.desktop.in'.format(desktop_file),
+               output : 'gnome-@0@-panel.desktop'.format(desktop_file),
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_3.36.4.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_41.2.bb
similarity index 74%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_3.36.4.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_41.2.bb
index f080077..f2b95ed 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_3.36.4.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_41.2.bb
@@ -18,7 +18,7 @@
     samba \
     gsettings-desktop-schemas \
     gnome-settings-daemon \
-    gnome-desktop3 \
+    gnome-desktop \
     gnome-online-accounts \
     libnma \
     gnome-bluetooth \
@@ -26,13 +26,14 @@
     libgtop \
     gsound \
     libpwquality \
+    libhandy \
 "
 
 REQUIRED_DISTRO_FEATURES += "polkit pulseaudio systemd x11"
 
-SRC_URI[archive.md5sum] = "16c228d7de4e9d2d57550791fbca3390"
-SRC_URI[archive.sha256sum] = "ac02346bcf3391aa5c86ed857d76689fdb6e43c2b4b20d3ec6eab0ea9fecf754"
+SRC_URI[archive.sha256sum] = "8271fc6b33ec2418a578304dd3e57d665f0d7cc706a99a97be419848618fe248"
 SRC_URI += "file://0001-Add-meson-option-to-pass-sysroot.patch"
+SRC_URI += "  file://0001-meson-drop-unused-argument-for-i18n.merge_file.patch"
 
 PACKAGECONFIG ??= "ibus ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)}"
 PACKAGECONFIG[ibus] = "-Dibus=true, -Dibus=false, ibus"
@@ -44,6 +45,14 @@
     -Dcheese=false \
 "
 
+do_install:append() {
+	# If polkit is setup fixup permissions and ownership
+    if [ -d ${D}${datadir}/polkit-1/rules.d ]; then
+        chmod 700 ${D}${datadir}/polkit-1/rules.d
+        chown polkitd:root ${D}${datadir}/polkit-1/rules.d
+    fi
+}
+
 FILES:${PN} += " \
     ${datadir}/dbus-1 \
     ${datadir}/gnome-shell \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop/0001-meson.build-Disable-libseccomp-for-all-archs.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop/0001-meson.build-Disable-libseccomp-for-all-archs.patch
index 4b3894f..99cf458 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop/0001-meson.build-Disable-libseccomp-for-all-archs.patch
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop/0001-meson.build-Disable-libseccomp-for-all-archs.patch
@@ -18,14 +18,14 @@
  1 file changed, 1 insertion(+), 6 deletions(-)
 
 diff --git a/meson.build b/meson.build
-index 2e7160d..f83677d 100644
+index cceefe0..df3fdd9 100644
 --- a/meson.build
 +++ b/meson.build
-@@ -58,12 +58,7 @@ udev_dep = dependency('libudev', required: get_option('udev'))
+@@ -59,12 +59,7 @@ udev_dep = dependency('libudev', required: get_option('udev'))
  host_os = host_machine.system()
  host_cpu = host_machine.cpu()
  supported_os = ['linux']
--unsupported_cpus = ['alpha', 'ia64', 'm68k', 'riscv64', 'sh4', 'sparc', 'sparc64']
+-unsupported_cpus = ['alpha', 'ia64', 'm68k', 'sh4', 'sparc', 'sparc64']
 -if supported_os.contains(host_os) and not unsupported_cpus.contains(host_cpu)
 -  seccomp_dep = dependency('libseccomp')
 -else
@@ -36,5 +36,5 @@
  
  xkb_base = xkb_config_dep.get_pkgconfig_variable('xkb_base')
 -- 
-2.20.1
+2.31.1
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.38.8.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.38.8.bb
deleted file mode 100644
index 61de652..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.38.8.bb
+++ /dev/null
@@ -1,37 +0,0 @@
-SUMMARY = "GNOME library for reading .desktop files"
-SECTION = "x11/gnome"
-LICENSE = "GPLv2 & LGPLv2"
-LIC_FILES_CHKSUM = " \
-    file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
-    file://COPYING.LIB;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
-"
-
-BPN = "gnome-desktop"
-
-GNOMEBASEBUILDCLASS = "meson"
-
-inherit gnomebase itstool pkgconfig upstream-version-is-even gobject-introspection features_check
-
-# gobject-introspection is mandatory and cannot be configured
-REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
-UNKNOWN_CONFIGURE_WHITELIST:append = " introspection"
-
-SRC_URI[archive.sha256sum] = "04dc3b37c2b7d98df972670ac2a5a33ec7dc278e6814c3d23d099ae6789dcae8"
-
-SRC_URI += " \
-    file://gnome-desktop-thumbnail-don-t-assume-time_t-is-long.patch \
-    file://0001-meson.build-Disable-libseccomp-for-all-archs.patch \
-"
-
-DEPENDS += "gsettings-desktop-schemas virtual/libx11 gtk+3 startup-notification xkeyboard-config iso-codes udev"
-
-inherit features_check gtk-doc
-REQUIRED_DISTRO_FEATURES += "x11"
-
-GTKDOC_MESON_OPTION = "gtk_doc"
-EXTRA_OEMESON = "-Ddesktop_docs=false"
-
-PACKAGES =+ "libgnome-desktop3"
-FILES:libgnome-desktop3 = "${libdir}/lib*${SOLIBS} ${datadir}/libgnome-desktop*/pnp.ids ${datadir}/gnome/*xml"
-
-RRECOMMENDS:libgnome-desktop3 += "gsettings-desktop-schemas"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_41.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_41.2.bb
new file mode 100644
index 0000000..3085d27
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_41.2.bb
@@ -0,0 +1,38 @@
+SUMMARY = "GNOME library for reading .desktop files"
+SECTION = "x11/gnome"
+LICENSE = "GPLv2 & LGPLv2"
+LIC_FILES_CHKSUM = " \
+    file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+    file://COPYING.LIB;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
+"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+inherit gnomebase itstool pkgconfig upstream-version-is-even gobject-introspection features_check gtk-doc
+
+REQUIRED_DISTRO_FEATURES = "x11"
+# gobject-introspection is mandatory and cannot be configured
+REQUIRED_DISTRO_FEATURES += "gobject-introspection-data"
+
+GIR_MESON_OPTION = ""
+
+SRC_URI[archive.sha256sum] = "34329eefdacad2332a6adbae538c8da6e52235c7775a908b7c32040a0753ec6a"
+SRC_URI += " \
+    file://gnome-desktop-thumbnail-don-t-assume-time_t-is-long.patch \
+    file://0001-meson.build-Disable-libseccomp-for-all-archs.patch \
+"
+
+DEPENDS += "gsettings-desktop-schemas virtual/libx11 gtk+3 startup-notification xkeyboard-config iso-codes udev"
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+EXTRA_OEMESON = "-Ddesktop_docs=false"
+
+PACKAGES =+ "libgnome-desktop"
+RDEPENDS:${PN} += "libgnome-desktop"
+FILES:libgnome-desktop = " \
+    ${libdir}/lib*${SOLIBS} \
+    ${datadir}/libgnome-desktop*/pnp.ids \
+    ${datadir}/gnome/*xml \
+"
+
+RRECOMMENDS:libgnome-desktop += "gsettings-desktop-schemas"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0001-build-fix-arguments-of-i18n.merge_file.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0001-build-fix-arguments-of-i18n.merge_file.patch
new file mode 100644
index 0000000..2758af5
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0001-build-fix-arguments-of-i18n.merge_file.patch
@@ -0,0 +1,34 @@
+From 629ca0e61bb59303d43d7eac44a47ae866cc78f0 Mon Sep 17 00:00:00 2001
+From: rvalue <i@rvalue.moe>
+Date: Fri, 17 Dec 2021 12:29:30 +0000
+Subject: [PATCH] build: fix arguments of i18n.merge_file
+
+`i18n.merge_file` has been ignoring positional arguments for a time
+and explicitly rejects with error since meson 0.60.0
+
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ data/meson.build | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/data/meson.build b/data/meson.build
+index e38a1d8..38fb520 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -11,7 +11,6 @@ desktops = [
+ 
+ foreach desktop: desktops
+   i18n.merge_file (
+-    desktop,
+     type: 'desktop',
+     input: desktop + '.in',
+     output: desktop,
+@@ -38,7 +37,6 @@ install_data(
+ info = 'org.gnome.DiskUtility.appdata.xml'
+ 
+ i18n.merge_file(
+-  info,
+   input: info + '.in',
+   output: info,
+   po_dir: po_dir,
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_40.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_41.0.bb
similarity index 81%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_40.1.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_41.0.bb
index 883e1c1..7e254f5 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_40.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_41.0.bb
@@ -26,7 +26,8 @@
 # As soon as elogind is of interest this needs rework: meson option is combo
 PACKAGECONFIG[systemd] = "-Dlogind=libsystemd,-Dlogind=none,systemd"
 
-SRC_URI[archive.sha256sum] = "2a4b99ac11ca23394b28c5584b9e96284e8c5a4da65cf06207de54f42b1ff141"
+SRC_URI += " file://0001-build-fix-arguments-of-i18n.merge_file.patch"
+SRC_URI[archive.sha256sum] = "8743c98fd656062ef862933efe30c5be4c6b322ec02eee154ec70d08ed0895df"
 
 FILES:${PN} += " \
     ${datadir}/metainfo \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-flashback/gnome-flashback_3.40.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-flashback/gnome-flashback_3.42.1.bb
similarity index 86%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-flashback/gnome-flashback_3.40.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-flashback/gnome-flashback_3.42.1.bb
index 9c599bb..3f47de6 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-flashback/gnome-flashback_3.40.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-flashback/gnome-flashback_3.42.1.bb
@@ -13,12 +13,12 @@
     polkit \
     metacity \
     gdm \
-    gnome-desktop3 \
+    gnome-desktop \
     gnome-bluetooth \
     gnome-panel \
 "
 
-SRC_URI[archive.sha256sum] = "e03f33100f1982019c2e59bbdcd664549ec5caa0ef2d99e2c0e1272cea08bb3b"
+SRC_URI[archive.sha256sum] = "c8029220acf268c520dbb0750834b2ef4df868324d0e0fb6a80354c80ba8844e"
 
 do_install:append() {
     # no oe-layer has compiz -> remove dead session
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer/0001-Fix-meson-build-with-meson-0.60.0.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer/0001-Fix-meson-build-with-meson-0.60.0.patch
new file mode 100644
index 0000000..f32e120
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer/0001-Fix-meson-build-with-meson-0.60.0.patch
@@ -0,0 +1,40 @@
+From 9c5ce6836498fdb057a7f865f516ce28609f542a Mon Sep 17 00:00:00 2001
+From: r-value <i@rvalue.moe>
+Date: Thu, 30 Dec 2021 17:14:47 +0800
+Subject: [PATCH] Fix meson build with meson 0.60.0+
+
+`i18n.merge_file` has been ignoring positional arguments for a time
+and explicitly rejects with error since meson 0.60.0
+
+Upstrean-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ data/meson.build | 2 +-
+ src/meson.build  | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/data/meson.build b/data/meson.build
+index bfc9caa..8e42134 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -1,6 +1,6 @@
+ appdatadir = join_paths(datadir, 'metainfo')
+ appdata_file = 'org.gnome.font-viewer.appdata.xml'
+-merged_appdata = i18n.merge_file(appdata_file,
++merged_appdata = i18n.merge_file(
+   input: appdata_file + '.in',
+   output: appdata_file,
+   po_dir: '../po',
+diff --git a/src/meson.build b/src/meson.build
+index f863d45..826c59b 100644
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -39,7 +39,7 @@ desktop_file = 'org.gnome.font-viewer.desktop'
+ desktop_conf = configuration_data()
+ desktop_conf.set('VERSION', meson.project_version())
+ desktop_conf.set('APPLICATION_ID', application_id)
+-i18n.merge_file(desktop_file,
++i18n.merge_file(
+   input: configure_file(input: desktop_file + '.in.in',
+     output: desktop_file + '.in',
+     configuration: desktop_conf),
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_40.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_41.0.bb
similarity index 69%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_40.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_41.0.bb
index d8e6195..9528b66 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_40.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_41.0.bb
@@ -6,7 +6,7 @@
 
 DEPENDS = " \
     gtk+3 \
-    gnome-desktop3 \
+    gnome-desktop \
     libhandy \
 "
 
@@ -16,7 +16,8 @@
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[archive.sha256sum] = "d2cc7686946690dc274a5d0c72841d358d0ccd42d3f34993c698bdf13588fe42"
+SRC_URI += " file://0001-Fix-meson-build-with-meson-0.60.0.patch"
+SRC_URI[archive.sha256sum] = "5dd410331be070e4e034397f2754980e073851d50a2119f2fbf96adc6fe2e876"
 
 FILES:${PN} += " \
     ${datadir}/dbus-1 \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-menus/gnome-menus3_3.36.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-menus/gnome-menus_3.36.0.bb
similarity index 96%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-menus/gnome-menus3_3.36.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-menus/gnome-menus_3.36.0.bb
index 2255ff0..c582298 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-menus/gnome-menus3_3.36.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-menus/gnome-menus_3.36.0.bb
@@ -10,8 +10,6 @@
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-BPN = "gnome-menus"
-
 SRC_URI[archive.md5sum] = "a8fd71fcf31a87fc799d80396a526829"
 SRC_URI[archive.sha256sum] = "d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/files/0001-Update-to-rest-1.0.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/files/0001-Update-to-rest-1.0.patch
new file mode 100644
index 0000000..4a47fb2
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/files/0001-Update-to-rest-1.0.patch
@@ -0,0 +1,160 @@
+From 3c4a6eda580c6e38aeedb63d73ae7b96cc7f9a07 Mon Sep 17 00:00:00 2001
+From: Carlos Garcia Campos <cgarcia@igalia.com>
+Date: Mon, 7 Jun 2021 16:31:18 +0200
+Subject: [PATCH] Update to rest 1.0
+
+Updates to use the rest 1.0 API
+
+Upstream-Status: Inappropriate [rest 1.0 is not released yet]
+
+Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
+---
+ configure.ac                       |  2 +-
+ src/goabackend/goalastfmprovider.c | 26 +++++++++++++-------------
+ src/goabackend/goaoauthprovider.c  | 17 +++++++++++------
+ src/goabackend/goarestproxy.h      |  2 --
+ 4 files changed, 25 insertions(+), 22 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 1f88bbd..e43303d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -129,7 +129,7 @@ if test "$enable_backend" != "no"; then
+   AC_SUBST(JSON_GLIB_CFLAGS)
+   AC_SUBST(JSON_GLIB_LIBS)
+ 
+-  PKG_CHECK_MODULES(REST, [rest-0.7])
++  PKG_CHECK_MODULES(REST, [rest-1.0])
+   AC_SUBST(REST_CFLAGS)
+   AC_SUBST(REST_LIBS)
+ 
+diff --git a/src/goabackend/goalastfmprovider.c b/src/goabackend/goalastfmprovider.c
+index cb9a6f2..a2db037 100644
+--- a/src/goabackend/goalastfmprovider.c
++++ b/src/goabackend/goalastfmprovider.c
+@@ -483,18 +483,18 @@ add_account_cb (GoaManager *manager, GAsyncResult *res, gpointer user_data)
+ 
+ static void
+ check_cb (RestProxyCall *call,
+-          const GError *error,
+-          GObject *weak_object,
++          GAsyncResult *result,
+           gpointer user_data)
+ {
+   AddAccountData *data = user_data;
+   JsonNode *session;
+-  JsonParser *parser;
++  JsonParser *parser = NULL;
+   JsonObject *json_obj;
+   JsonObject *session_obj;
+   const gchar *payload;
+ 
+-  parser = NULL;
++  if (!rest_proxy_call_invoke_finish (call, result, &data->error))
++    goto out;
+ 
+   parser = json_parser_new ();
+   payload = rest_proxy_call_get_payload (call);
+@@ -562,12 +562,12 @@ on_rest_proxy_call_cancelled_cb (GCancellable *cancellable, RestProxyCall *call)
+ }
+ 
+ static void
+-lastfm_login (GoaProvider                  *provider,
+-              const gchar                  *username,
+-              const gchar                  *password,
+-              GCancellable                 *cancellable,
+-              RestProxyCallAsyncCallback   callback,
+-              gpointer                     user_data)
++lastfm_login (GoaProvider          *provider,
++              const gchar          *username,
++              const gchar          *password,
++              GCancellable         *cancellable,
++              GAsyncReadyCallback   callback,
++              gpointer              user_data)
+ {
+   AddAccountData *data = user_data;
+   RestProxyCall *call;
+@@ -598,7 +598,7 @@ lastfm_login (GoaProvider                  *provider,
+   rest_proxy_call_add_param (call, "api_sig", sig_md5);
+   rest_proxy_call_add_param (call, "format", "json");
+ 
+-  rest_proxy_call_async (call, callback, NULL, data, &data->error);
++  rest_proxy_call_invoke_async (call, NULL, callback, data);
+ 
+   g_signal_connect (cancellable, "cancelled", G_CALLBACK (on_rest_proxy_call_cancelled_cb), call);
+ 
+@@ -665,7 +665,7 @@ add_account (GoaProvider    *provider,
+                 username,
+                 password,
+                 data.cancellable,
+-                (RestProxyCallAsyncCallback) check_cb,
++                (GAsyncReadyCallback) check_cb,
+                 &data);
+ 
+   gtk_widget_set_sensitive (data.connect_button, FALSE);
+@@ -819,7 +819,7 @@ refresh_account (GoaProvider    *provider,
+                 username,
+                 password,
+                 data.cancellable,
+-                (RestProxyCallAsyncCallback) check_cb,
++                (GAsyncReadyCallback) check_cb,
+                 &data);
+   gtk_widget_set_sensitive (data.connect_button, FALSE);
+   gtk_widget_show (data.progress_grid);
+diff --git a/src/goabackend/goaoauthprovider.c b/src/goabackend/goaoauthprovider.c
+index 0bfab6b..6a69251 100644
+--- a/src/goabackend/goaoauthprovider.c
++++ b/src/goabackend/goaoauthprovider.c
+@@ -699,9 +699,15 @@ on_web_view_decide_policy (WebKitWebView            *web_view,
+ }
+ 
+ static void
+-rest_proxy_call_cb (RestProxyCall *call, const GError *error, GObject *weak_object, gpointer user_data)
++rest_proxy_call_cb (GObject *source, GAsyncResult *result, gpointer user_data)
+ {
++  RestProxyCall *call = REST_PROXY_CALL (source);
+   IdentifyData *data = user_data;
++
++  if (!rest_proxy_call_invoke_finish (call, result, &data->error))
++    {
++      g_prefix_error (&data->error, _("Error getting a Request Token: "));
++    }
+   g_main_loop_quit (data->loop);
+ }
+ 
+@@ -768,11 +774,7 @@ get_tokens_and_identity (GoaOAuthProvider *provider,
+       for (n = 0; request_params[n] != NULL; n += 2)
+         rest_proxy_call_add_param (call, request_params[n], request_params[n+1]);
+     }
+-  if (!rest_proxy_call_async (call, rest_proxy_call_cb, NULL, &data, &data.error))
+-    {
+-      g_prefix_error (&data.error, _("Error getting a Request Token: "));
+-      goto out;
+-    }
++  rest_proxy_call_invoke_async (call, NULL, rest_proxy_call_cb, &data);
+ 
+   goa_utils_set_dialog_title (GOA_PROVIDER (provider), dialog, add_account);
+ 
+@@ -794,6 +796,9 @@ get_tokens_and_identity (GoaOAuthProvider *provider,
+   g_main_loop_run (data.loop);
+   gtk_container_remove (GTK_CONTAINER (grid), spinner);
+ 
++  if (data.error)
++    goto out;
++
+   if (rest_proxy_call_get_status_code (call) != 200)
+     {
+       gchar *msg;
+diff --git a/src/goabackend/goarestproxy.h b/src/goabackend/goarestproxy.h
+index 09fb076..4948cb7 100644
+--- a/src/goabackend/goarestproxy.h
++++ b/src/goabackend/goarestproxy.h
+@@ -27,8 +27,6 @@
+ 
+ G_BEGIN_DECLS
+ 
+-G_DEFINE_AUTOPTR_CLEANUP_FUNC (RestProxy, g_object_unref);
+-
+ #define GOA_TYPE_REST_PROXY (goa_rest_proxy_get_type ())
+ G_DECLARE_FINAL_TYPE (GoaRestProxy, goa_rest_proxy, GOA, REST_PROXY, RestProxy);
+ 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/files/0001-Use-GUri-instead-of-SoupURI.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/files/0001-Use-GUri-instead-of-SoupURI.patch
deleted file mode 100644
index 11fc96b..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/files/0001-Use-GUri-instead-of-SoupURI.patch
+++ /dev/null
@@ -1,351 +0,0 @@
-From 5a5abbedb171986dbf6f5a37577ec6afa892b66b Mon Sep 17 00:00:00 2001
-From: Carlos Garcia Campos <cgarcia@igalia.com>
-Date: Mon, 7 Jun 2021 16:31:18 +0200
-Subject: [PATCH 1/2] Use GUri instead of SoupURI
-
-In preparation for libsoup3 where SoupURI has been removed in favor of
-GUri.
-
-Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gnome-online-accounts/-/merge_requests/73]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- configure.ac                         |   2 +-
- src/goabackend/goaoauth2provider.c   |  11 +--
- src/goabackend/goaoauthprovider.c    |   8 +-
- src/goabackend/goaowncloudprovider.c | 107 ++++++++++++++++-----------
- src/goabackend/goawebview.c          |   9 +--
- 5 files changed, 80 insertions(+), 57 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 1f88bbd..7c0b39d 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -90,7 +90,7 @@ GTK_DOC_CHECK([1.3])
- # Libraries
- #
- 
--PKG_CHECK_MODULES(GLIB, [glib-2.0 gio-2.0 gio-unix-2.0 >= 2.52])
-+PKG_CHECK_MODULES(GLIB, [glib-2.0 gio-2.0 gio-unix-2.0 >= 2.67.4])
- AC_SUBST(GLIB_CFLAGS)
- AC_SUBST(GLIB_LIBS)
- 
-diff --git a/src/goabackend/goaoauth2provider.c b/src/goabackend/goaoauth2provider.c
-index 3715431..2757838 100644
---- a/src/goabackend/goaoauth2provider.c
-+++ b/src/goabackend/goaoauth2provider.c
-@@ -763,7 +763,7 @@ on_web_view_decide_policy (WebKitWebView            *web_view,
-   GHashTable *key_value_pairs;
-   WebKitNavigationAction *action;
-   WebKitURIRequest *request;
--  SoupURI *uri;
-+  GUri *uri;
-   const gchar *fragment;
-   const gchar *oauth2_error;
-   const gchar *query;
-@@ -793,9 +793,9 @@ on_web_view_decide_policy (WebKitWebView            *web_view,
-   if (!g_str_has_prefix (requested_uri, redirect_uri))
-     goto default_behaviour;
- 
--  uri = soup_uri_new (requested_uri);
--  fragment = soup_uri_get_fragment (uri);
--  query = soup_uri_get_query (uri);
-+  uri = g_uri_parse (requested_uri, G_URI_FLAGS_ENCODED, NULL);
-+  fragment = g_uri_get_fragment (uri);
-+  query = g_uri_get_query (uri);
- 
-   /* Three cases:
-    * 1) we can either have the backend handle the URI for us, or
-@@ -808,7 +808,7 @@ on_web_view_decide_policy (WebKitWebView            *web_view,
-     {
-       gchar *url;
- 
--      url = soup_uri_to_string (uri, FALSE);
-+      url = g_uri_to_string (uri);
-       if (!goa_oauth2_provider_process_redirect_url (self, url, &priv->access_token, &priv->error))
-         {
-           g_prefix_error (&priv->error, _("Authorization response: "));
-@@ -889,6 +889,7 @@ on_web_view_decide_policy (WebKitWebView            *web_view,
-   goto ignore_request;
- 
-  ignore_request:
-+  g_uri_unref (uri);
-   g_assert (response_id != GTK_RESPONSE_NONE);
-   if (response_id < 0)
-     gtk_dialog_response (priv->dialog, response_id);
-diff --git a/src/goabackend/goaoauthprovider.c b/src/goabackend/goaoauthprovider.c
-index 0bfab6b..ff0927e 100644
---- a/src/goabackend/goaoauthprovider.c
-+++ b/src/goabackend/goaoauthprovider.c
-@@ -643,7 +643,7 @@ on_web_view_decide_policy (WebKitWebView            *web_view,
- {
-   GHashTable *key_value_pairs;
-   IdentifyData *data = user_data;
--  SoupURI *uri;
-+  GUri *uri;
-   WebKitNavigationAction *action;
-   WebKitURIRequest *request;
-   const gchar *query;
-@@ -664,8 +664,8 @@ on_web_view_decide_policy (WebKitWebView            *web_view,
-   if (!g_str_has_prefix (requested_uri, redirect_uri))
-     goto default_behaviour;
- 
--  uri = soup_uri_new (requested_uri);
--  query = soup_uri_get_query (uri);
-+  uri = g_uri_parse (requested_uri, G_URI_FLAGS_ENCODED, NULL);
-+  query = g_uri_get_query (uri);
- 
-   if (query != NULL)
-     {
-@@ -678,6 +678,8 @@ on_web_view_decide_policy (WebKitWebView            *web_view,
-       g_hash_table_unref (key_value_pairs);
-     }
- 
-+  g_uri_unref (uri);
-+
-   if (data->oauth_verifier != NULL)
-     goto ignore_request;
- 
-diff --git a/src/goabackend/goaowncloudprovider.c b/src/goabackend/goaowncloudprovider.c
-index d142966..10734be 100644
---- a/src/goabackend/goaowncloudprovider.c
-+++ b/src/goabackend/goaowncloudprovider.c
-@@ -22,8 +22,6 @@
- 
- #include <glib/gi18n-lib.h>
- 
--#include <libsoup/soup.h>
--
- #include "goahttpclient.h"
- #include "goaprovider.h"
- #include "goaowncloudprovider.h"
-@@ -78,45 +76,42 @@ get_provider_features (GoaProvider *provider)
- /* ---------------------------------------------------------------------------------------------------- */
- 
- static char *
--uri_to_string_with_path (SoupURI *soup_uri, const gchar *path)
-+uri_to_string_with_path (GUri *uri, const gchar *path)
- {
-   gchar *uri_string;
-   gchar *uri_tmp;
- 
--  if (soup_uri == NULL)
-+  if (uri == NULL)
-     return NULL;
- 
--  uri_tmp = soup_uri_to_string (soup_uri, FALSE);
-+  uri_tmp = g_uri_to_string (uri);
-   uri_string = g_strconcat (uri_tmp, path, NULL);
-   g_free (uri_tmp);
- 
-   return uri_string;
- }
- 
--static char *get_webdav_uri (SoupURI *soup_uri)
-+static char *get_webdav_uri (GUri *uri)
- {
--  SoupURI *uri_tmp;
-+  GUri *uri_tmp;
-   gchar *uri_webdav;
-   const gchar *scheme;
--  guint port;
- 
--  if (soup_uri == NULL)
-+  if (uri == NULL)
-     return NULL;
- 
--  scheme = soup_uri_get_scheme (soup_uri);
--  port = soup_uri_get_port (soup_uri);
--  uri_tmp = soup_uri_copy (soup_uri);
--
--  if (g_strcmp0 (scheme, SOUP_URI_SCHEME_HTTPS) == 0)
--    soup_uri_set_scheme (uri_tmp, "davs");
--  else
--    soup_uri_set_scheme (uri_tmp, "dav");
--
--  if (!soup_uri_uses_default_port (soup_uri))
--    soup_uri_set_port (uri_tmp, port);
-+  scheme = g_uri_get_scheme (uri);
-+  uri_tmp = g_uri_build (g_uri_get_flags (uri),
-+                         g_strcmp0 (scheme, "https") == 0 ? "davs" : "dav",
-+                         g_uri_get_userinfo (uri),
-+                         g_uri_get_host (uri),
-+                         g_uri_get_port (uri),
-+                         g_uri_get_path (uri),
-+                         g_uri_get_query (uri),
-+                         g_uri_get_fragment (uri));
- 
-   uri_webdav = uri_to_string_with_path (uri_tmp, WEBDAV_ENDPOINT);
--  soup_uri_free (uri_tmp);
-+  g_uri_unref (uri_tmp);
- 
-   return uri_webdav;
- }
-@@ -140,7 +135,7 @@ build_object (GoaProvider         *provider,
-   gchar *uri_carddav;
-   gchar *uri_webdav;
-   GoaPasswordBased *password_based = NULL;
--  SoupURI *uri = NULL;
-+  GUri *uri = NULL;
-   gboolean accept_ssl_errors;
-   gboolean calendar_enabled;
-   gboolean contacts_enabled;
-@@ -176,9 +171,24 @@ build_object (GoaProvider         *provider,
-   account = goa_object_get_account (GOA_OBJECT (object));
-   identity = goa_account_get_identity (account);
-   uri_string = g_key_file_get_string (key_file, group, "Uri", NULL);
--  uri = soup_uri_new (uri_string);
-+  uri = g_uri_parse (uri_string, G_URI_FLAGS_ENCODED, NULL);
-   if (uri != NULL)
--    soup_uri_set_user (uri, identity);
-+    {
-+      GUri *tmp_uri;
-+
-+      tmp_uri = g_uri_build_with_user (g_uri_get_flags (uri),
-+                                       g_uri_get_scheme (uri),
-+                                       identity,
-+                                       g_uri_get_password (uri),
-+                                       g_uri_get_auth_params (uri),
-+                                       g_uri_get_host (uri),
-+                                       g_uri_get_port (uri),
-+                                       g_uri_get_path (uri),
-+                                       g_uri_get_query (uri),
-+                                       g_uri_get_fragment (uri));
-+      g_uri_unref (uri);
-+      uri = tmp_uri;
-+    }
- 
-   accept_ssl_errors = g_key_file_get_boolean (key_file, group, "AcceptSslErrors", NULL);
- 
-@@ -224,7 +234,7 @@ build_object (GoaProvider         *provider,
- 
-  out:
-   g_clear_object (&password_based);
--  g_clear_pointer (&uri, soup_uri_free);
-+  g_clear_pointer (&uri, g_uri_unref);
-   g_free (uri_string);
-   return ret;
- }
-@@ -354,8 +364,11 @@ add_entry (GtkWidget     *grid,
- static gchar *
- normalize_uri (const gchar *address, gchar **server)
- {
--  SoupURI *uri = NULL;
-+  GUri *uri = NULL;
-+  GUri *uri_tmp = NULL;
-   const gchar *path;
-+  const gchar *new_scheme;
-+  gchar *new_path = NULL;
-   gchar *ret = NULL;
-   gchar *scheme = NULL;
-   gchar *uri_string = NULL;
-@@ -384,48 +397,56 @@ normalize_uri (const gchar *address, gchar **server)
-   else
-     goto out;
- 
--  uri = soup_uri_new (uri_string);
-+  uri = g_uri_parse (uri_string, G_URI_FLAGS_ENCODED, NULL);
-   if (uri == NULL)
-     goto out;
- 
-   if (g_strcmp0 (scheme, "dav") == 0)
--    soup_uri_set_scheme (uri, SOUP_URI_SCHEME_HTTP);
-+    new_scheme = "http";
-   else if (g_strcmp0 (scheme, "davs") == 0)
--    soup_uri_set_scheme (uri, SOUP_URI_SCHEME_HTTPS);
-+    new_scheme = "https";
-+  else
-+    new_scheme = g_uri_get_scheme (uri);
- 
--  path = soup_uri_get_path (uri);
-+  path = g_uri_get_path (uri);
-   if (!g_str_has_suffix (path, "/"))
--    {
--      gchar *new_path;
--
-       new_path = g_strconcat (path, "/", NULL);
--      soup_uri_set_path (uri, new_path);
--      path = soup_uri_get_path (uri);
--      g_free (new_path);
--    }
-+
-+  uri_tmp = g_uri_build (g_uri_get_flags (uri),
-+                         new_scheme,
-+                         g_uri_get_userinfo (uri),
-+                         g_uri_get_host (uri),
-+                         g_uri_get_port (uri),
-+                         new_path ? new_path : path,
-+                         g_uri_get_query (uri),
-+                         g_uri_get_fragment (uri));
-+  g_free (new_path);
-+  g_uri_unref (uri);
-+  uri = uri_tmp;
-+  path = g_uri_get_path (uri);
- 
-   if (server != NULL)
-     {
-       gchar *port_string;
-       gchar *pretty_path;
--      guint port;
-+      gint port;
- 
--      port = soup_uri_get_port (uri);
--      port_string = g_strdup_printf (":%u", port);
-+      port = g_uri_get_port (uri);
-+      port_string = g_strdup_printf (":%d", port);
- 
-       pretty_path = g_strdup (path);
-       pretty_path[strlen(pretty_path) - 1] = '\0';
- 
--      *server = g_strconcat (soup_uri_get_host (uri), (port == std_port) ? "" : port_string, pretty_path, NULL);
-+      *server = g_strconcat (g_uri_get_host (uri), (port == std_port || port == -1) ? "" : port_string, pretty_path, NULL);
- 
-       g_free (port_string);
-       g_free (pretty_path);
-     }
- 
--  ret = soup_uri_to_string (uri, FALSE);
-+  ret = g_uri_to_string (uri);
- 
-  out:
--  g_clear_pointer (&uri, soup_uri_free);
-+  g_clear_pointer (&uri, g_uri_unref);
-   g_free (scheme);
-   g_free (uri_string);
-   return ret;
-diff --git a/src/goabackend/goawebview.c b/src/goabackend/goawebview.c
-index 2438e0c..3df600e 100644
---- a/src/goabackend/goawebview.c
-+++ b/src/goabackend/goawebview.c
-@@ -25,7 +25,6 @@
- #include <glib.h>
- #include <glib/gi18n-lib.h>
- #include <jsc/jsc.h>
--#include <libsoup/soup.h>
- #include <webkit2/webkit2.h>
- 
- #include "goawebview.h"
-@@ -77,17 +76,17 @@ web_view_clear_notify_progress_cb (gpointer user_data)
- static char *
- web_view_create_loading_title (const gchar *url)
- {
--  SoupURI *uri;
-+  GUri *uri;
-   const gchar *hostname;
-   gchar *title;
- 
-   g_return_val_if_fail (url != NULL && url[0] != '\0', NULL);
- 
--  uri = soup_uri_new (url);
--  hostname = soup_uri_get_host (uri);
-+  uri = g_uri_parse (url, G_URI_FLAGS_NONE, NULL);
-+  hostname = g_uri_get_host (uri);
-   /* translators: %s here is the address of the web page */
-   title = g_strdup_printf (_("Loading “%s”…"), hostname);
--  soup_uri_free (uri);
-+  g_uri_unref (uri);
- 
-   return title;
- }
--- 
-2.33.1
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/files/0002-Port-to-libsoup3.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/files/0002-Port-to-libsoup3.patch
deleted file mode 100644
index 0f95908..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/files/0002-Port-to-libsoup3.patch
+++ /dev/null
@@ -1,841 +0,0 @@
-From 7d8c5208d095ce8e7123935263ef7a02f0381ae5 Mon Sep 17 00:00:00 2001
-From: Carlos Garcia Campos <cgarcia@igalia.com>
-Date: Mon, 7 Jun 2021 18:28:42 +0200
-Subject: [PATCH 2/2] Port to libsoup3
-
-Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gnome-online-accounts/-/merge_requests/73]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- configure.ac                       |   8 +-
- src/daemon/goadaemon.c             |   2 +-
- src/goabackend/goaewsclient.c      | 178 +++++++++++++++--------------
- src/goabackend/goahttpclient.c     |  72 +++++++-----
- src/goabackend/goalastfmprovider.c |  24 ++--
- src/goabackend/goaoauth2provider.c |   6 +-
- src/goabackend/goaoauthprovider.c  |  23 ++--
- src/goabackend/goarestproxy.h      |   2 -
- src/goabackend/goasouplogger.c     |  33 ++----
- src/goabackend/goasouplogger.h     |   3 -
- src/goabackend/goautils.c          |  27 ++---
- 11 files changed, 199 insertions(+), 179 deletions(-)
-
---- a/configure.ac
-+++ b/configure.ac
-@@ -113,15 +113,15 @@ if test "$enable_backend" != "no"; then
-   AC_SUBST(GTK_CFLAGS)
-   AC_SUBST(GTK_LIBS)
- 
--  PKG_CHECK_MODULES(JAVASCRIPT_CORE_GTK, [javascriptcoregtk-4.0 >= 2.12.0])
-+  PKG_CHECK_MODULES(JAVASCRIPT_CORE_GTK, [javascriptcoregtk-4.1 >= 2.33.1])
-   AC_SUBST(JAVASCRIPT_CORE_GTK_CFLAGS)
-   AC_SUBST(JAVASCRIPT_CORE_GTK_LIBS)
- 
--  PKG_CHECK_MODULES(WEBKIT_GTK, [webkit2gtk-4.0 >= 2.26.0])
-+  PKG_CHECK_MODULES(WEBKIT_GTK, [webkit2gtk-4.1 >= 2.33.1])
-   AC_SUBST(WEBKIT_GTK_CFLAGS)
-   AC_SUBST(WEBKIT_GTK_LIBS)
- 
--  PKG_CHECK_MODULES(LIBSOUP, [libsoup-2.4 >= 2.42])
-+  PKG_CHECK_MODULES(LIBSOUP, [libsoup-3.0 >= 2.99.8])
-   AC_SUBST(LIBSOUP_CFLAGS)
-   AC_SUBST(LIBSOUP_LIBS)
- 
-@@ -129,7 +129,7 @@ if test "$enable_backend" != "no"; then
-   AC_SUBST(JSON_GLIB_CFLAGS)
-   AC_SUBST(JSON_GLIB_LIBS)
- 
--  PKG_CHECK_MODULES(REST, [rest-0.7])
-+  PKG_CHECK_MODULES(REST, [rest-1.0])
-   AC_SUBST(REST_CFLAGS)
-   AC_SUBST(REST_LIBS)
- 
---- a/src/daemon/goadaemon.c
-+++ b/src/daemon/goadaemon.c
-@@ -1496,7 +1496,7 @@ is_authorization_error (GError *error)
-   g_return_val_if_fail (error != NULL, FALSE);
- 
-   ret = FALSE;
--  if (error->domain == REST_PROXY_ERROR || error->domain == SOUP_HTTP_ERROR)
-+  if (error->domain == REST_PROXY_ERROR)
-     {
-       if (SOUP_STATUS_IS_CLIENT_ERROR (error->code))
-         ret = TRUE;
---- a/src/goabackend/goaewsclient.c
-+++ b/src/goabackend/goaewsclient.c
-@@ -63,6 +63,12 @@ goa_ews_client_new (void)
- 
- typedef struct
- {
-+  gchar *password;
-+  gchar *username;
-+} AutodiscoverAuthData;
-+
-+typedef struct
-+{
-   GCancellable *cancellable;
-   GError *error;
-   SoupMessage *msgs[2];
-@@ -71,13 +77,16 @@ typedef struct
-   guint pending;
-   gulong cancellable_id;
-   xmlOutputBuffer *buf;
-+  AutodiscoverAuthData *auth;
- } AutodiscoverData;
- 
--typedef struct
-+static void
-+ews_client_autodiscover_auth_data_free (AutodiscoverAuthData *auth)
- {
--  gchar *password;
--  gchar *username;
--} AutodiscoverAuthData;
-+  g_free (auth->password);
-+  g_free (auth->username);
-+  g_slice_free (AutodiscoverAuthData, auth);
-+}
- 
- static void
- ews_client_autodiscover_data_free (gpointer user_data)
-@@ -92,22 +101,12 @@ ews_client_autodiscover_data_free (gpoin
- 
-   g_clear_error (&data->error);
- 
--  /* soup_session_queue_message stole the references to data->msgs */
-   xmlOutputBufferClose (data->buf);
-+  g_clear_pointer (&data->auth, ews_client_autodiscover_auth_data_free);
-   g_object_unref (data->session);
-   g_slice_free (AutodiscoverData, data);
- }
- 
--static void
--ews_client_autodiscover_auth_data_free (gpointer data, GClosure *closure)
--{
--  AutodiscoverAuthData *auth = data;
--
--  g_free (auth->password);
--  g_free (auth->username);
--  g_slice_free (AutodiscoverAuthData, auth);
--}
--
- static gboolean
- ews_client_check_node (const xmlNode *node, const gchar *name)
- {
-@@ -115,9 +114,8 @@ ews_client_check_node (const xmlNode *no
-   return node->type == XML_ELEMENT_NODE && !g_strcmp0 ((gchar *) node->name, name);
- }
- 
--static void
--ews_client_authenticate (SoupSession *session,
--                         SoupMessage *msg,
-+static gboolean
-+ews_client_authenticate (SoupMessage *msg,
-                          SoupAuth *auth,
-                          gboolean retrying,
-                          gpointer user_data)
-@@ -125,26 +123,26 @@ ews_client_authenticate (SoupSession *se
-   AutodiscoverAuthData *data = user_data;
- 
-   if (retrying)
--    return;
-+    return FALSE;
- 
-   soup_auth_authenticate (auth, data->username, data->password);
-+  return TRUE;
- }
- 
--static void
--ews_client_request_started (SoupSession *session, SoupMessage *msg, SoupSocket *socket, gpointer user_data)
-+static gboolean
-+ews_client_accept_certificate (SoupMessage *msg, GTlsCertificate *cert, GTlsCertificateFlags cert_flags, gpointer user_data)
- {
-   AutodiscoverData *data;
-   GTask *task = G_TASK (user_data);
--  GTlsCertificateFlags cert_flags;
- 
--  g_debug ("goa_ews_client_autodiscover(): request started (%p)", msg);
-+  g_debug ("goa_ews_client_autodiscover(): accept certificate for request (%p)", msg);
- 
-   data = (AutodiscoverData *) g_task_get_task_data (task);
- 
--  if (!data->accept_ssl_errors
--      && soup_message_get_https_status (msg, NULL, &cert_flags)
--      && cert_flags != 0
--      && data->error == NULL)
-+  if (data->accept_ssl_errors || cert_flags == 0)
-+    return TRUE;
-+
-+  if (data->error == NULL)
-     {
-       goa_utils_set_error_ssl (&data->error, cert_flags);
- 
-@@ -153,6 +151,8 @@ ews_client_request_started (SoupSession
-        */
-       soup_session_abort (data->session);
-     }
-+
-+  return FALSE;
- }
- 
- static void
-@@ -192,8 +192,10 @@ ews_client_autodiscover_parse_protocol (
- }
- 
- static void
--ews_client_autodiscover_response_cb (SoupSession *session, SoupMessage *msg, gpointer user_data)
-+ews_client_autodiscover_response_cb (SoupSession *session, GAsyncResult *result, gpointer user_data)
- {
-+  SoupMessage *msg;
-+  GBytes *body;
-   GError *error = NULL;
-   AutodiscoverData *data;
-   GTask *task = G_TASK (user_data);
-@@ -204,7 +206,11 @@ ews_client_autodiscover_response_cb (Sou
-   xmlDoc *doc;
-   xmlNode *node;
- 
--  g_debug ("goa_ews_client_autodiscover(): response (%p, %u)", msg, msg->status_code);
-+  msg = soup_session_get_async_result_message (session, result);
-+
-+  g_debug ("goa_ews_client_autodiscover(): response (%p, %u)", msg, soup_message_get_status (msg));
-+
-+  body = soup_session_send_and_read_finish (session, result, &error);
- 
-   data = (AutodiscoverData *) g_task_get_task_data (task);
-   size = sizeof (data->msgs) / sizeof (data->msgs[0]);
-@@ -215,16 +221,19 @@ ews_client_autodiscover_response_cb (Sou
-         break;
-     }
-   if (idx == size || data->pending == 0)
--    return;
-+    {
-+      g_bytes_unref (body);
-+      g_clear_object (&error);
-+      g_object_unref (msg);
-+      return;
-+    }
- 
-   data->msgs[idx] = NULL;
--  status = msg->status_code;
--
--  /* status == SOUP_STATUS_CANCELLED, if we are being aborted by the
-+  /* G_IO_ERROR_CANCELLED, if we are being aborted by the
-    * GCancellable, an SSL error or another message that was
-    * successful.
-    */
--  if (status == SOUP_STATUS_CANCELLED)
-+  if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
-     {
-       /* If we are being aborted by the GCancellable, then the
-        * GTask is responsible for setting the GError automatically.
-@@ -235,21 +244,23 @@ ews_client_autodiscover_response_cb (Sou
-        */
-       goto out;
-     }
--  else if (status != SOUP_STATUS_OK)
-+
-+  status = soup_message_get_status (msg);
-+  if (status != SOUP_STATUS_OK || error)
-     {
--      g_warning ("goa_ews_client_autodiscover() failed: %u — %s", msg->status_code, msg->reason_phrase);
-+      g_warning ("goa_ews_client_autodiscover() failed: %u — %s", status, soup_message_get_reason_phrase (msg));
-       g_return_if_fail (data->error == NULL);
- 
--      goa_utils_set_error_soup (&error, msg);
-+      if (!error)
-+        goa_utils_set_error_soup (&error, msg);
-       goto out;
-     }
- 
--  soup_buffer_free (soup_message_body_flatten (SOUP_MESSAGE (msg)->response_body));
-   g_debug ("The response headers");
-   g_debug ("===================");
--  g_debug ("%s", SOUP_MESSAGE (msg)->response_body->data);
-+  g_debug ("%s", (char *)g_bytes_get_data (body, NULL));
- 
--  doc = xmlReadMemory (msg->response_body->data, msg->response_body->length, "autodiscover.xml", NULL, 0);
-+  doc = xmlReadMemory (g_bytes_get_data (body, NULL), g_bytes_get_size (body), "autodiscover.xml", NULL, 0);
-   if (doc == NULL)
-     {
-       g_set_error (&error,
-@@ -333,7 +344,7 @@ ews_client_autodiscover_response_cb (Sou
-           /* The callback (ie. this function) will be invoked after we
-            * have returned to the main loop.
-            */
--          soup_session_cancel_message (data->session, data->msgs[idx], SOUP_STATUS_CANCELLED);
-+          g_cancellable_cancel (data->cancellable);
-         }
-     }
- 
-@@ -368,6 +379,7 @@ ews_client_autodiscover_response_cb (Sou
- 
-   g_clear_error (&error);
-   g_object_unref (task);
-+  g_object_unref (msg);
- }
- 
- static xmlDoc *
-@@ -399,52 +411,54 @@ static void
- ews_client_post_restarted_cb (SoupMessage *msg, gpointer data)
- {
-   xmlOutputBuffer *buf = data;
-+  GBytes *body;
- 
-   /* In violation of RFC2616, libsoup will change a POST request to
-    * a GET on receiving a 302 redirect.
-    */
-   g_debug ("Working around libsoup bug with redirect");
--  g_object_set (msg, SOUP_MESSAGE_METHOD, "POST", NULL);
-+  g_object_set (msg, "method", "POST", NULL);
- 
--  soup_message_set_request(msg,
--                           "text/xml; charset=utf-8",
--                           SOUP_MEMORY_COPY,
- #ifdef LIBXML2_NEW_BUFFER
--                           (gchar *) xmlOutputBufferGetContent(buf),
--                           xmlOutputBufferGetSize(buf));
-+  body = g_bytes_new (xmlOutputBufferGetContent (buf), xmlOutputBufferGetSize (buf));
- #else
--                           (gchar *) buf->buffer->content,
--                           buf->buffer->use);
-+  body = g_bytes_new (buf->buffer->content, buf->buffer->use);
- #endif
-+  soup_message_set_request_body_from_bytes (msg, "text/xml; charset=utf-8", body);
-+  g_bytes_unref (body);
- }
- 
- static SoupMessage *
--ews_client_create_msg_for_url (const gchar *url, xmlOutputBuffer *buf)
-+ews_client_create_msg_for_url (const gchar *url, xmlOutputBuffer *buf, AutodiscoverAuthData *auth, GTask *task)
- {
-   SoupMessage *msg;
-+  GBytes *body = NULL;
- 
-   msg = soup_message_new (buf != NULL ? "POST" : "GET", url);
--  soup_message_headers_append (msg->request_headers, "User-Agent", "libews/0.1");
-+  soup_message_headers_append (soup_message_get_request_headers (msg),
-+                               "User-Agent", "libews/0.1");
-+
-+  g_signal_connect (msg, "authenticate",
-+                    G_CALLBACK (ews_client_authenticate),
-+                    auth);
-+  g_signal_connect (msg, "accept-certificate",
-+                    G_CALLBACK (ews_client_accept_certificate),
-+                    task);
- 
-   if (buf != NULL)
-     {
--      soup_message_set_request (msg,
--                                "text/xml; charset=utf-8",
--                                SOUP_MEMORY_COPY,
- #ifdef LIBXML2_NEW_BUFFER
--                                (gchar *) xmlOutputBufferGetContent(buf),
--                                xmlOutputBufferGetSize(buf));
-+      body = g_bytes_new (xmlOutputBufferGetContent (buf), xmlOutputBufferGetSize (buf));
- #else
--                                (gchar *) buf->buffer->content,
--                                buf->buffer->use);
-+      body = g_bytes_new (buf->buffer->content, buf->buffer->use);
- #endif
-+      soup_message_set_request_body_from_bytes (msg, "text/xml; charset=utf-8", body);
-       g_signal_connect (msg, "restarted", G_CALLBACK (ews_client_post_restarted_cb), buf);
-     }
- 
--  soup_buffer_free (soup_message_body_flatten (SOUP_MESSAGE (msg)->request_body));
-   g_debug ("The request headers");
-   g_debug ("===================");
--  g_debug ("%s", SOUP_MESSAGE (msg)->request_body->data);
-+  g_debug ("%s", body ? (char *)g_bytes_get_data (body, NULL) : "");
- 
-   return msg;
- }
-@@ -497,12 +511,15 @@ goa_ews_client_autodiscover (GoaEwsClien
-    * (successful) one win.
-    */
- 
-+  auth = g_slice_new0 (AutodiscoverAuthData);
-+  auth->username = g_strdup (username);
-+  auth->password = g_strdup (password);
-+  data->auth = auth;
-   data->buf = buf;
--  data->msgs[0] = ews_client_create_msg_for_url (url1, buf);
--  data->msgs[1] = ews_client_create_msg_for_url (url2, buf);
-+  data->msgs[0] = ews_client_create_msg_for_url (url1, buf, auth, task);
-+  data->msgs[1] = ews_client_create_msg_for_url (url2, buf, auth, task);
-   data->pending = sizeof (data->msgs) / sizeof (data->msgs[0]);
--  data->session = soup_session_new_with_options (SOUP_SESSION_SSL_STRICT, FALSE,
--                                                 NULL);
-+  data->session = soup_session_new ();
-   soup_session_add_feature_by_type (data->session, SOUP_TYPE_AUTH_NTLM);
-   data->accept_ssl_errors = accept_ssl_errors;
- 
-@@ -515,26 +532,19 @@ goa_ews_client_autodiscover (GoaEwsClien
-                                                     NULL);
-     }
- 
--  auth = g_slice_new0 (AutodiscoverAuthData);
--  auth->username = g_strdup (username);
--  auth->password = g_strdup (password);
--  g_signal_connect_data (data->session,
--                         "authenticate",
--                         G_CALLBACK (ews_client_authenticate),
--                         auth,
--                         ews_client_autodiscover_auth_data_free,
--                         0);
--
--  g_signal_connect (data->session, "request-started", G_CALLBACK (ews_client_request_started), task);
--
--  soup_session_queue_message (data->session,
--                              data->msgs[0],
--                              ews_client_autodiscover_response_cb,
--                              g_object_ref (task));
--  soup_session_queue_message (data->session,
--                              data->msgs[1],
--                              ews_client_autodiscover_response_cb,
--                              g_object_ref (task));
-+
-+  soup_session_send_and_read_async (data->session,
-+                                    data->msgs[0],
-+                                    G_PRIORITY_DEFAULT,
-+                                    data->cancellable,
-+                                    (GAsyncReadyCallback)ews_client_autodiscover_response_cb,
-+                                    g_object_ref (task));
-+  soup_session_send_and_read_async (data->session,
-+                                    data->msgs[1],
-+                                    G_PRIORITY_DEFAULT,
-+                                    data->cancellable,
-+                                    (GAsyncReadyCallback)ews_client_autodiscover_response_cb,
-+                                    g_object_ref (task));
- 
-   g_free (url2);
-   g_free (url1);
---- a/src/goabackend/goahttpclient.c
-+++ b/src/goabackend/goahttpclient.c
-@@ -82,7 +82,7 @@ http_client_check_data_free (gpointer us
- 
-   g_clear_error (&data->error);
- 
--  /* soup_session_queue_message stole the references to data->msg */
-+  g_object_unref (data->msg);
-   g_object_unref (data->session);
-   g_slice_free (CheckData, data);
- }
-@@ -97,9 +97,8 @@ http_client_check_auth_data_free (gpoint
-   g_slice_free (CheckAuthData, auth);
- }
- 
--static void
--http_client_authenticate (SoupSession *session,
--                         SoupMessage *msg,
-+static gboolean
-+http_client_authenticate (SoupMessage *msg,
-                          SoupAuth *auth,
-                          gboolean retrying,
-                          gpointer user_data)
-@@ -107,26 +106,26 @@ http_client_authenticate (SoupSession *s
-   CheckAuthData *data = user_data;
- 
-   if (retrying)
--    return;
-+    return FALSE;
- 
-   soup_auth_authenticate (auth, data->username, data->password);
-+  return TRUE;
- }
- 
--static void
--http_client_request_started (SoupSession *session, SoupMessage *msg, SoupSocket *socket, gpointer user_data)
-+static gboolean
-+http_client_accept_certificate (SoupMessage *msg, GTlsCertificate *cert, GTlsCertificateFlags cert_flags, gpointer user_data)
- {
-   CheckData *data;
-   GTask *task = G_TASK (user_data);
--  GTlsCertificateFlags cert_flags;
- 
-   g_debug ("goa_http_client_check(): request started (%p)", msg);
- 
-   data = (CheckData *) g_task_get_task_data (task);
- 
--  if (!data->accept_ssl_errors
--      && soup_message_get_https_status (msg, NULL, &cert_flags)
--      && cert_flags != 0
--      && data->error == NULL)
-+  if (data->accept_ssl_errors || cert_flags == 0)
-+    return TRUE;
-+
-+  if (data->error == NULL)
-     {
-       goa_utils_set_error_ssl (&data->error, cert_flags);
- 
-@@ -135,6 +134,8 @@ http_client_request_started (SoupSession
-        */
-       soup_session_abort (data->session);
-     }
-+
-+  return FALSE;
- }
- 
- static void
-@@ -154,21 +155,27 @@ http_client_check_cancelled_cb (GCancell
- }
- 
- static void
--http_client_check_response_cb (SoupSession *session, SoupMessage *msg, gpointer user_data)
-+http_client_check_response_cb (SoupSession *session, GAsyncResult *result, gpointer user_data)
- {
-+  SoupMessage *msg;
-   CheckData *data;
--  GCancellable *cancellable;
-   GTask *task = G_TASK (user_data);
-+  guint status;
-+  GBytes *body;
-+  GError *error = NULL;
- 
--  g_debug ("goa_http_client_check(): response (%p, %u)", msg, msg->status_code);
-+  msg = soup_session_get_async_result_message (session, result);
-+
-+  g_debug ("goa_http_client_check(): response (%p, %u)", msg, soup_message_get_status (msg));
-+
-+  body = soup_session_send_and_read_finish (session, result, &error);
- 
-   data = (CheckData *) g_task_get_task_data (task);
--  cancellable = g_task_get_cancellable (task);
- 
--  /* status == SOUP_STATUS_CANCELLED, if we are being aborted by the
-+  /* G_IO_ERROR_CANCELLED, if we are being aborted by the
-    * GCancellable or due to an SSL error.
-    */
--  if (msg->status_code == SOUP_STATUS_CANCELLED)
-+  if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
-     {
-       /* If we are being aborted by the GCancellable then there might
-        * or might not be an error. The GCancellable can be triggered
-@@ -176,20 +183,27 @@ http_client_check_response_cb (SoupSessi
-        * of events across threads.
-        */
-       if (data->error == NULL)
--        g_cancellable_set_error_if_cancelled (cancellable, &data->error);
-+        g_propagate_error (&data->error, g_steal_pointer (&error));
- 
-       goto out;
-     }
--  else if (msg->status_code != SOUP_STATUS_OK)
-+
-+  status = soup_message_get_status (msg);
-+  if (status != SOUP_STATUS_OK || error)
-     {
--      g_warning ("goa_http_client_check() failed: %u — %s", msg->status_code, msg->reason_phrase);
-+      g_warning ("goa_http_client_check() failed: %u — %s", status, soup_message_get_reason_phrase (msg));
-       g_return_if_fail (data->error == NULL);
- 
--      goa_utils_set_error_soup (&data->error, msg);
-+      if (error)
-+        g_propagate_error (&data->error, g_steal_pointer (&error));
-+      else
-+        goa_utils_set_error_soup (&data->error, msg);
-       goto out;
-     }
- 
-  out:
-+  g_clear_error (&error);
-+  g_clear_pointer (&body, g_bytes_unref);
-   if (data->error != NULL)
-     g_task_return_error (task, g_steal_pointer (&data->error));
-   else
-@@ -225,7 +239,7 @@ goa_http_client_check (GoaHttpClient
-   data = g_slice_new0 (CheckData);
-   g_task_set_task_data (task, data, http_client_check_data_free);
- 
--  data->session = soup_session_new_with_options (SOUP_SESSION_SSL_STRICT, FALSE, NULL);
-+  data->session = soup_session_new ();
- 
-   logger = goa_soup_logger_new (SOUP_LOGGER_LOG_BODY, -1);
-   soup_session_add_feature (data->session, SOUP_SESSION_FEATURE (logger));
-@@ -246,15 +260,21 @@ goa_http_client_check (GoaHttpClient
-   auth = g_slice_new0 (CheckAuthData);
-   auth->username = g_strdup (username);
-   auth->password = g_strdup (password);
--  g_signal_connect_data (data->session,
-+  g_signal_connect_data (data->msg,
-                          "authenticate",
-                          G_CALLBACK (http_client_authenticate),
-                          auth,
-                          http_client_check_auth_data_free,
-                          0);
- 
--  g_signal_connect (data->session, "request-started", G_CALLBACK (http_client_request_started), task);
--  soup_session_queue_message (data->session, data->msg, http_client_check_response_cb, g_object_ref (task));
-+  g_signal_connect (data->msg, "accept-certificate", G_CALLBACK (http_client_accept_certificate), task);
-+
-+  soup_session_send_and_read_async (data->session,
-+                                    data->msg,
-+                                    G_PRIORITY_DEFAULT,
-+                                    data->cancellable,
-+                                    (GAsyncReadyCallback)http_client_check_response_cb,
-+                                    g_object_ref (task));
- 
-   g_object_unref (task);
- }
---- a/src/goabackend/goalastfmprovider.c
-+++ b/src/goabackend/goalastfmprovider.c
-@@ -483,8 +483,7 @@ add_account_cb (GoaManager *manager, GAs
- 
- static void
- check_cb (RestProxyCall *call,
--          const GError *error,
--          GObject *weak_object,
-+          GAsyncResult *result,
-           gpointer user_data)
- {
-   AddAccountData *data = user_data;
-@@ -494,6 +493,9 @@ check_cb (RestProxyCall *call,
-   JsonObject *session_obj;
-   const gchar *payload;
- 
-+  if (!rest_proxy_call_invoke_finish (call, result, &data->error))
-+    goto out;
-+
-   parser = NULL;
- 
-   parser = json_parser_new ();
-@@ -562,12 +564,12 @@ on_rest_proxy_call_cancelled_cb (GCancel
- }
- 
- static void
--lastfm_login (GoaProvider                  *provider,
--              const gchar                  *username,
--              const gchar                  *password,
--              GCancellable                 *cancellable,
--              RestProxyCallAsyncCallback   callback,
--              gpointer                     user_data)
-+lastfm_login (GoaProvider          *provider,
-+              const gchar          *username,
-+              const gchar          *password,
-+              GCancellable         *cancellable,
-+              GAsyncReadyCallback   callback,
-+              gpointer              user_data)
- {
-   AddAccountData *data = user_data;
-   RestProxyCall *call;
-@@ -598,7 +600,7 @@ lastfm_login (GoaProvider
-   rest_proxy_call_add_param (call, "api_sig", sig_md5);
-   rest_proxy_call_add_param (call, "format", "json");
- 
--  rest_proxy_call_async (call, callback, NULL, data, &data->error);
-+  rest_proxy_call_invoke_async (call, NULL, callback, data);
- 
-   g_signal_connect (cancellable, "cancelled", G_CALLBACK (on_rest_proxy_call_cancelled_cb), call);
- 
-@@ -665,7 +667,7 @@ add_account (GoaProvider    *provider,
-                 username,
-                 password,
-                 data.cancellable,
--                (RestProxyCallAsyncCallback) check_cb,
-+                (GAsyncReadyCallback) check_cb,
-                 &data);
- 
-   gtk_widget_set_sensitive (data.connect_button, FALSE);
-@@ -819,7 +821,7 @@ refresh_account (GoaProvider    *provide
-                 username,
-                 password,
-                 data.cancellable,
--                (RestProxyCallAsyncCallback) check_cb,
-+                (GAsyncReadyCallback) check_cb,
-                 &data);
-   gtk_widget_set_sensitive (data.connect_button, FALSE);
-   gtk_widget_show (data.progress_grid);
---- a/src/goabackend/goaoauth2provider.c
-+++ b/src/goabackend/goaoauth2provider.c
-@@ -95,11 +95,15 @@ is_authorization_error (GError *error)
-   g_return_val_if_fail (error != NULL, FALSE);
- 
-   ret = FALSE;
--  if (error->domain == REST_PROXY_ERROR || error->domain == SOUP_HTTP_ERROR)
-+  if (error->domain == REST_PROXY_ERROR)
-     {
-       if (SOUP_STATUS_IS_CLIENT_ERROR (error->code))
-         ret = TRUE;
-     }
-+  else if (g_error_matches (error, GOA_ERROR, GOA_ERROR_NOT_AUTHORIZED))
-+    {
-+      ret = TRUE;
-+    }
-   return ret;
- }
- 
---- a/src/goabackend/goaoauthprovider.c
-+++ b/src/goabackend/goaoauthprovider.c
-@@ -77,11 +77,15 @@ is_authorization_error (GError *error)
-   g_return_val_if_fail (error != NULL, FALSE);
- 
-   ret = FALSE;
--  if (error->domain == REST_PROXY_ERROR || error->domain == SOUP_HTTP_ERROR)
-+  if (error->domain == REST_PROXY_ERROR)
-     {
-       if (SOUP_STATUS_IS_CLIENT_ERROR (error->code))
-         ret = TRUE;
-     }
-+  else if (g_error_matches (error, GOA_ERROR, GOA_ERROR_NOT_AUTHORIZED))
-+    {
-+      ret = TRUE;
-+    }
-   return ret;
- }
- 
-@@ -701,9 +705,15 @@ on_web_view_decide_policy (WebKitWebView
- }
- 
- static void
--rest_proxy_call_cb (RestProxyCall *call, const GError *error, GObject *weak_object, gpointer user_data)
-+rest_proxy_call_cb (GObject *source, GAsyncResult *result, gpointer user_data)
- {
-+  RestProxyCall *call = REST_PROXY_CALL (source);
-   IdentifyData *data = user_data;
-+
-+  if (!rest_proxy_call_invoke_finish (call, result, &data->error))
-+    {
-+      g_prefix_error (&data->error, _("Error getting a Request Token: "));
-+    }
-   g_main_loop_quit (data->loop);
- }
- 
-@@ -770,11 +780,7 @@ get_tokens_and_identity (GoaOAuthProvide
-       for (n = 0; request_params[n] != NULL; n += 2)
-         rest_proxy_call_add_param (call, request_params[n], request_params[n+1]);
-     }
--  if (!rest_proxy_call_async (call, rest_proxy_call_cb, NULL, &data, &data.error))
--    {
--      g_prefix_error (&data.error, _("Error getting a Request Token: "));
--      goto out;
--    }
-+  rest_proxy_call_invoke_async (call, NULL, rest_proxy_call_cb, &data);
- 
-   goa_utils_set_dialog_title (GOA_PROVIDER (provider), dialog, add_account);
- 
-@@ -796,6 +802,9 @@ get_tokens_and_identity (GoaOAuthProvide
-   g_main_loop_run (data.loop);
-   gtk_container_remove (GTK_CONTAINER (grid), spinner);
- 
-+  if (data.error)
-+    goto out;
-+
-   if (rest_proxy_call_get_status_code (call) != 200)
-     {
-       gchar *msg;
---- a/src/goabackend/goarestproxy.h
-+++ b/src/goabackend/goarestproxy.h
-@@ -27,8 +27,6 @@
- 
- G_BEGIN_DECLS
- 
--G_DEFINE_AUTOPTR_CLEANUP_FUNC (RestProxy, g_object_unref);
--
- #define GOA_TYPE_REST_PROXY (goa_rest_proxy_get_type ())
- G_DECLARE_FINAL_TYPE (GoaRestProxy, goa_rest_proxy, GOA, REST_PROXY, RestProxy);
- 
---- a/src/goabackend/goasouplogger.c
-+++ b/src/goabackend/goasouplogger.c
-@@ -22,15 +22,6 @@
- 
- #include "goasouplogger.h"
- 
--struct _GoaSoupLogger
--{
--  SoupLogger parent_instance;
--};
--
--G_DEFINE_TYPE (GoaSoupLogger, goa_soup_logger, SOUP_TYPE_LOGGER);
--
--/* ---------------------------------------------------------------------------------------------------- */
--
- static void
- goa_soup_logger_printer (SoupLogger         *logger,
-                          SoupLoggerLogLevel  level,
-@@ -45,24 +36,16 @@ goa_soup_logger_printer (SoupLogger
-   g_free (message);
- }
- 
--/* ---------------------------------------------------------------------------------------------------- */
--
--static void
--goa_soup_logger_init (GoaSoupLogger *self)
--{
--  soup_logger_set_printer (SOUP_LOGGER (self), goa_soup_logger_printer, NULL, NULL);
--}
--
--static void
--goa_soup_logger_class_init (GoaSoupLoggerClass *klass)
--{
--}
--
--/* ---------------------------------------------------------------------------------------------------- */
--
- SoupLogger *
- goa_soup_logger_new (SoupLoggerLogLevel   level,
-                      gint                 max_body_size)
- {
--  return g_object_new (GOA_TYPE_SOUP_LOGGER, "level", level, "max-body-size", max_body_size, NULL);
-+  SoupLogger *logger;
-+
-+  logger = soup_logger_new (level);
-+  if (max_body_size != -1)
-+    soup_logger_set_max_body_size (logger, max_body_size);
-+  soup_logger_set_printer (logger, goa_soup_logger_printer, NULL, NULL);
-+
-+  return logger;
- }
---- a/src/goabackend/goasouplogger.h
-+++ b/src/goabackend/goasouplogger.h
-@@ -27,9 +27,6 @@
- 
- G_BEGIN_DECLS
- 
--#define GOA_TYPE_SOUP_LOGGER (goa_soup_logger_get_type ())
--G_DECLARE_FINAL_TYPE (GoaSoupLogger, goa_soup_logger, GOA, SOUP_LOGGER, SoupLogger);
--
- SoupLogger     *goa_soup_logger_new                (SoupLoggerLogLevel   level,
-                                                     gint                 max_body_size);
- 
---- a/src/goabackend/goautils.c
-+++ b/src/goabackend/goautils.c
-@@ -841,29 +841,26 @@ goa_utils_set_error_soup (GError **err,
- {
-   gchar *error_msg = NULL;
-   gint error_code = GOA_ERROR_FAILED; /* TODO: more specific */
-+  guint status_code;
- 
--  switch (msg->status_code)
-+  status_code = soup_message_get_status (msg);
-+  switch (status_code)
-     {
--    case SOUP_STATUS_CANT_RESOLVE:
--      error_msg = g_strdup (_("Cannot resolve hostname"));
--      break;
--
--    case SOUP_STATUS_CANT_RESOLVE_PROXY:
--      error_msg = g_strdup (_("Cannot resolve proxy hostname"));
--      break;
--
-     case SOUP_STATUS_INTERNAL_SERVER_ERROR:
-     case SOUP_STATUS_NOT_FOUND:
-       error_msg = g_strdup (_("Cannot find WebDAV endpoint"));
-       break;
- 
--    case SOUP_STATUS_UNAUTHORIZED:
--      error_msg = g_strdup (_("Authentication failed"));
--      error_code = GOA_ERROR_NOT_AUTHORIZED;
--      break;
--
-     default:
--      error_msg = g_strdup_printf (_("Code: %u — Unexpected response from server"), msg->status_code);
-+      if (SOUP_STATUS_IS_CLIENT_ERROR (status_code))
-+        {
-+          error_msg = g_strdup (_("Authentication failed"));
-+          error_code = GOA_ERROR_NOT_AUTHORIZED;
-+        }
-+      else
-+        {
-+          error_msg = g_strdup_printf (_("Code: %u — Unexpected response from server"), status_code);
-+        }
-       break;
-     }
- 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/gnome-online-accounts_3.43.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/gnome-online-accounts_3.43.1.bb
index 8580d29..3dca7e3 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/gnome-online-accounts_3.43.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-online-accounts/gnome-online-accounts_3.43.1.bb
@@ -11,16 +11,13 @@
 
 DEPENDS = "glib-2.0"
 
-SRC_URI += "\
-    file://0001-Use-GUri-instead-of-SoupURI.patch \
-    file://0002-Port-to-libsoup3.patch \
-"
+SRC_URI += "file://0001-Update-to-rest-1.0.patch"
 SRC_URI[archive.sha256sum] = "3bcb3663a12efd4482d9fdda3e171676267fc739eb6440a2b7109a0e87afb7e8"
 
 # backend is required for gnome-control-center
 PACKAGECONFIG = "backend other"
 
-PACKAGECONFIG[backend] = "--enable-backend,--disable-backend,gtk+3 webkitgtk libsoup json-glib libsecret rest libxml2"
+PACKAGECONFIG[backend] = "--enable-backend,--disable-backend,gtk+3 webkitgtk libsoup-2.4 json-glib libsecret rest libxml2"
 PACKAGECONFIG[krb5] = "--enable-kerberos, --disable-kerberos , krb5 gcr"
 
 # no extra dependencies!
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-panel/gnome-panel_3.36.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-panel/gnome-panel_3.42.0.bb
similarity index 72%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-panel/gnome-panel_3.36.1.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-panel/gnome-panel_3.42.0.bb
index 9a7c377..9c9add4 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-panel/gnome-panel_3.36.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-panel/gnome-panel_3.42.0.bb
@@ -12,13 +12,12 @@
     polkit \
     dconf \
     libgweather \
-    gnome-menus3 \
-    gnome-desktop3 \
+    gnome-menus \
+    gnome-desktop \
     gdm \
 "
 
-SRC_URI[archive.md5sum] = "b6bb185ce1724f4b19699042d90282a6"
-SRC_URI[archive.sha256sum] = "1e21b726dd397523ae79d29eb538bcae09e3427e23ccd63f28eb25ef3552abd3"
+SRC_URI[archive.sha256sum] = "aea8c0efc2edba20e97ad4695179cd0a2538e64c2904702cc8c594e8e0898703"
 
 PACKAGECONFIG[eds] = "--enable-eds,--disable-eds,evolution-data-server"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-photos/gnome-photos/0001-meson-remove-incorrect-args-for-i18n.merge_file.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-photos/gnome-photos/0001-meson-remove-incorrect-args-for-i18n.merge_file.patch
new file mode 100644
index 0000000..9fb7a5b
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-photos/gnome-photos/0001-meson-remove-incorrect-args-for-i18n.merge_file.patch
@@ -0,0 +1,31 @@
+From a112e8a089851035945b6848849149bb36787906 Mon Sep 17 00:00:00 2001
+From: rvalue <i@rvalue.moe>
+Date: Fri, 21 Jan 2022 12:36:02 +0000
+Subject: [PATCH] meson: remove incorrect args for i18n.merge_file
+
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ data/meson.build | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/data/meson.build b/data/meson.build
+index 6e7192e..94271de 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -3,7 +3,6 @@ subdir('icons')
+ appdata = photos_namespace + '.appdata.xml'
+ 
+ i18n.merge_file(
+-  appdata,
+   input: appdata + '.in',
+   output: appdata,
+   po_dir: po_dir,
+@@ -23,7 +22,6 @@ desktop_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  desktop,
+   type: 'desktop',
+   input: desktop_in,
+   output: desktop,
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-photos/gnome-photos_40.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-photos/gnome-photos_40.0.bb
index fb1b7d3..ae8ab31 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-photos/gnome-photos_40.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-photos/gnome-photos_40.0.bb
@@ -30,6 +30,7 @@
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
+SRC_URI += " file://0001-meson-remove-incorrect-args-for-i18n.merge_file.patch"
 SRC_URI[archive.sha256sum] = "e02d73e138af8b2868b5cad7faa1bdd278aeade3b6c3c92836511a4e6f3af1af"
 
 do_install:append() {
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot/0001-meson-remove-extraneous-positional-argument.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot/0001-meson-remove-extraneous-positional-argument.patch
new file mode 100644
index 0000000..c80fda6
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot/0001-meson-remove-extraneous-positional-argument.patch
@@ -0,0 +1,36 @@
+From c38c604b06a63f690d67318d4ef97ac556264876 Mon Sep 17 00:00:00 2001
+From: Jack Hill <jackhill@jackhill.us>
+Date: Thu, 18 Nov 2021 00:46:58 -0500
+Subject: [PATCH] meson: remove extraneous positional argument
+
+* data/meson.build (desktop_file)
+  (metainfo_file): Remove extraneous positional argument.
+
+Closes #186
+
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ data/meson.build | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/data/meson.build b/data/meson.build
+index fd570b3..4e2e2e8 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -1,7 +1,6 @@
+ gnome = import('gnome')
+ 
+ desktop_file = i18n.merge_file(
+-  'desktop',
+   type: 'desktop',
+   input: 'org.gnome.Screenshot.desktop.in',
+   output: 'org.gnome.Screenshot.desktop',
+@@ -23,7 +22,6 @@ if desktop_file_validate.found()
+ endif
+ 
+ metainfo_file = i18n.merge_file(
+-  'appdata',
+   input: 'org.gnome.Screenshot.metainfo.xml.in',
+   output: 'org.gnome.Screenshot.metainfo.xml',
+   po_dir: join_paths(meson.current_source_dir(), '../po'),
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot_40.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot_41.0.bb
similarity index 76%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot_40.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot_41.0.bb
index 72272f9..18d73d8 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot_40.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot_41.0.bb
@@ -10,7 +10,8 @@
 
 inherit features_check gnomebase gettext upstream-version-is-even pkgconfig
 
-SRC_URI[archive.sha256sum] = "368ca95a39e39dc2406c849e8c4205e3f574acdd874c30741873455e3d21a5e2"
+SRC_URI += " file://0001-meson-remove-extraneous-positional-argument.patch"
+SRC_URI[archive.sha256sum] = "4adb7dec926428f74263d5796673cf142e4720b6e768f5468a8d0933f98c9597"
 
 DEPENDS += "glib-2.0 glib-2.0-native gtk+3 libhandy xext"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-session/gnome-session_3.36.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-session/gnome-session_41.3.bb
similarity index 84%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-session/gnome-session_3.36.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-session/gnome-session_41.3.bb
index 3fdcfd8..010f815 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-session/gnome-session_3.36.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-session/gnome-session_41.3.bb
@@ -11,7 +11,7 @@
     libsm \
     virtual/libx11 \
     gtk+3 \
-    gnome-desktop3 \
+    gnome-desktop \
     gsettings-desktop-schemas \
     json-glib \
 "
@@ -22,8 +22,7 @@
 
 REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam gobject-introspection-data"
 
-SRC_URI[archive.md5sum] = "cd23e30c4991ca1f477020c67ea3a540"
-SRC_URI[archive.sha256sum] = "d54b38b818c812f64b82cc6a1279e3ca5a6e391ee662793322a38cab5670bb7a"
+SRC_URI[archive.sha256sum] = "ee4a229053f522624054889609335b885287cf67bbde0dc9fd882b01ec9b5b39"
 
 PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', 'consolekit',d)}"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon/0001-build-remove-positional-i18n.merge_file-arguments.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon/0001-build-remove-positional-i18n.merge_file-arguments.patch
new file mode 100644
index 0000000..cb758c7
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon/0001-build-remove-positional-i18n.merge_file-arguments.patch
@@ -0,0 +1,40 @@
+From 56535d2f1ec64e847e5fbd0613e78bd0dc046519 Mon Sep 17 00:00:00 2001
+From: Michal Vasilek <michal@vasilek.cz>
+Date: Fri, 14 Jan 2022 23:55:06 +0100
+Subject: [PATCH] build: remove positional i18n.merge_file arguments
+
+otherwise building with meson 0.61+ fails:
+
+    ERROR: Function does not take positional arguments.
+
+Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/merge_requests/281]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ plugins/power/meson.build | 1 -
+ plugins/wacom/meson.build | 1 -
+ 2 files changed, 2 deletions(-)
+
+diff --git a/plugins/power/meson.build b/plugins/power/meson.build
+index 69e619f..014bb6d 100644
+--- a/plugins/power/meson.build
++++ b/plugins/power/meson.build
+@@ -76,7 +76,6 @@ if host_is_linux
+   )
+ 
+   i18n.merge_file(
+-    policy,
+     input: policy_in,
+     output: policy,
+     po_dir: po_dir,
+diff --git a/plugins/wacom/meson.build b/plugins/wacom/meson.build
+index d8dd0ec..c00323d 100644
+--- a/plugins/wacom/meson.build
++++ b/plugins/wacom/meson.build
+@@ -7,7 +7,6 @@ policy_in = configure_file(
+ )
+ 
+ i18n.merge_file(
+-  policy,
+   input: policy_in,
+   output: policy,
+   po_dir: po_dir,
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.36.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_41.0.bb
similarity index 80%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.36.1.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_41.0.bb
index 171e46e..78d6811 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_3.36.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_41.0.bb
@@ -10,7 +10,7 @@
     colord \
     geocode-glib \
     gcr \
-    gnome-desktop3 \
+    gnome-desktop \
     libgweather \
     lcms \
     libcanberra \
@@ -23,11 +23,10 @@
 
 # all these are mandatory
 REQUIRED_DISTRO_FEATURES = "x11 polkit pulseaudio systemd gobject-introspection-data"
+GIR_MESON_OPTION = ""
 
-SRC_URI[archive.md5sum] = "102dc488a6a726e4050cf5ab7e967e8d"
-SRC_URI[archive.sha256sum] = "3e33dbd319b562a5ab602dcab6de3ca81b85f8346672e90ec632b36bbf15ee4b"
-
-UNKNOWN_CONFIGURE_WHITELIST = "introspection"
+SRC_URI += " file://0001-build-remove-positional-i18n.merge_file-arguments.patch"
+SRC_URI[archive.sha256sum] = "e6ca6361fbd1deab2de1a1e390d4f14167cf47b1c547dbb8b65a5d89e9663884"
 
 PACKAGECONFIG ??= " \
     cups nm \
@@ -44,5 +43,5 @@
 
 FILES:${PN} += " \
     ${systemd_user_unitdir} \
-    ${libdir}/gnome-settings-daemon-3.0/libgsd.so \
+    ${libdir}/gnome-settings-daemon-41/libgsd.so \
 "
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell-extensions_3.34.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell-extensions_3.34.2.bb
deleted file mode 100644
index f74a853..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell-extensions_3.34.2.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-SUMMARY = "GNOME Shell Extensions"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=4cb3a392cbf81a9e685ec13b88c4c101"
-
-GNOMEBASEBUILDCLASS = "meson"
-
-inherit gnomebase gettext gsettings features_check upstream-version-is-even
-
-REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam gobject-introspection-data"
-
-SRC_URI[archive.md5sum] = "d3a69cde0c3e3dc0b0c243af026c4b7a"
-SRC_URI[archive.sha256sum] = "a1e16e75a06ea511435a6f7478de92aff21d02d4e1d59ec8ce7fb6396819b4b8"
-
-DEPENDS += " \
-    sassc-native \
-"
-
-EXTRA_OEMESON += " \
-    -Dextension_set=all \
-    -Dclassic_mode=true \
-"
-
-RDEPENDS:${PN} += "gnome-shell"
-
-FILES:${PN} += " \
-    ${datadir}/gnome-shell \
-    ${datadir}/gnome-session \
-    ${datadir}/xsessions \
-"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell-extensions_41.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell-extensions_41.1.bb
new file mode 100644
index 0000000..16184f2
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell-extensions_41.1.bb
@@ -0,0 +1,35 @@
+SUMMARY = "GNOME Shell Extensions"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4cb3a392cbf81a9e685ec13b88c4c101"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+inherit gnomebase gettext gsettings features_check
+
+REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam gobject-introspection-data"
+
+SRC_URI[archive.sha256sum] = "d0e6f2273f08d52d925fc2bb66b47b28e5ef50d1b8a14020877c662423d507d3"
+
+DEPENDS += " \
+    sassc-native \
+"
+
+EXTRA_OEMESON += " \
+    -Dextension_set=all \
+    -Dclassic_mode=true \
+"
+
+do_install:append() {
+    # enable gnome-classic session for wayland
+    install -d ${D}${datadir}/wayland-sessions
+    install -m644 ${D}${datadir}/xsessions/gnome-classic.desktop ${D}${datadir}/wayland-sessions/
+}
+
+RDEPENDS:${PN} += "gnome-shell"
+
+FILES:${PN} += " \
+    ${datadir}/gnome-shell \
+    ${datadir}/gnome-session \
+    ${datadir}/wayland-sessions \
+    ${datadir}/xsessions \
+"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0001-Introduce-options-gjs_path-to-optionally-set-path-to.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0001-Introduce-options-gjs_path-to-optionally-set-path-to.patch
new file mode 100644
index 0000000..15e3c8c
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0001-Introduce-options-gjs_path-to-optionally-set-path-to.patch
@@ -0,0 +1,112 @@
+From 3bf597b16e23cd2ce0ee3b05c23b46add5e26cd4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Thu, 28 Oct 2021 18:57:24 +0200
+Subject: [PATCH] Introduce options 'gjs_path' to optionally set path to gjs
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ js/dbusServices/meson.build                  | 2 +-
+ meson.build                                  | 6 +++++-
+ meson_options.txt                            | 6 ++++++
+ subprojects/extensions-app/js/meson.build    | 2 +-
+ subprojects/extensions-app/meson.build       | 7 ++++++-
+ subprojects/extensions-app/meson_options.txt | 6 ++++++
+ 6 files changed, 25 insertions(+), 4 deletions(-)
+
+diff --git a/js/dbusServices/meson.build b/js/dbusServices/meson.build
+index 68e8bd12d..16efaebe5 100644
+--- a/js/dbusServices/meson.build
++++ b/js/dbusServices/meson.build
+@@ -27,7 +27,7 @@ foreach service, dir : dbus_services
+ 
+   serviceconf = configuration_data()
+   serviceconf.set('service', service)
+-  serviceconf.set('gjs', gjs.path())
++  serviceconf.set('gjs', gjs)
+   serviceconf.set('pkgdatadir', pkgdatadir)
+ 
+   configure_file(
+diff --git a/meson.build b/meson.build
+index d4583ecf2..3448c6312 100644
+--- a/meson.build
++++ b/meson.build
+@@ -138,7 +138,11 @@ endif
+ 
+ mutter_typelibdir = mutter_dep.get_pkgconfig_variable('typelibdir')
+ python = find_program('python3')
+-gjs = find_program('gjs')
++if get_option('gjs_path') == ''
++  gjs = find_program('gjs')
++else
++  gjs = get_option('gjs_path')
++endif
+ 
+ cc = meson.get_compiler('c')
+ 
+diff --git a/meson_options.txt b/meson_options.txt
+index f0f2ecf6c..a45f2e453 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -45,3 +45,9 @@ option('soup2',
+   value: true,
+   description: 'Use Soup 2.4 instead of Soup 3. Must be in sync with libgweather'
+ )
++
++option('gjs_path',
++  type: 'string',
++  value: '',
++  description: 'Instead of searching gjs executable, configure path'
++)
+diff --git a/subprojects/extensions-app/js/meson.build b/subprojects/extensions-app/js/meson.build
+index f311db6e0..8f7bba4e4 100644
+--- a/subprojects/extensions-app/js/meson.build
++++ b/subprojects/extensions-app/js/meson.build
+@@ -9,7 +9,7 @@ endif
+ launcherconf.set('prefix', prefix)
+ launcherconf.set('libdir', libdir)
+ launcherconf.set('pkgdatadir', pkgdatadir)
+-launcherconf.set('gjs', gjs.path())
++launcherconf.set('gjs', gjs)
+ 
+ configure_file(
+   input: prgname + '.in',
+diff --git a/subprojects/extensions-app/meson.build b/subprojects/extensions-app/meson.build
+index f9ccfc24d..bdf118975 100644
+--- a/subprojects/extensions-app/meson.build
++++ b/subprojects/extensions-app/meson.build
+@@ -44,7 +44,12 @@ localedir = join_paths(datadir, 'locale')
+ metainfodir = join_paths(datadir, 'metainfo')
+ servicedir = join_paths(datadir, 'dbus-1', 'services')
+ 
+-gjs = find_program('gjs')
++if get_option('gjs_path') == ''
++  gjs = find_program('gjs')
++else
++  gjs = get_option('gjs_path')
++endif
++
+ appstream_util = find_program('appstream-util', required: false)
+ desktop_file_validate = find_program('desktop-file-validate', required: false)
+ 
+diff --git a/subprojects/extensions-app/meson_options.txt b/subprojects/extensions-app/meson_options.txt
+index ca2eb4115..2787785bf 100644
+--- a/subprojects/extensions-app/meson_options.txt
++++ b/subprojects/extensions-app/meson_options.txt
+@@ -10,3 +10,9 @@ option('profile',
+   ],
+   value: 'default'
+ )
++
++option('gjs_path',
++  type: 'string',
++  value: '',
++  description: 'Instead of searching gjs executable, configure path'
++)
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0001-build-Drop-incorrect-positional-arg.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0001-build-Drop-incorrect-positional-arg.patch
new file mode 100644
index 0000000..edc32de
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0001-build-Drop-incorrect-positional-arg.patch
@@ -0,0 +1,81 @@
+From 6f797c21703ce9e996da17c49879e2a16dfbc256 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
+Date: Thu, 23 Dec 2021 17:18:16 +0100
+Subject: [PATCH] build: Drop incorrect positional arg
+
+Unlike other targets that take a name, i18n.merge_file() does not.
+
+Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2078>
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ data/meson.build                                      | 2 +-
+ src/calendar-server/meson.build                       | 2 +-
+ subprojects/extensions-app/data/meson.build           | 2 +-
+ subprojects/extensions-app/data/metainfo/meson.build  | 2 +-
+ subprojects/extensions-tool/src/templates/meson.build | 2 +-
+ 5 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/data/meson.build b/data/meson.build
+index f924fdf..76ae45c 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -16,7 +16,7 @@ desktopconf.set('bindir', bindir)
+ desktopconf.set('systemd_hidden', have_systemd ? 'true' : 'false')
+ 
+ foreach desktop_file : desktop_files
+-  i18n.merge_file('desktop',
++  i18n.merge_file(
+     input: configure_file(
+       input: desktop_file + '.in.in',
+       output: desktop_file + '.in',
+diff --git a/src/calendar-server/meson.build b/src/calendar-server/meson.build
+index 7363282..8b4ef41 100644
+--- a/src/calendar-server/meson.build
++++ b/src/calendar-server/meson.build
+@@ -27,7 +27,7 @@ configure_file(
+   install_dir: servicedir
+ )
+ 
+-i18n.merge_file('evolution-calendar.desktop',
++i18n.merge_file(
+   input: 'evolution-calendar.desktop.in',
+   output: 'evolution-calendar.desktop',
+   po_dir: po_dir,
+diff --git a/subprojects/extensions-app/data/meson.build b/subprojects/extensions-app/data/meson.build
+index d7e7d40..4b601e8 100644
+--- a/subprojects/extensions-app/data/meson.build
++++ b/subprojects/extensions-app/data/meson.build
+@@ -14,7 +14,7 @@ desktopconf.set('bindir', bindir)
+ desktopconf.set('app_id', app_id)
+ desktopconf.set('prgname', prgname)
+ 
+-i18n.merge_file('desktop',
++i18n.merge_file(
+   input: configure_file(
+     input: base_id + '.desktop.in.in',
+     output: desktop_file + '.in',
+diff --git a/subprojects/extensions-app/data/metainfo/meson.build b/subprojects/extensions-app/data/metainfo/meson.build
+index c4962c0..a19bfa8 100644
+--- a/subprojects/extensions-app/data/metainfo/meson.build
++++ b/subprojects/extensions-app/data/metainfo/meson.build
+@@ -1,5 +1,5 @@
+ metainfo = app_id + '.metainfo.xml'
+-i18n.merge_file(metainfo,
++i18n.merge_file(
+   input: base_id + '.metainfo.xml.in',
+   output: metainfo,
+   po_dir: po_dir,
+diff --git a/subprojects/extensions-tool/src/templates/meson.build b/subprojects/extensions-tool/src/templates/meson.build
+index 670e2bf..d693bfa 100644
+--- a/subprojects/extensions-tool/src/templates/meson.build
++++ b/subprojects/extensions-tool/src/templates/meson.build
+@@ -4,7 +4,7 @@ template_metas = [
+ ]
+ template_deps = []
+ foreach template : template_metas
+-  template_deps += i18n.merge_file(template,
++  template_deps += i18n.merge_file(
+     input: template + '.in',
+     output: template,
+     po_dir: po_dir,
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_3.34.5.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_41.2.bb
similarity index 74%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_3.34.5.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_41.2.bb
index b1aa519..d1b1989 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_3.34.5.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_41.2.bb
@@ -4,14 +4,14 @@
 
 GNOMEBASEBUILDCLASS = "meson"
 
-inherit gnomebase gsettings gettext gobject-introspection features_check upstream-version-is-even bash-completion
+inherit gnomebase gsettings gettext gobject-introspection features_check bash-completion
 
 REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam"
 
 DEPENDS = " \
     libxml2-native \
     sassc-native \
-    gtk+3 \
+    gtk4 \
     mutter \
     evolution-data-server \
     gcr \
@@ -25,13 +25,14 @@
 "
 
 GTKDOC_MESON_OPTION = "gtk_doc"
+GIR_MESON_OPTION = ""
 
 # gobject-introspection is mandatory and cannot be configured
 REQUIRED_DISTRO_FEATURES += "gobject-introspection-data"
-UNKNOWN_CONFIGURE_WHITELIST:append = " introspection"
 
-SRC_URI[archive.md5sum] = "4bd27c8a91d30fde78cb69b94677cf1f"
-SRC_URI[archive.sha256sum] = "d296f318a74a6d7883358a6ce1c4d8808b7903dbbb4f9c61ab4230f18e6d7550"
+SRC_URI[archive.sha256sum] = "384651eb051393dbabe006d1ad057bf29d5cd73ebb87bc779ff5e1c31e80a827"
+SRC_URI += "file://0001-Introduce-options-gjs_path-to-optionally-set-path-to.patch"
+SRC_URI += "  file://0001-build-Drop-incorrect-positional-arg.patch"
 
 PACKAGECONFIG ??= "bluetooth nm ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
 PACKAGECONFIG[bluetooth] = ",,gnome-bluetooth"
@@ -39,6 +40,9 @@
 PACKAGECONFIG[systemd] = "-Dsystemd=true, -Dsystemd=false, systemd"
 
 EXTRA_OEMESON = " \
+    -Dgjs_path=${bindir}/gjs \
+    -Dextensions-app:gjs_path=${bindir}/gjs \
+    -Dtests=false \
     -Dman=false \
 "
 
@@ -52,13 +56,14 @@
 GSETTINGS_PACKAGE = "${PN}-gsettings"
 
 FILES:${PN} += " \
+    ${datadir}/metainfo \
     ${datadir}/dbus-1 \
     ${datadir}/gnome-control-center \
     ${datadir}/xdg-desktop-portal \
     ${systemd_user_unitdir} \
 "
 
-RDEPENDS:${PN} += "gsettings-desktop-schemas gdm-base librsvg-gtk ${PN}-gsettings"
+RDEPENDS:${PN} += "gnome-desktop gsettings-desktop-schemas gdm-base librsvg-gtk ${PN}-gsettings"
 
 PACKAGES =+ "${PN}-tools ${PN}-gsettings"
 FILES:${PN}-tools = "${bindir}/*-tool"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_40.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_41.0.bb
similarity index 88%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_40.1.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_41.0.bb
index 01f0619..9b573d0 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_40.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_41.0.bb
@@ -22,7 +22,7 @@
 def gnome_verdir(v):
     return oe.utils.trim_version(v, 1)
 
-SRC_URI[archive.sha256sum] = "fdb30f4367907aab86d7c2bb76a7b773ba850b765c9666a39f42abfe22691d1a"
+SRC_URI[archive.sha256sum] = "c7fc44c61949b794b0289968ebbbcc0c15f8cfc3d9e45bfaa81ed45c12139e5f"
 
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
 PACKAGECONFIG[systemd] = "-Dsystemd=true, -Dsystemd=false, systemd"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
index a69390e..ef722a0 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
@@ -1,6 +1,6 @@
 From f231cecc151930fd5b6309da317a8c5bc6001f38 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Sun, 17 Nov 2019 15:55:54 +0100
+Date: Sat, 30 Oct 2021 15:10:28 +0200
 Subject: [PATCH] Add W_EXITCODE macro for non-glibc systems
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
@@ -10,14 +10,14 @@
 
 Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
 ---
- src/terminal.c | 6 ++++++
- 1 file changed, 6 insertions(+)
+ src/terminal.cc | 5 +++++
+ 1 file changed, 5 insertions(+)
 
-diff --git a/src/terminal.c b/src/terminal.c
-index d06ce35..6284e4c 100644
---- a/src/terminal.c
-+++ b/src/terminal.c
-@@ -47,6 +47,12 @@
+diff --git a/src/terminal.cc b/src/terminal.cc
+index 27ee91e..5f4d880 100644
+--- a/src/terminal.cc
++++ b/src/terminal.cc
+@@ -47,6 +47,11 @@
  GS_DEFINE_CLEANUP_FUNCTION0(TerminalOptions*, gs_local_options_free, terminal_options_free)
  #define gs_free_options __attribute__ ((cleanup(gs_local_options_free)))
  
@@ -26,10 +26,9 @@
 +#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
 +#endif
 +
-+
  /* Wait-for-exit helper */
  
  typedef struct {
 -- 
-2.21.0
+2.31.1
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-build-Fix-for-newer-meson.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-build-Fix-for-newer-meson.patch
new file mode 100644
index 0000000..12520b1
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-build-Fix-for-newer-meson.patch
@@ -0,0 +1,46 @@
+From f88447850e162c8d514be367db574c6fa2fec2a5 Mon Sep 17 00:00:00 2001
+From: Christian Persch <chpe@src.gnome.org>
+Date: Fri, 14 Jan 2022 11:33:32 +0100
+Subject: [PATCH] build: Fix for newer meson
+
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ data/meson.build | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/data/meson.build b/data/meson.build
+index 79d97e5..e0bcbb9 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -18,7 +18,6 @@
+ metainfodir = gt_datadir / 'metainfo'
+ 
+ i18n.merge_file(
+-  gt_dns_name + '.metainfo.xml',
+   input: gt_dns_name + '.metainfo.xml.in',
+   output: '@BASENAME@',
+   po_dir: po_dir,
+@@ -27,7 +26,6 @@ i18n.merge_file(
+ )
+ 
+ i18n.merge_file(
+-  gt_dns_name + '.Nautilus.metainfo.xml',
+   input: gt_dns_name + '.Nautilus.metainfo.xml.in',
+   output: '@BASENAME@',
+   po_dir: po_dir,
+@@ -40,7 +38,6 @@ i18n.merge_file(
+ desktopdatadir = gt_datadir / 'applications'
+ 
+ i18n.merge_file(
+-  gt_dns_name + '.desktop',
+   input: gt_dns_name + '.desktop.in',
+   output: '@BASENAME@',
+   type: 'desktop',
+@@ -57,4 +54,4 @@ meson.add_install_script(
+ 
+ # Subdirs
+ 
+-subdir('icons')
+\ No newline at end of file
++subdir('icons')
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.40.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.42.2.bb
similarity index 73%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.40.2.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.42.2.bb
index 88fb5d7..2b3f3a6 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.40.2.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.42.2.bb
@@ -5,6 +5,8 @@
     file://COPYING.GFDL;md5=a22d0be1ce2284b67950a4d1673dd1b0 \
 "
 
+GNOMEBASEBUILDCLASS = "meson"
+
 inherit gnomebase gsettings gnome-help gettext itstool upstream-version-is-even
 
 DEPENDS = " \
@@ -20,12 +22,13 @@
     libpcre2 \
 "
 
-SRC_URI[archive.sha256sum] = "4c79af8ffe8bd3a5daca1911ea2c0acd6872860a1dd5d7eea219f4ab4ae556ac"
+SRC_URI[archive.sha256sum] = "8a9c8e5ef7a3a73b246a947e1190bb08ec98935af860cf0b3aa2fbf4606817a0"
 SRC_URI += "file://0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch"
+SRC_URI += "  file://0001-build-Fix-for-newer-meson.patch"
 
-EXTRA_OECONF += " \
-    --disable-search-provider \
-    --without-nautilus-extension \
+EXTRA_OEMESON += " \
+    -Dsearch_provider=false \
+    -Dnautilus_extension=false \
 "
 
 FILES:${PN} += " \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks/0001-Make-python-path-configurable.patch b/meta-openembedded/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks/0001-Make-python-path-configurable.patch
index 8129f85..733249c 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks/0001-Make-python-path-configurable.patch
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks/0001-Make-python-path-configurable.patch
@@ -16,14 +16,14 @@
  create mode 100644 meson_options.txt
 
 diff --git a/meson.build b/meson.build
-index b7da518..d58fb5b 100644
+index 5b824e9..a673d9c 100644
 --- a/meson.build
 +++ b/meson.build
-@@ -13,7 +13,7 @@ bindir = join_paths(prefix, get_option('bindir'))
+@@ -18,7 +18,7 @@ bindir = join_paths(prefix, get_option('bindir'))
  datadir = join_paths(prefix, get_option('datadir'))
  libexecdir = join_paths(prefix, get_option('libexecdir'))
  localedir = join_paths(prefix, get_option('localedir'))
--pythondir = join_paths(prefix, python3.sysconfig_path('purelib'))
+-pythondir = join_paths(prefix, python3.get_path('purelib'))
 +pythondir = get_option('python_site_dir')
  
  pkgdatadir = join_paths(datadir, meson.project_name())
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_3.34.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_40.0.bb
similarity index 77%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_3.34.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_40.0.bb
index 0fa0b31..30275c9 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_3.34.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_40.0.bb
@@ -9,17 +9,16 @@
 
 GNOMEBASEBUILDCLASS = "meson"
 
-inherit gnomebase gtk-icon-cache gobject-introspection features_check upstream-version-is-even
+inherit gnomebase gtk-icon-cache gobject-introspection features_check
 
 # same as gnome-shell
 REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam"
 
 # gobject-introspection is mandatory and cannot be configured
 REQUIRED_DISTRO_FEATURES += "gobject-introspection-data"
-UNKNOWN_CONFIGURE_WHITELIST:append = " introspection"
+GIR_MESON_OPTION = ""
 
-SRC_URI[archive.md5sum] = "a625d8b167c5549c68e1c6ac7a87d369"
-SRC_URI[archive.sha256sum] = "003326fab46e6faad9485924bca503f0c583e3b4553d6f673406eda396205250"
+SRC_URI[archive.sha256sum] = "f95f3fe031b0b01c02f79a1659f889152d3772ae3e44df8403d1460ba5eec36a"
 SRC_URI += "file://0001-Make-python-path-configurable.patch"
 
 EXTRA_OEMESON = "-Dpython_site_dir=${PYTHON_SITEPACKAGES_DIR}"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/graphene/graphene_1.10.6.bb b/meta-openembedded/meta-gnome/recipes-gnome/graphene/graphene_1.10.6.bb
deleted file mode 100644
index 77579ff..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/graphene/graphene_1.10.6.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "A thin layer of graphic data types"
-HOMEPAGE = "http://ebassi.github.io/graphene/"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=a7d871d9e23c450c421a85bb2819f648"
-
-#DEPENDS = "gtk+3 iso-codes enchant2"
-
-GNOMEBASEBUILDCLASS = "meson"
-
-inherit gnomebase gobject-introspection gtk-doc
-
-SRC_URI[archive.md5sum] = "390139e704772b915ff2b7cac56c24ae"
-SRC_URI[archive.sha256sum] = "80ae57723e4608e6875626a88aaa6f56dd25df75024bd16e9d77e718c3560b25"
-
-PACKAGECONFIG[introspection] = "-Dintrospection=enabled,-Dintrospection=disabled,"
-
-GTKDOC_MESON_OPTION = "gtk_doc"
-
-EXTRA_OEMESON = "-Dinstalled_tests=false"
-
-FILES:${PN} += "${libdir}/graphene-1.0"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/grilo/grilo-plugins_0.3.13.bb b/meta-openembedded/meta-gnome/recipes-gnome/grilo/grilo-plugins_0.3.14.bb
similarity index 82%
rename from meta-openembedded/meta-gnome/recipes-gnome/grilo/grilo-plugins_0.3.13.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/grilo/grilo-plugins_0.3.14.bb
index 2732374..028e1d2 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/grilo/grilo-plugins_0.3.13.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/grilo/grilo-plugins_0.3.14.bb
@@ -17,6 +17,6 @@
 inherit gnomebase gnome-help vala
 
 SRC_URI += "file://0001-Avoid-running-trackertestutils.patch"
-SRC_URI[archive.sha256sum] = "1c4305d67364a930543836cc1982f30e946973b8ff6af3efe31d87709ab520f8"
+SRC_URI[archive.sha256sum] = "686844b34ec73b24931ff6cc4f6033f0072947a6db60acdc7fb3eaf157a581c8"
 
 FILES:${PN} += "${libdir}/grilo-0.3"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/grilo/grilo_0.3.13.bb b/meta-openembedded/meta-gnome/recipes-gnome/grilo/grilo_0.3.14.bb
similarity index 89%
rename from meta-openembedded/meta-gnome/recipes-gnome/grilo/grilo_0.3.13.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/grilo/grilo_0.3.14.bb
index fe6858f..53d80c5 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/grilo/grilo_0.3.13.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/grilo/grilo_0.3.14.bb
@@ -11,7 +11,7 @@
 
 inherit gnomebase gobject-introspection gtk-doc gettext vala
 
-SRC_URI[archive.sha256sum] = "d14837f22341943ed8a189d9f0827a17016b802d18d0ed080e1413de0fdc927b"
+SRC_URI[archive.sha256sum] = "0369d0b00bb0f59ba5f7aea8cfc665f38df14a5b4182d28c7c1e2cd15b518743"
 
 GIR_MESON_OPTION = "enable-introspection"
 GTKDOC_MESON_OPTION = "enable-gtk-doc"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound/0001-Set-vapidir.patch b/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound/0001-Set-vapidir.patch
deleted file mode 100644
index ffccfd5..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound/0001-Set-vapidir.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 0a790273aca3ba07dfa6d2f61e3aaa7157c1a3bb Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 20 Mar 2021 09:22:18 -0700
-Subject: [PATCH] Set vapidir
-
-Use parentheses instead of braces, it makes automake and perl happy
-newer perl does not like ${} for VALAFLAGS
-
-Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.30), passed through in regex; marked by <-- HERE in m/^${ <-- HERE abs_top_builddir}/gsound$/ at TOPDIR/build/tmp/work/mips32r2-yoe-linux/gsound/1.0.2-r0/recipe-sysroot-native/usr/bin/automake line 5759.
-autoreconf: error: automake failed with exit status: 255
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- tools/Makefile.am | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -8,7 +8,7 @@ bin_PROGRAMS = gsound-play
- gsound_play_SOURCES = gsound-play.vala
- 
- gsound_play_VALAFLAGS = \
--    --vapidir ${abs_top_builddir}/gsound \
-+    --vapidir $(abs_top_builddir)/gsound \
-     --pkg gsound \
-     ${NULL}
- 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.2.bb
deleted file mode 100644
index 65ee1e1..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.2.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-SUMMARY = "Small gobject library for playing system sounds"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=447b837ae57f08b7060593ac6256163f"
-
-DEPENDS = " \
-    glib-2.0 \
-    libcanberra \
-"
-
-inherit gnomebase gettext gobject-introspection vala
-
-SRC_URI += "file://0001-Set-vapidir.patch"
-
-SRC_URI[archive.md5sum] = "c26fd21c21b9ef6533a202a73fab21db"
-SRC_URI[archive.sha256sum] = "bba8ff30eea815037e53bee727bbd5f0b6a2e74d452a7711b819a7c444e78e53"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.3.bb b/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.3.bb
new file mode 100644
index 0000000..7c79254
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gsound/gsound_1.0.3.bb
@@ -0,0 +1,14 @@
+SUMMARY = "Small gobject library for playing system sounds"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=447b837ae57f08b7060593ac6256163f"
+
+DEPENDS = " \
+    glib-2.0 \
+    libcanberra \
+"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+inherit gnomebase gettext gobject-introspection vala
+
+SRC_URI[archive.sha256sum] = "ca2d039e1ebd148647017a7f548862350bc9af01986d39f10cfdc8e95f07881a"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gspell/gspell_1.9.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gspell/gspell_1.9.1.bb
index d6de146..aba9be8 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gspell/gspell_1.9.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gspell/gspell_1.9.1.bb
@@ -5,6 +5,6 @@
 
 DEPENDS = "gtk+3 iso-codes enchant2"
 
-inherit gnomebase gettext gobject-introspection
+inherit gnomebase gettext gobject-introspection vala
 
 SRC_URI[archive.sha256sum] = "dcbb769dfdde8e3c0a8ed3102ce7e661abbf7ddf85df08b29915e92cd723abdd"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gthumb/gthumb/0001-LINGUAS-removed-duplicated-entry.patch b/meta-openembedded/meta-gnome/recipes-gnome/gthumb/gthumb/0001-LINGUAS-removed-duplicated-entry.patch
new file mode 100644
index 0000000..b50b175
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gthumb/gthumb/0001-LINGUAS-removed-duplicated-entry.patch
@@ -0,0 +1,23 @@
+From f3d399892e59a2e850be1d0de30c429417c78360 Mon Sep 17 00:00:00 2001
+From: Paolo Bacchilega <paobac@src.gnome.org>
+Date: Tue, 11 Jan 2022 12:30:44 +0100
+Subject: [PATCH] LINGUAS: removed duplicated entry
+
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ help/LINGUAS | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/help/LINGUAS b/help/LINGUAS
+index 0e8a52d..fa1fc3e 100644
+--- a/help/LINGUAS
++++ b/help/LINGUAS
+@@ -8,7 +8,6 @@ eu
+ fr
+ hu
+ id
+-id
+ nl
+ oc
+ sl
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gthumb/gthumb_3.10.3.bb b/meta-openembedded/meta-gnome/recipes-gnome/gthumb/gthumb_3.12.0.bb
similarity index 78%
rename from meta-openembedded/meta-gnome/recipes-gnome/gthumb/gthumb_3.10.3.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gthumb/gthumb_3.12.0.bb
index bae13e1..e9c52f3 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gthumb/gthumb_3.10.3.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gthumb/gthumb_3.12.0.bb
@@ -26,6 +26,7 @@
 
 inherit features_check gnomebase gnome-help gsettings itstool mime-xdg
 
-SRC_URI[archive.sha256sum] = "dab73f77cc2963ebe90112972c301441d228af3003cfef3f8b7300a6d5d3c212"
+SRC_URI += " file://0001-LINGUAS-removed-duplicated-entry.patch"
+SRC_URI[archive.sha256sum] = "3deffc030384e64b57361c437c79b481ae1489ef44c87ae856e81bb10d8e383f"
 
 FILES:${PN} += "${datadir}/metainfo"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gtk4/gtk4_4.4.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gtk4/gtk4_4.4.0.bb
new file mode 100644
index 0000000..07ee853
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gtk4/gtk4_4.4.0.bb
@@ -0,0 +1,141 @@
+SUMMARY = "Multi-platform toolkit for creating GUIs"
+DESCRIPTION = "GTK is a multi-platform toolkit for creating graphical user interfaces. Offering a complete \
+set of widgets, GTK is suitable for projects ranging from small one-off projects to complete application suites."
+HOMEPAGE = "http://www.gtk.org"
+BUGTRACKER = "https://bugzilla.gnome.org/"
+SECTION = "libs"
+
+DEPENDS = " \
+    sassc-native \
+    glib-2.0 \
+    libepoxy \
+    graphene \
+    cairo \
+    pango \
+    atk \
+    jpeg \
+    libpng \
+    gdk-pixbuf-native gdk-pixbuf \
+"
+
+LICENSE = "LGPL-2.0-only & LGPL-2.0-or-later & LGPL-2.1-or-later"
+LIC_FILES_CHKSUM = " \
+    file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
+    file://gtk/gtk.h;endline=25;md5=1d8dc0fccdbfa26287a271dce88af737 \
+    file://gdk/gdk.h;endline=25;md5=c920ce39dc88c6f06d3e7c50e08086f2 \
+    file://tests/testgtk.c;endline=25;md5=49d06770681b8322466b52ed19d29fb2 \
+"
+
+MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
+
+UPSTREAM_CHECK_REGEX = "gtk-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)\.tar.xz"
+
+SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk/${MAJ_VER}/gtk-${PV}.tar.xz"
+SRC_URI[sha256sum] = "e0a1508f441686c3a20dfec48af533b19a4b2e017c18eaee31dccdb7d292505b"
+
+S = "${WORKDIR}/gtk-${PV}"
+
+inherit meson gettext pkgconfig gtk-doc update-alternatives gsettings features_check gobject-introspection
+
+# TBD: nativesdk
+# gobject-introspection.bbclass pins introspection off for nativesk. As long as
+# we do not remove this wisdom or hack gtk4, it is not possible to build
+# nativesdk-gtk4
+BBCLASSEXTEND = "native"
+
+GSETTINGS_PACKAGE:class-native = ""
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+GIR_MESON_ENABLE_FLAG = 'enabled'
+GIR_MESON_DISABLE_FLAG = 'disabled'
+GTKDOC_MESON_OPTION = 'gtk_doc'
+
+# ../gtk-4.4.0/testsuite/reftests/gtk-reftest.c:28:10: fatal error: execinfo.h: No such file or directory
+EXTRA_OEMESON:append:libc-musl = " -Dbuild-tests=false"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}"
+PACKAGECONFIG:class-native = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
+PACKAGECONFIG:class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
+
+PACKAGECONFIG[x11] = "-Dx11-backend=true,-Dx11-backend=false,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes xinerama"
+PACKAGECONFIG[wayland] = "-Dwayland-backend=true,-Dwayland-backend=false,wayland wayland-protocols libxkbcommon virtual/egl virtual/libgles2 wayland-native"
+PACKAGECONFIG[cups] = "-Dprint-cups=enabled,-Dprint-cups=disabled,cups"
+PACKAGECONFIG[colord] = "-Dcolord=enabled,-Dcolord=disabled,colord"
+# gtk4 wants gstreamer-player-1.0 -> gstreamer1.0-plugins-bad
+PACKAGECONFIG[gstreamer] = "-Dmedia-gstreamer=enabled,-Dmedia-gstreamer=disabled,gstreamer1.0-plugins-bad"
+PACKAGECONFIG[tracker] = "-Dtracker=enabled,-Dtracker=disabled,tracker"
+
+
+do_compile:prepend() {
+    export GIR_EXTRA_LIBS_PATH="${B}/gdk/.libs"
+}
+
+
+PACKAGES =+ "${PN}-demo"
+LIBV = "4.0.0"
+
+FILES:${PN}-demo = " \
+    ${datadir}/applications/org.gtk.Demo4.desktop \
+    ${datadir}/applications/org.gtk.IconBrowser4.desktop \
+    ${datadir}/applications/org.gtk.WidgetFactory4.desktop \
+    ${datadir}/icons/hicolor/*/apps/org.gtk.Demo4*.* \
+    ${datadir}/icons/hicolor/*/apps/org.gtk.IconBrowser4*.* \
+    ${datadir}/icons/hicolor/*/apps/org.gtk.WidgetFactory4*.* \
+    ${bindir}/gtk4-demo \
+    ${bindir}/gtk4-demo-application \
+    ${bindir}/gtk4-icon-browser \
+    ${bindir}/gtk4-widget-factory \
+"
+
+FILES:${PN}:append = " \
+    ${datadir}/glib-2.0/schemas/ \
+    ${datadir}/gtk-4.0/emoji/ \
+    ${datadir}/metainfo/ \
+    ${datadir}/icons/hicolor/*/apps/org.gtk.PrintEditor4*.* \
+    ${libdir}/gtk-4.0/${LIBV}/printbackends \
+    ${bindir}/gtk4-update-icon-cache \
+    ${bindir}/gtk4-launch \
+"
+
+FILES:${PN}-dev += " \
+    ${datadir}/gtk-4.0/gtk4builder.rng \
+    ${datadir}/gtk-4.0/include \
+    ${datadir}/gtk-4.0/valgrind \
+    ${datadir}/gettext/its \
+    ${bindir}/gtk4-builder-tool \
+    ${bindir}/gtk4-encode-symbolic-svg \
+    ${bindir}/gtk4-query-settings \
+"
+
+GTKBASE_RRECOMMENDS ?= " \
+    liberation-fonts \
+    gdk-pixbuf-loader-png \
+    gdk-pixbuf-loader-jpeg \
+    gdk-pixbuf-loader-gif \
+    gdk-pixbuf-loader-xpm \
+    shared-mime-info \
+    adwaita-icon-theme-symbolic \
+"
+
+GTKBASE_RRECOMMENDS:class-native ?= ""
+
+GTKGLIBC_RRECOMMENDS ?= "${GTKBASE_RRECOMMENDS} glibc-gconv-iso8859-1"
+
+RRECOMMENDS:${PN} = "${GTKBASE_RRECOMMENDS}"
+RRECOMMENDS:${PN}:libc-glibc = "${GTKGLIBC_RRECOMMENDS}"
+RDEPENDS:${PN}-dev += "${@bb.utils.contains("PACKAGECONFIG", "wayland", "wayland-protocols", "", d)}"
+
+PACKAGES_DYNAMIC += "^gtk4-printbackend-.*"
+python populate_packages:prepend () {
+    import os.path
+
+    gtk_libdir = d.expand('${libdir}/gtk-3.0/${LIBV}')
+    printmodules_root = os.path.join(gtk_libdir, 'printbackends');
+
+    do_split_packages(d, printmodules_root, r'^libprintbackend-(.*)\.so$', 'gtk4-printbackend-%s', 'GTK printbackend module for %s')
+
+    if (d.getVar('DEBIAN_NAMES')):
+        d.setVar(d.expand('PKG:${PN}'), '${MLPREFIX}libgtk-4.0')
+}
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.8.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.8.2.bb
similarity index 92%
rename from meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.8.1.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.8.2.bb
index 10b60be..5b5ce53 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.8.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.8.2.bb
@@ -17,7 +17,7 @@
 REQUIRED_DISTRO_FEATURES = "x11"
 
 SRC_URI = "https://download.gnome.org/sources/gtksourceview/4.8/${PNAME}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "d163d71b5fcafbc5b1eec6dd841edbdbcddd3a7511cd5fdcffd86b8bbfe69ac1"
+SRC_URI[sha256sum] = "842de7e5cb52000fd810e4be39cd9fe29ffa87477f15da85c18f7b82d45637cc"
 
 GIR_MESON_OPTION = 'gir'
 GTKDOC_MESON_OPTION = "gtk_doc"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview5_5.2.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview5_5.2.0.bb
new file mode 100644
index 0000000..c7c6e92
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview5_5.2.0.bb
@@ -0,0 +1,34 @@
+SUMMARY = "Portable C library for multiline text editing"
+HOMEPAGE = "http://projects.gnome.org/gtksourceview/"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+
+DEPENDS = " \
+    glib-2.0-native \
+    gnome-common-native \
+    intltool-native \
+    gtk+3 \
+    gtk4 \
+    libxml2 \
+    libpcre2 \
+"
+
+PNAME = "gtksourceview"
+
+S = "${WORKDIR}/${PNAME}-${PV}"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+inherit gnomebase lib_package gettext features_check gtk-doc gtk-icon-cache gobject-introspection vala
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI = "https://download.gnome.org/sources/gtksourceview/5.2/${PNAME}-${PV}.tar.xz"
+SRC_URI[sha256sum] = "c9b34fa02654f56ce22fa08827d89db4ba81631b2e6d7d31ea65d13c729430e9"
+
+GIR_MESON_ENABLE_FLAG = 'enabled'
+GIR_MESON_DISABLE_FLAG = 'disabled'
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+FILES:${PN} += "${datadir}/gtksourceview-5"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libchamplain/libchamplain_0.12.20.bb b/meta-openembedded/meta-gnome/recipes-gnome/libchamplain/libchamplain_0.12.20.bb
index 9b99bbc..51ca63e 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/libchamplain/libchamplain_0.12.20.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/libchamplain/libchamplain_0.12.20.bb
@@ -8,7 +8,7 @@
 REQUIRED_DISTRO_FEATURES = "opengl"
 
 SRCREV = "145e417f32e507b63c21ad4e915b808a6174099e"
-SRC_URI = "git://github.com/gnome/libchamplain.git"
+SRC_URI = "git://github.com/gnome/libchamplain.git;branch=master;protocol=https"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libgdata/libgdata_0.18.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/libgdata/libgdata_0.18.1.bb
index aaefcec..a1be2a2 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/libgdata/libgdata_0.18.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/libgdata/libgdata_0.18.1.bb
@@ -22,7 +22,7 @@
 }
 
 # goa is required for gnome-photos
-PACKAGECONFIG ??= "goa gtk"
+PACKAGECONFIG ??= "goa gtk vala"
 PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false"
 PACKAGECONFIG[goa] = "-Dgoa=enabled,-Dgoa=disabled,gnome-online-accounts"
 PACKAGECONFIG[gtk] = "-Dgtk=enabled,-Dgtk=disabled,gtk+3"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.47.bb b/meta-openembedded/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.48.bb
similarity index 79%
rename from meta-openembedded/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.47.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.48.bb
index 8748a02..a3ff13f 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.47.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.48.bb
@@ -9,8 +9,7 @@
 
 inherit gnomebase gobject-introspection gettext gtk-doc
 
-SRC_URI[archive.md5sum] = "20bf9933128210d7a9f920a34198d22f"
-SRC_URI[archive.sha256sum] = "d188ebd3787b5375a8fd38ee6f761a2007de5e98fa0cf5623f271daa67ba774d"
+SRC_URI[archive.sha256sum] = "ff86d7f1d46dd0ebefb7bd830a74a41db64362b987bf8853fff6ab4c1132b837"
 SRC_URI += "file://0001-configure.ac-drop-a-copy-paste-of-introspection.m4-m.patch"
 
 PACKAGECONFIG ??= ""
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libgtkstylus/files/gtkstylus.sh b/meta-openembedded/meta-gnome/recipes-gnome/libgtkstylus/files/gtkstylus.sh
deleted file mode 100644
index b1302ed..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/libgtkstylus/files/gtkstylus.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-GTK_MODULES=libgtkstylus.so
-
-export GTK_MODULES
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb b/meta-openembedded/meta-gnome/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb
deleted file mode 100644
index 2a6e185..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-SUMMARY = "GTK plugin for stylus based systems"
-SECTION = "libs"
-DEPENDS = "gtk+"
-LICENSE = "LGPL-2.0+"
-LIC_FILES_CHKSUM = "file://tap.c;beginline=1;endline=20;md5=71756eeb144e9eeb177c69aa672b1635"
-PR = "r4"
-
-inherit features_check autotools pkgconfig
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI = "http://burtonini.com/temp/${BP}.tar.gz \
-    file://gtkstylus.sh"
-SRC_URI[md5sum] = "fa1c82cd9fd2fafd7ff10d78eb5781c5"
-SRC_URI[sha256sum] = "383e0a22a537f653b8d41688277560f95678a042967198085ec7caa1a5cc2f4c"
-
-do_install:append() {
-    install -d ${D}/${sysconfdir}/X11/Xsession.d
-    install -m 755 ${WORKDIR}/gtkstylus.sh ${D}/${sysconfdir}/X11/Xsession.d/45gtkstylus
-}
-
-# Horrible but rpm falls over if you use '*'
-GTKVER = "2.10.0"
-
-FILES:${PN} = "${sysconfdir} \
-               ${libdir}/gtk-2.0/${GTKVER}/modules/libgtkstylus.so.*"
-FILES:${PN}-dbg += "${libdir}/gtk-2.0/${GTKVER}/modules/.debug"
-FILES:${PN}-dev += "${libdir}/gtk-2.0/${GTKVER}/modules/libgtkstylus.so"
-FILES:${PN}-staticdev += "${libdir}/gtk-2.0/${GTKVER}/modules/libgtkstylus.*a"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libgweather/libgweather_40.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/libgweather/libgweather_40.0.bb
index 1d9daac..49493b1 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/libgweather/libgweather_40.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/libgweather/libgweather_40.0.bb
@@ -11,7 +11,7 @@
 
 # gobject-introspection is mandatory and cannot be configured
 REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
-UNKNOWN_CONFIGURE_WHITELIST:append = " introspection"
+GIR_MESON_OPTION = ""
 
 GTKDOC_MESON_OPTION = "gtk_doc"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libportal/libportal_0.5.bb b/meta-openembedded/meta-gnome/recipes-gnome/libportal/libportal_0.5.bb
new file mode 100644
index 0000000..67f63fe
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/libportal/libportal_0.5.bb
@@ -0,0 +1,17 @@
+SUMMARY = "libportal provides GIO-style async APIs for most Flatpak portals."
+DESCRIPTION = "It provides simple asynchronous wrappers for most Flatpak portals \
+with a familiar GObject API along side the D-Bus API"
+HOMEPAGE = "https://github.com/flatpak/libportal"
+BUGTRACKER = "https://github.com/flatpak/libportal/issues"
+LICENSE = "LGPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3000208d539ec061b899bce1d9ce9404"
+
+SRC_URI = "git://github.com/flatpak/${BPN}.git;protocol=https;branch=master"
+SRCREV = "467a397fd7996557f837cdc26ac07c01c62810e5"
+S = "${WORKDIR}/git"
+
+inherit meson gtk-doc gobject-introspection
+
+DEPENDS += "glib-2.0 glib-2.0-native gtk+3"
+
+EXTRA_OEMESON = "-Dbackends=gtk3 -Dvapi=false"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity/0001-drop-zenity-detection.patch b/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity/0001-drop-zenity-detection.patch
index 3493e51..315d4e4 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity/0001-drop-zenity-detection.patch
+++ b/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity/0001-drop-zenity-detection.patch
@@ -13,10 +13,10 @@
  1 file changed, 5 deletions(-)
 
 diff --git a/configure.ac b/configure.ac
-index 5f9e7e9..80b32c7 100644
+index 528b7d2..8932ae6 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -359,11 +359,6 @@ fi
+@@ -337,11 +337,6 @@ fi
  
  AM_CONDITIONAL(HAVE_SM, test "$found_sm" = "yes") 
  
@@ -25,9 +25,9 @@
 -  AC_MSG_ERROR([zenity not found in your path - needed for dialogs])
 -fi
 -
- dnl **************************************************************************
- dnl Check for Vulkan support
- dnl **************************************************************************
+ AC_SEARCH_LIBS([dlsym], [dl], [], [
+   AC_MSG_ERROR([unable to find the dlsym() function])
+ ])
 -- 
-1.8.3.1
+2.31.1
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity/0001-fix-build-with-disable-dependency-tracking.patch b/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity/0001-fix-build-with-disable-dependency-tracking.patch
deleted file mode 100644
index 864d0ba..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity/0001-fix-build-with-disable-dependency-tracking.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From 632670273cc880917e78a152a3ae39e209b57864 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
- <zboszor@gmail.com>
-Date: Sat, 28 Aug 2021 05:58:25 +0200
-Subject: [PATCH] fix build with --disable-dependency-tracking
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-With split build and source directories AND --disable-dependency-tracking
-(like the way Yocto builds are done) there's a reproducible make
-failure on my Fedora 33 build host:
-
-| Making all in src
-| make[2]: Entering directory '.../metacity/1_3.40.0-r0/build/src'
-| .../metacity/1_3.40.0-r0/recipe-sysroot-native/usr/bin/glib-mkenums --template ../../metacity-3.40.0/src/core/meta-enum-types.c.in ../../metacity-3.40.0/src/core/window-private.h ../../metacity-3.40.0/src/include/meta-compositor.h  > \
-| 	meta-enum-types.c.tmp && mv meta-enum-types.c.tmp core/meta-enum-types.c
-| .../metacity/1_3.40.0-r0/recipe-sysroot-native/usr/bin/glib-mkenums --template ../../metacity-3.40.0/src/core/meta-enum-types.h.in ../../metacity-3.40.0/src/core/window-private.h ../../metacity-3.40.0/src/include/meta-compositor.h  > \
-| 	meta-enum-types.h.tmp && mv meta-enum-types.h.tmp core/meta-enum-types.h
-| mv: cannot move 'meta-enum-types.c.tmp' to 'core/meta-enum-types.c'mv: cannot move 'meta-enum-types.h.tmp' to 'core/meta-enum-types.h': No such file or directory
-| : No such file or directory
-| make[2]: *** [Makefile:2240: core/meta-enum-types.c] Error 1
-
-https://gitlab.gnome.org/GNOME/metacity/-/merge_requests/24
-
-Upstream-Status: Pending
-
-Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
----
- configure.ac    | 1 +
- src/Makefile.am | 2 ++
- 2 files changed, 3 insertions(+)
-
-diff --git a/configure.ac b/configure.ac
-index ebb00b85..04aafb94 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -139,6 +139,7 @@ dnl **************************************************************************
- AC_SUBST(ACLOCAL_AMFLAGS, "\${ACLOCAL_FLAGS}")
- 
- AC_PROG_CC
-+AC_PROG_MKDIR_P
- AC_ISC_POSIX
- AC_HEADER_STDC
- 
-diff --git a/src/Makefile.am b/src/Makefile.am
-index f86af600..4aa3fdae 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -204,10 +204,12 @@ ENUM_TYPES = \
- 	$(NULL)
- 
- core/meta-enum-types.c: core/meta-enum-types.c.in $(ENUM_TYPES) Makefile.am
-+	$(MKDIR_P) core
- 	$(AM_V_GEN) $(GLIB_MKENUMS) --template $(srcdir)/core/meta-enum-types.c.in $(ENUM_TYPES) > \
- 		meta-enum-types.c.tmp && mv meta-enum-types.c.tmp core/meta-enum-types.c
- 
- core/meta-enum-types.h: core/meta-enum-types.h.in $(ENUM_TYPES) Makefile.am
-+	$(MKDIR_P) core
- 	$(AM_V_GEN) $(GLIB_MKENUMS) --template $(srcdir)/core/meta-enum-types.h.in $(ENUM_TYPES) > \
- 		meta-enum-types.h.tmp && mv meta-enum-types.h.tmp core/meta-enum-types.h
- 
--- 
-2.31.1
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity_3.40.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity_3.42.0.bb
similarity index 81%
rename from meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity_3.40.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity_3.42.0.bb
index e7570ec..58479cf 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity_3.40.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity_3.42.0.bb
@@ -23,11 +23,8 @@
 
 inherit gnomebase gsettings gettext upstream-version-is-even features_check
 
-SRC_URI[archive.sha256sum] = "224c1f65487eac21f0c1d9856152343768ee726c48b1a8a2835a46a8ad9015b5"
-SRC_URI += " \
-    file://0001-drop-zenity-detection.patch \
-    file://0001-fix-build-with-disable-dependency-tracking.patch \
-"
+SRC_URI[archive.sha256sum] = "d89d679dcfed9b5eef18f06e2dcb33a7ab543d53b358fa89ce65593c231eeebc"
+SRC_URI += "file://0001-drop-zenity-detection.patch"
 
 PACKAGECONFIG[xinerama] = "--enable-xinerama,--disable-xinerama,libxinerama"
 # enable as neccessary until new warnings are dealt with
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/mutter/mutter/0001-EGL-Include-EGL-eglmesaext.h.patch b/meta-openembedded/meta-gnome/recipes-gnome/mutter/mutter/0001-EGL-Include-EGL-eglmesaext.h.patch
deleted file mode 100644
index b4fd039..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/mutter/mutter/0001-EGL-Include-EGL-eglmesaext.h.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-From a444a4c5f58ea516ad3cd9d6ddc0056c3ca9bc90 Mon Sep 17 00:00:00 2001
-From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
-Date: Sun, 20 Oct 2019 12:04:31 +0200
-Subject: [PATCH] EGL: Include EGL/eglmesaext.h
-
-The eglext.h shipped by libglvnd does not include the Mesa extensions,
-unlike the header shipped in Mesa.
-
-Fixes https://gitlab.gnome.org/GNOME/mutter/issues/876
-
-Upstream-Status: Applied [1]
-
-[1] https://gitlab.gnome.org/GNOME/mutter/-/commit/a444a4c5f58ea516ad3cd9d6ddc0056c3ca9bc90
----
- cogl/cogl/meson.build       | 2 +-
- src/backends/meta-egl-ext.h | 1 +
- src/backends/meta-egl.c     | 1 +
- src/backends/meta-egl.h     | 1 +
- 4 files changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/cogl/cogl/meson.build b/cogl/cogl/meson.build
-index 261955796..b0e66bff3 100644
---- a/cogl/cogl/meson.build
-+++ b/cogl/cogl/meson.build
-@@ -48,7 +48,7 @@ cogl_gl_header_h = configure_file(
- built_headers += [cogl_gl_header_h]
- 
- if have_egl
--  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>'
-+  cogl_egl_includes_string = '#include <EGL/egl.h>\n#include <EGL/eglext.h>\n#include <EGL/eglmesaext.h>'
- else
-   cogl_egl_includes_string = ''
- endif
-diff --git a/src/backends/meta-egl-ext.h b/src/backends/meta-egl-ext.h
-index 8705e7d5b..db0b74f76 100644
---- a/src/backends/meta-egl-ext.h
-+++ b/src/backends/meta-egl-ext.h
-@@ -29,6 +29,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- /*
-  * This is a little different to the tests shipped with EGL implementations,
-diff --git a/src/backends/meta-egl.c b/src/backends/meta-egl.c
-index 6554be935..fdeff4f77 100644
---- a/src/backends/meta-egl.c
-+++ b/src/backends/meta-egl.c
-@@ -27,6 +27,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <gio/gio.h>
- #include <glib.h>
- #include <glib-object.h>
-diff --git a/src/backends/meta-egl.h b/src/backends/meta-egl.h
-index f2a816445..4591e7d85 100644
---- a/src/backends/meta-egl.h
-+++ b/src/backends/meta-egl.h
-@@ -28,6 +28,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <glib-object.h>
- 
- #define META_EGL_ERROR meta_egl_error_quark ()
--- 
-2.21.1
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/mutter/mutter_3.34.6.bb b/meta-openembedded/meta-gnome/recipes-gnome/mutter/mutter_41.2.bb
similarity index 77%
rename from meta-openembedded/meta-gnome/recipes-gnome/mutter/mutter_3.34.6.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/mutter/mutter_41.2.bb
index b659d92..19dad21 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/mutter/mutter_3.34.6.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/mutter/mutter_41.2.bb
@@ -4,30 +4,31 @@
 
 DEPENDS = " \
     xserver-xorg-cvt-native \
+    wayland-native \
     virtual/libx11 \
+    graphene \
     gtk+3 \
     gdk-pixbuf \
     cairo \
     pango \
     gsettings-desktop-schemas \
     json-glib \
-    gnome-desktop3 \
+    gnome-desktop \
     gnome-settings-daemon \
     libxtst \
     libxkbfile \
     xinerama \
+    xwayland \
 "
 
 GNOMEBASEBUILDCLASS = "meson"
 
-inherit gnomebase gsettings gobject-introspection gettext upstream-version-is-even features_check
+inherit gnomebase gsettings gobject-introspection gettext features_check
 
-SRC_URI[archive.md5sum] = "20913c458406e6efa3df005a3ce48c8e"
-SRC_URI[archive.sha256sum] = "23bde87d33b8981358831cec8915bb5ff1eaf9c1de74c90cd1660b1b95883526"
-SRC_URI += "file://0001-EGL-Include-EGL-eglmesaext.h.patch"
+SRC_URI[archive.sha256sum] = "00dfa812f1c486d74a2b73f42045ae1182f9246c7794d67d74b5e543ea700617"
 
 # x11 is still manadatory - see meson.build
-REQUIRED_DISTRO_FEATURES = "x11 polkit"
+REQUIRED_DISTRO_FEATURES = "wayland x11 polkit"
 
 # systemd can be replaced by libelogind (not available atow - make systemd
 # mandatory distro feature)
@@ -40,10 +41,11 @@
     ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl glx', '', d)} \
     sm \
     startup-notification \
-    ${@bb.utils.contains('DISTRO_FEATURES', 'opengl wayland', 'wayland', '', d)} \
 "
 
 EXTRA_OEMESON += " \
+    -Dtests=false \
+    -Dnative_tests=false \
     -Dxwayland_path=${bindir}/Xwayland \
 "
 
@@ -53,15 +55,12 @@
 PACKAGECONFIG[glx] = "-Dglx=true, -Dglx=false"
 PACKAGECONFIG[libwacom] = "-Dlibwacom=true, -Dlibwacom=false, libwacom"
 # Remove depending on pipewire-0.2 when mutter is upgraded to 3.36+
-PACKAGECONFIG[remote-desktop] = "-Dremote_desktop=true, -Dremote_desktop=false, pipewire-0.2"
+PACKAGECONFIG[remote-desktop] = "-Dremote_desktop=true, -Dremote_desktop=false, pipewire"
 PACKAGECONFIG[sm] = "-Dsm=true, -Dsm=false, libsm"
 PACKAGECONFIG[profiler] = "-Dprofiler=true,-Dprofiler=false,sysprof"
 PACKAGECONFIG[startup-notification] = "-Dstartup_notification=true, -Dstartup_notification=false, startup-notification, startup-notification"
-PACKAGECONFIG[wayland] = "-Dwayland=true,-Dwayland=false,wayland wayland-native, xwayland"
-PACKAGECONFIG[wayland-eglstream] = "-Dwayland_eglstream=true,-Dwayland_eglstream=false"
 
-# yes they changed from mutter-4 -> mutter-5 recently so be perpared
-MUTTER_API_NAME = "mutter-5"
+MUTTER_API_NAME = "mutter-9"
 
 do_install:append() {
     # Add gir links in standard paths. That makes dependents life much easier
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus/liportal-0.5-fix.patch b/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus/liportal-0.5-fix.patch
new file mode 100644
index 0000000..708595a
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus/liportal-0.5-fix.patch
@@ -0,0 +1,28 @@
+Fix an issue building Nautilus with libportal-0.5+
+where expected header is moved to different directory
+in staging sysroot
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/meson.build
++++ b/meson.build
+@@ -123,7 +123,7 @@ gtk = dependency('gtk+-3.0', version: '>
+ libhandy = dependency('libhandy-1', version: '>= 1.1.90')
+ libportal = []
+ if get_option('libportal')
+-  libportal = dependency('libportal', version: '>= 0.3')
++  libportal = dependency('libportal-gtk3', version: '>= 0.3')
+ endif
+ selinux = []
+ if get_option('selinux')
+--- a/src/nautilus-files-view.c
++++ b/src/nautilus-files-view.c
+@@ -92,7 +92,7 @@
+ 
+ #ifdef HAVE_LIBPORTAL
+ #include <libportal/portal.h>
+-#include <libportal/portal-gtk3.h>
++#include <libportal-gtk3/portal-gtk3.h>
+ #endif
+ 
+ /* Minimum starting update inverval */
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_40.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_41.1.bb
similarity index 86%
rename from meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_40.2.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_41.1.bb
index 3e6a5ba..330c361 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_40.2.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_41.1.bb
@@ -9,7 +9,7 @@
 DEPENDS = " \
     fontconfig \
     gtk+3 \
-    gnome-desktop3 \
+    gnome-desktop \
     gsettings-desktop-schemas \
     gnome-autoar \
     tracker \
@@ -22,7 +22,8 @@
 def gnome_verdir(v):
     return oe.utils.trim_version(v, 1)
 
-SRC_URI[archive.sha256sum] = "b71ef2fe07e5eea89a2bb1e5bd30947bd18873bfb30f79cbf17edfbd4d20f60d"
+SRC_URI += "file://liportal-0.5-fix.patch"
+SRC_URI[archive.sha256sum] = "3e633098853711a3e96b12fe9228b3201816e554b2823f161e7d901a8880582f"
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/sysprof/sysprof/0001-sysprof-Define-NT_GNU_BUILD_ID-if-undefined.patch b/meta-openembedded/meta-gnome/recipes-gnome/sysprof/sysprof/0001-sysprof-Define-NT_GNU_BUILD_ID-if-undefined.patch
deleted file mode 100644
index 75aa86c..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/sysprof/sysprof/0001-sysprof-Define-NT_GNU_BUILD_ID-if-undefined.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 3025d80aaacc5f67aa9eb1e6fde30f71d9c5b04b Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 18 Jul 2011 16:00:17 -0700
-Subject: [PATCH 1/2] sysprof: Define NT_GNU_BUILD_ID if undefined
-
-On uclibc elf.h does not have GNU extentions but we need this define
-so we define it locally if its not getting it from elf.h
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Upstream-Status: Pending
-
-%% original patch: define-NT_GNU_BUILD_ID.patch
----
- src/libsysprof/elfparser.h | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/src/libsysprof/elfparser.h b/src/libsysprof/elfparser.h
-index 160e4c9..94fa5c0 100644
---- a/src/libsysprof/elfparser.h
-+++ b/src/libsysprof/elfparser.h
-@@ -18,6 +18,10 @@
- 
- #include <glib.h>
- 
-+#ifndef NT_GNU_BUILD_ID
-+#define NT_GNU_BUILD_ID 3
-+#endif
-+
- typedef struct ElfSym ElfSym;
- typedef struct ElfParser ElfParser;
- 
--- 
-2.17.1
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/sysprof/sysprof/0002-tests-use-G_GSIZE_FORMAT-instead-of-G_GUINT64_FORMAT.patch b/meta-openembedded/meta-gnome/recipes-gnome/sysprof/sysprof/0002-tests-use-G_GSIZE_FORMAT-instead-of-G_GUINT64_FORMAT.patch
deleted file mode 100644
index d8fffbb..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/sysprof/sysprof/0002-tests-use-G_GSIZE_FORMAT-instead-of-G_GUINT64_FORMAT.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 5dea152c7728f5a37370ad8a229115833e36b4f6 Mon Sep 17 00:00:00 2001
-From: Rasmus Thomsen <oss@cogitri.dev>
-Date: Sat, 7 Mar 2020 10:44:16 +0100
-Subject: [PATCH] tests: use G_GSIZE_FORMAT instead of G_GUINT64_FORMAT for
- gsize
-
-This fixes the build on 32-bit platforms with -Werror-format
-
-fixes #32
-
-Upstream-Status: Applied[https://gitlab.gnome.org/GNOME/sysprof/-/commit/5dea152c7728f5a37370ad8a229115833e36b4f6]
----
- src/tests/allocs-by-size.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/tests/allocs-by-size.c b/src/tests/allocs-by-size.c
-index 666113a..6260d4b 100644
---- a/src/tests/allocs-by-size.c
-+++ b/src/tests/allocs-by-size.c
-@@ -109,7 +109,7 @@ allocs_by_size (SysprofCaptureReader *reader)
-     {
-       const Item *item = &g_array_index (ar, Item, i);
- 
--      g_print ("%"G_GUINT64_FORMAT",%"G_GUINT64_FORMAT",%"G_GUINT64_FORMAT"\n",
-+      g_print ("%"G_GSIZE_FORMAT",%"G_GSIZE_FORMAT",%"G_GSIZE_FORMAT"\n",
-                item->size, item->cmp, item->count);
-     }
- }
--- 
-2.21.3
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/sysprof/sysprof_3.36.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/sysprof/sysprof_3.42.1.bb
similarity index 81%
rename from meta-openembedded/meta-gnome/recipes-gnome/sysprof/sysprof_3.36.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/sysprof/sysprof_3.42.1.bb
index 1f8351f..3dd08a2 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/sysprof/sysprof_3.36.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/sysprof/sysprof_3.42.1.bb
@@ -12,14 +12,10 @@
     yelp-tools-native \
     libxml2-native \
     glib-2.0 \
+    json-glib \
 "
 
-SRC_URI[archive.md5sum] = "3956e82b8744715006dde59e0ce8910b"
-SRC_URI[archive.sha256sum] = "8670db4dacf7b219d30c575c465b17c8ed6724dbade347f2cde9548bff039108"
-SRC_URI += " \
-    file://0001-sysprof-Define-NT_GNU_BUILD_ID-if-undefined.patch \
-    file://0002-tests-use-G_GSIZE_FORMAT-instead-of-G_GUINT64_FORMAT.patch \
-"
+SRC_URI[archive.sha256sum] = "1796b81404ee75fd1ebacf54464ad7affebf62f2851eef524d9f8eac0c4a2001"
 
 PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'sysprofd', '', d)} \
                   ${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'libsysprof', '', d)} \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/tepl/tepl_6.00.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/tepl/tepl_6.00.0.bb
index 755cb96..0ac7e36 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/tepl/tepl_6.00.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/tepl/tepl_6.00.0.bb
@@ -19,6 +19,6 @@
 
 # gobject-introspection is mandatory and cannot be configured
 REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
-UNKNOWN_CONFIGURE_WHITELIST:append = " introspection"
+GIR_MESON_OPTION = ""
 
 GTKDOC_MESON_OPTION = "gtk_doc"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_3.1.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_3.2.1.bb
similarity index 93%
rename from meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_3.1.1.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_3.2.1.bb
index c2de723..a9c96a5 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_3.1.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker-miners_3.2.1.bb
@@ -15,12 +15,12 @@
 
 inherit gnomebase gsettings gobject-introspection vala bash-completion features_check
 
-SRC_URI[archive.sha256sum] = "e4d361351b156f2862a524415fbebf0539c781cd87c6629662f0265b4803b8b8"
 SRC_URI += "file://0001-meson.build-Just-warn-if-we-build-without-libseccomp.patch"
+SRC_URI[archive.sha256sum] = "44369f53e2edef41437406dbeecd477a97f8a9afdd9134832ea45d1ba2aa2c47"
 
 # gobject-introspection is mandatory and cannot be configured
 REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
-UNKNOWN_CONFIGURE_WHITELIST:append = " introspection"
+GIR_MESON_OPTION = ""
 
 PACKAGECONFIG ??= " \
     ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "ffmpeg", "", d)} \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker_3.1.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker_3.2.1.bb
similarity index 86%
rename from meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker_3.1.1.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker_3.2.1.bb
index b16a5a2..1c18efb 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker_3.1.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/tracker/tracker_3.2.1.bb
@@ -7,6 +7,7 @@
 
 DEPENDS = " \
     dbus-native \
+    python3-pygobject-native \
     glib-2.0 \
     sqlite3 \
     libarchive \
@@ -19,13 +20,13 @@
 
 GNOMEBASEBUILDCLASS = "meson"
 
-inherit gnomebase gsettings gobject-introspection vala gtk-doc manpages bash-completion features_check
+inherit gnomebase gsettings gobject-introspection vala gtk-doc manpages bash-completion features_check python3native
 
-SRC_URI[archive.sha256sum] = "4376e2e98454066f44f7a242e45b99b3bfe4c03b67fab19abb0ed586ca748ae7"
+SRC_URI[archive.sha256sum] = "1847e08b39e6e61d848735aa1f97f7d96c038201653fa0d7cb9e81b37eb9c03a"
 
 # gobject-introspection is mandatory and cannot be configured
 REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
-UNKNOWN_CONFIGURE_WHITELIST:append = " introspection"
+GIR_MESON_OPTION = ""
 
 # text search is not an option anymore and requires sqlite3 build with
 # PACKAGECONFIG[fts5] set (default)
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/yelp/yelp-xsl_41.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/yelp/yelp-xsl_41.1.bb
similarity index 85%
rename from meta-openembedded/meta-gnome/recipes-gnome/yelp/yelp-xsl_41.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/yelp/yelp-xsl_41.1.bb
index 029fd02..3b23979 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/yelp/yelp-xsl_41.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/yelp/yelp-xsl_41.1.bb
@@ -10,7 +10,7 @@
 
 DEPENDS += "libxml2"
 
-SRC_URI[archive.sha256sum] = "c8cd64c093bbd8c5d5e47fd38864e90831b5f9cf7403530870206fa96636a4a5"
+SRC_URI[archive.sha256sum] = "0d6db37ac2ef812483e0104703f1fa9cf032e9e0956a5f1c3afbcc23791f8a54"
 
 RDEPENDS:${PN}:append:class-target = " libxml2 itstool"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/yelp/yelp_41.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/yelp/yelp_41.2.bb
similarity index 74%
rename from meta-openembedded/meta-gnome/recipes-gnome/yelp/yelp_41.1.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/yelp/yelp_41.2.bb
index 980b9a1..590ff2f 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/yelp/yelp_41.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/yelp/yelp_41.2.bb
@@ -9,7 +9,7 @@
 # for webkitgtk
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[archive.sha256sum] = "456a6415647bceeb0159b90b3553ff328728cf29a608fce08024232504ccb874"
+SRC_URI[archive.sha256sum] = "b00bf033f02dd79b6d3f255031c71df8d6ed38e552c870b8f391a374724c43c5"
 
 DEPENDS += " \
     libxml2-native \
@@ -21,6 +21,10 @@
     webkitgtk \
     yelp-xsl \
 "
+PACKAGECONFIG ?= ""
+
+# Enable if soup3 is enabled in webkit recipe
+PACKAGECONFIG[soup3] = ",--with-webkit2gtk-4-0,"
 
 do_configure:prepend() {
     export ITSTOOL=${STAGING_BINDIR_NATIVE}/itstool
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity/0001-Harcode-shebang-to-avoid-pointing-to-build-system-s-.patch b/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity/0001-Harcode-shebang-to-avoid-pointing-to-build-system-s-.patch
new file mode 100644
index 0000000..e054ff7
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity/0001-Harcode-shebang-to-avoid-pointing-to-build-system-s-.patch
@@ -0,0 +1,28 @@
+From c8be0d5e7d17930d819635df6570fa5331a5dedd Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Mon, 10 Jan 2022 20:18:00 +0100
+Subject: [PATCH] Harcode shebang to avoid pointing to build system's perl
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ src/gdialog.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/gdialog.in b/src/gdialog.in
+index 2fc4633..f891861 100755
+--- a/src/gdialog.in
++++ b/src/gdialog.in
+@@ -1,4 +1,4 @@
+-#!@PERL@
++#!/usr/bin/env perl
+ 
+ # gdialog -> zenity conversion wrapper
+ #
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity_3.32.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity_3.32.0.bb
deleted file mode 100644
index f5f1f99..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity_3.32.0.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-SUMMARY = "Display dialog boxes from the command line and shell scripts"
-SECTION = "x11/gnome"
-LICENSE = "GPLv2+"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
-
-inherit gnomebase itstool gnome-help features_check gettext
-
-DEPENDS = " \
-    yelp-tools-native \
-    gtk+3 \
-"
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI[archive.md5sum] = "ba2b2a13248773b4ec0fd323d95e6d5a"
-SRC_URI[archive.sha256sum] = "e786e733569c97372c3ef1776e71be7e7599ebe87e11e8ad67dcc2e63a82cd95"
-
-do_install:append() {
-    # Remove gdialog compatibility helper - we don't want to pull in perl
-    rm ${D}${bindir}/gdialog
-}
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity_3.41.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity_3.41.0.bb
new file mode 100644
index 0000000..ea1db57
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity_3.41.0.bb
@@ -0,0 +1,25 @@
+SUMMARY = "Display dialog boxes from the command line and shell scripts"
+SECTION = "x11/gnome"
+LICENSE = "LGPL-2.1-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+inherit gnomebase pkgconfig itstool gnome-help features_check gettext
+
+DEPENDS = " \
+    yelp-tools-native \
+    gtk+3 \
+"
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI[archive.sha256sum] = "19b676c3510e22badfcc3204062d432ba537402f5e0ae26128c0d90c954037e1"
+SRC_URI += "file://0001-Harcode-shebang-to-avoid-pointing-to-build-system-s-.patch"
+
+PACKAGECONFIG[libnotify] = "-Dlibnotify=true,-Dlibnotify=false,libnotify"
+PACKAGECONFIG[webkitgtk] = "-Dwebkitgtk=true,-Dwebkitgtk=false,webkitgtk"
+
+PACKAGES =+ "${PN}-gdialog"
+FILES:${PN}-gdialog = "${bindir}/gdialog"
+RDEPENDS:${PN}-gdialog += "perl"
