aboutsummaryrefslogtreecommitdiffstats
path: root/meta-gnome
diff options
context:
space:
mode:
Diffstat (limited to 'meta-gnome')
-rw-r--r--meta-gnome/README18
-rw-r--r--meta-gnome/README.md16
-rw-r--r--meta-gnome/classes/clutter.bbclass18
-rw-r--r--meta-gnome/classes/gnome-help.bbclass67
-rwxr-xr-xmeta-gnome/conf/include/non-repro-meta-gnome.inc13
-rw-r--r--meta-gnome/conf/layer.conf20
-rw-r--r--meta-gnome/dynamic-layers/meta-security/recipes-gnome/gnome-remote-desktop/gnome-remote-desktop_46.2.bb40
-rw-r--r--meta-gnome/dynamic-layers/meta-virtualization/recipes-gnome/gnome-boxes/gnome-boxes_46.1.bb43
-rw-r--r--meta-gnome/files/static-passwd-meta-gnome1
-rw-r--r--meta-gnome/recipes-apps/pinpoint/pinpoint_git.bb24
-rw-r--r--meta-gnome/recipes-connectivity/folks/folks_0.15.9.bb28
-rw-r--r--meta-gnome/recipes-connectivity/geary/geary/0001-application-client.vala-hardcode-some-paths.patch40
-rw-r--r--meta-gnome/recipes-connectivity/geary/geary_46.0.bb58
-rw-r--r--meta-gnome/recipes-connectivity/gtk-vnc/gtk-vnc_1.3.1.bb30
-rw-r--r--meta-gnome/recipes-connectivity/libnma/libnma_1.10.6.bb33
-rw-r--r--meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet/0001-linker-scripts-Do-not-export-_IO_stdin_used.patch30
-rw-r--r--meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.36.0.bb31
-rw-r--r--meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.8.22.bb44
-rw-r--r--meta-gnome/recipes-extended/gparted/files/0001-Install-polkit-action-unconditionally-executable-pke.patch47
-rw-r--r--meta-gnome/recipes-extended/gparted/files/gparted_polkit10
-rw-r--r--meta-gnome/recipes-extended/gparted/files/org.yoctoproject.pkexec.run-gparted.policy20
-rw-r--r--meta-gnome/recipes-extended/gparted/gparted_0.33.0.bb40
-rw-r--r--meta-gnome/recipes-extended/gparted/gparted_1.6.0.bb45
-rw-r--r--meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0001-Select-the-current-user-to-authenticate-with-by-defa.patch80
-rw-r--r--meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0002-Auth-dialog-Make-the-label-wrap-at-70-chars.patch34
-rw-r--r--meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0003-Get-user-icon-from-accountsservice-instead-of-lookin.patch138
-rw-r--r--meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0004-Use-fresh-X11-timestamps-when-displaying-authenticat.patch48
-rw-r--r--meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0005-configure.ac-disable-gnome-tools-that-are-not-provid.patch29
-rw-r--r--meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/polkit-gnome-authentication-agent-1.desktop87
-rw-r--r--meta-gnome/recipes-extended/polkit-gnome/polkit-gnome_0.105.bb29
-rw-r--r--meta-gnome/recipes-gimp/babl/babl_0.1.108.bb17
-rw-r--r--meta-gnome/recipes-gimp/gegl/gegl_0.4.48.bb63
-rw-r--r--meta-gnome/recipes-gimp/gimp/gimp/0001-configure-Keep-first-line-of-compiler-version-string.patch30
-rw-r--r--meta-gnome/recipes-gimp/gimp/gimp/0001-file-tiff-load-fix-mismatching-variable-type.patch24
-rw-r--r--meta-gnome/recipes-gimp/gimp/gimp/0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch34
-rw-r--r--meta-gnome/recipes-gimp/gimp/gimp/0001-metadata-shut-up-a-weird-warning.patch22
-rw-r--r--meta-gnome/recipes-gimp/gimp/gimp_2.10.38.bb80
-rw-r--r--meta-gnome/recipes-gimp/mypaint/libmypaint/0001-make-build-compatible-w.-autoconf-2.7.patch32
-rw-r--r--meta-gnome/recipes-gimp/mypaint/libmypaint_git.bb26
-rw-r--r--meta-gnome/recipes-gimp/mypaint/mypaint-brushes-1.0_git.bb12
-rw-r--r--meta-gnome/recipes-gnome/dconf/dconf-editor_3.32.0.bb17
-rw-r--r--meta-gnome/recipes-gnome/dconf/dconf-editor_45.0.1.bb22
-rw-r--r--meta-gnome/recipes-gnome/dconf/dconf_0.40.0.bb (renamed from meta-gnome/recipes-gnome/dconf/dconf_0.32.0.bb)13
-rw-r--r--meta-gnome/recipes-gnome/devilspie/devilspie2_0.44.bb (renamed from meta-gnome/recipes-gnome/devilspie/devilspie2_0.43.bb)21
-rw-r--r--meta-gnome/recipes-gnome/eds/evolution-data-server/0005-Use-LC_MESSAGES-for-address-localization-when-LC_ADD.patch33
-rw-r--r--meta-gnome/recipes-gnome/eds/evolution-data-server/0006-Dont-add-usr-lib-to-LDFLAGS-when-linking-libphonenum.patch36
-rw-r--r--meta-gnome/recipes-gnome/eds/evolution-data-server/0007-Modify-gobject-intrispection-support-to-work-with-OE.patch75
-rw-r--r--meta-gnome/recipes-gnome/eds/evolution-data-server_3.32.4.bb155
-rw-r--r--meta-gnome/recipes-gnome/eog/eog_47.0.bb30
-rw-r--r--meta-gnome/recipes-gnome/evince/evince/0001-Add-format-attribute-to-_synctex_malloc.patch27
-rw-r--r--meta-gnome/recipes-gnome/evince/evince/0001-add-a-formatting-attribute-check.patch34
-rw-r--r--meta-gnome/recipes-gnome/evince/evince/0001-help-remove-YELP-macro.patch24
-rw-r--r--meta-gnome/recipes-gnome/evince/evince/0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch33
-rw-r--r--meta-gnome/recipes-gnome/evince/evince_3.28.2.bb65
-rw-r--r--meta-gnome/recipes-gnome/evince/evince_46.3.bb62
-rw-r--r--meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server-native.bb26
-rw-r--r--meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb72
-rw-r--r--meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.inc14
-rw-r--r--meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch (renamed from meta-gnome/recipes-gnome/eds/evolution-data-server/0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch)28
-rw-r--r--meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-cmake-Do-not-export-CC-into-gir-compiler.patch25
-rw-r--r--meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch (renamed from meta-gnome/recipes-gnome/eds/evolution-data-server/0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch)1
-rw-r--r--meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0003-contact-Replace-the-Novell-sample-contact-with-somet.patch (renamed from meta-gnome/recipes-gnome/eds/evolution-data-server/0003-contact-Replace-the-Novell-sample-contact-with-somet.patch)0
-rw-r--r--meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0004-call-native-helpers.patch (renamed from meta-gnome/recipes-gnome/eds/evolution-data-server/0004-Add-native-suffix-to-exacutables-produced-and-run-du.patch)33
-rw-r--r--meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/iconv-detect.h (renamed from meta-gnome/recipes-gnome/eds/evolution-data-server/iconv-detect.h)0
-rw-r--r--meta-gnome/recipes-gnome/faenza-icon-theme/faenza-icon-theme_1.3.bb10
-rw-r--r--meta-gnome/recipes-gnome/file-roller/file-roller_44.3.bb46
-rw-r--r--meta-gnome/recipes-gnome/gdm/gdm_46.0.bb67
-rw-r--r--meta-gnome/recipes-gnome/gedit/files/0001-Remove-help-directory-from-build.patch29
-rw-r--r--meta-gnome/recipes-gnome/gedit/files/0001-gedit-utils-qualify-handle_builder_error-with-format.patch31
-rw-r--r--meta-gnome/recipes-gnome/gedit/files/0001-tests-document-saver.c-Define-ACCESSPERMS-if-not-def.patch31
-rw-r--r--meta-gnome/recipes-gnome/gedit/files/0001-workaround-void-pointer-arithmetic.patch57
-rw-r--r--meta-gnome/recipes-gnome/gedit/files/0002-suppress-string-format-literal-warning-to-fix-build-.patch38
-rw-r--r--meta-gnome/recipes-gnome/gedit/gedit/0001-fix-for-clang-18.patch32
-rw-r--r--meta-gnome/recipes-gnome/gedit/gedit_2.30.4.bb33
-rw-r--r--meta-gnome/recipes-gnome/gedit/gedit_46.2.bb53
-rw-r--r--meta-gnome/recipes-gnome/gedit/libgedit-amtk_5.8.0.bb17
-rw-r--r--meta-gnome/recipes-gnome/gedit/libgedit-gtksourceview_299.2.1.bb24
-rw-r--r--meta-gnome/recipes-gnome/geocode-glib/geocode-glib_3.26.4.bb18
-rw-r--r--meta-gnome/recipes-gnome/gexiv2/gexiv2_0.14.3.bb34
-rw-r--r--meta-gnome/recipes-gnome/gfbgraph/gfbgraph_0.2.5.bb26
-rw-r--r--meta-gnome/recipes-gnome/ghex/ghex_46.0.bb22
-rw-r--r--meta-gnome/recipes-gnome/gjs/gjs/0001-Support-cross-builds-a-bit-better.patch47
-rw-r--r--meta-gnome/recipes-gnome/gjs/gjs/0002-meson.build-Do-not-add-dir-installed-tests-when-inst.patch35
-rw-r--r--meta-gnome/recipes-gnome/gjs/gjs_1.80.2.bb39
-rw-r--r--meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.4.5.bb20
-rw-r--r--meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_46.0.bb16
-rw-r--r--meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth3/0001-build-Fix-build-for-newer-versions-of-meson.patch25
-rw-r--r--meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth3_3.34.5.bb39
-rw-r--r--meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_3.32.1.bb22
-rw-r--r--meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_46.1.bb43
-rw-r--r--meta-gnome/recipes-gnome/gnome-calculator/gnome-calculator_46.1.bb38
-rw-r--r--meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar_46.1.bb37
-rw-r--r--meta-gnome/recipes-gnome/gnome-chess/gnome-chess_46.0.bb34
-rw-r--r--meta-gnome/recipes-gnome/gnome-chess/gnuchess/0001-Remove-register-storage-class-classifier.patch149
-rw-r--r--meta-gnome/recipes-gnome/gnome-chess/gnuchess_6.2.9.bb20
-rw-r--r--meta-gnome/recipes-gnome/gnome-commander/gnome-commander/0001-Build-fix-needed-with-taglib-2.0.patch37
-rw-r--r--meta-gnome/recipes-gnome/gnome-commander/gnome-commander_1.16.1.bb31
-rw-r--r--meta-gnome/recipes-gnome/gnome-console/gnome-console_45.0.bb27
-rw-r--r--meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center/0001-Add-meson-option-to-pass-sysroot.patch49
-rw-r--r--meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_46.2.bb65
-rw-r--r--meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop/0001-meson-Add-riscv32-to-seccomp-unsupported-list.patch29
-rw-r--r--meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop/0001-meson.build-Disable-libseccomp-for-all-archs.patch40
-rw-r--r--meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.34.0.bb36
-rw-r--r--meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_44.0.bb48
-rw-r--r--meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0001-gnome-disk-utility-remove-libcanberra-dependency.patch135
-rw-r--r--meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_46.1.bb41
-rw-r--r--meta-gnome/recipes-gnome/gnome-flashback/gnome-flashback_3.46.0.bb39
-rw-r--r--meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer/0001-window-Fix-function-callback-definition.patch43
-rw-r--r--meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_46.0.bb25
-rw-r--r--meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring/0001-Set-paths-to-ssh-agent-and-ssh-add-by-configure-opti.patch40
-rw-r--r--meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.28.2.bb44
-rw-r--r--meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_46.2.bb51
-rw-r--r--meta-gnome/recipes-gnome/gnome-keyring/libgnome-keyring_3.12.0.bb29
-rw-r--r--meta-gnome/recipes-gnome/gnome-menus/gnome-menus3_3.10.1.bb21
-rw-r--r--meta-gnome/recipes-gnome/gnome-menus/gnome-menus_3.36.0.bb15
-rw-r--r--meta-gnome/recipes-gnome/gnome-online-accounts/gnome-online-accounts_3.50.2.bb28
-rw-r--r--meta-gnome/recipes-gnome/gnome-panel/gnome-panel_3.47.1.bb25
-rw-r--r--meta-gnome/recipes-gnome/gnome-photos/gnome-photos_44.0.bb59
-rw-r--r--meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot/0001-meson-remove-extraneous-positional-argument.patch36
-rw-r--r--meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot_41.0.bb21
-rw-r--r--meta-gnome/recipes-gnome/gnome-session/gnome-session_46.0.bb34
-rw-r--r--meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_46.0.bb50
-rw-r--r--meta-gnome/recipes-gnome/gnome-shell/gnome-shell-extensions_46.2.bb23
-rw-r--r--meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0001-Introduce-options-gjs_path-to-optionally-set-path-to.patch124
-rw-r--r--meta-gnome/recipes-gnome/gnome-shell/gnome-shell_46.2.bb86
-rw-r--r--meta-gnome/recipes-gnome/gnome-software/gnome-software_46.2.bb43
-rw-r--r--meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor/0001-Do-not-build-help-we-do-not-have-yelp-yet.patch30
-rw-r--r--meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_3.32.0.bb34
-rw-r--r--meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_46.0.bb38
-rw-r--r--meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch34
-rw-r--r--meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-meson-add-option-to-set-dbus_interfacedir.patch63
-rw-r--r--meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.50.1.bb42
-rw-r--r--meta-gnome/recipes-gnome/gnome-text-editor/gnome-text-editor_46.3.bb26
-rw-r--r--meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks/0001-Make-python-path-configurable.patch41
-rw-r--r--meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks/0002-meson-fix-invalid-positional-argument.patch33
-rw-r--r--meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_40.0.bb33
-rw-r--r--meta-gnome/recipes-gnome/gnome-user-share/gnome-user-share_43.0.bb24
-rw-r--r--meta-gnome/recipes-gnome/grilo/grilo-plugins/0001-Avoid-running-trackertestutils.patch32
-rw-r--r--meta-gnome/recipes-gnome/grilo/grilo-plugins_0.3.16.bb23
-rw-r--r--meta-gnome/recipes-gnome/grilo/grilo_0.3.16.bb39
-rw-r--r--meta-gnome/recipes-gnome/gsound/gsound_1.0.3.bb15
-rw-r--r--meta-gnome/recipes-gnome/gspell/gspell_1.12.2.bb11
-rw-r--r--meta-gnome/recipes-gnome/gspell/gspell_1.8.1.bb11
-rw-r--r--meta-gnome/recipes-gnome/gthumb/gthumb_3.12.4.bb30
-rw-r--r--meta-gnome/recipes-gnome/gtksourceview/files/0001-remove-pointless-check.patch38
-rw-r--r--meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb14
-rw-r--r--meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/0001-test-widget.c-fix-non-literal-format-string-issues.patch31
-rw-r--r--meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/acinclude.m490
-rw-r--r--meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/gtk-doc.m453
-rw-r--r--meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/gtk-doc.make173
-rw-r--r--meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/suppress-string-format-literal-warning.patch33
-rw-r--r--meta-gnome/recipes-gnome/gtksourceview/gtksourceview2_2.10.5.bb32
-rw-r--r--meta-gnome/recipes-gnome/gtksourceview/gtksourceview3_3.24.11.bb12
-rw-r--r--meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.2.0.bb21
-rw-r--r--meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.8.4.bb24
-rw-r--r--meta-gnome/recipes-gnome/gtksourceview/gtksourceview5_5.12.0.bb36
-rw-r--r--meta-gnome/recipes-gnome/gvfs/gvfs_1.54.0.bb (renamed from meta-gnome/recipes-gnome/gvfs/gvfs_1.41.2.bb)56
-rw-r--r--meta-gnome/recipes-gnome/libchamplain/libchamplain_0.12.21.bb14
-rw-r--r--meta-gnome/recipes-gnome/libgdata/libgdata_0.18.1.bb (renamed from meta-gnome/recipes-gnome/libgdata/libgdata_0.17.10.bb)18
-rw-r--r--meta-gnome/recipes-gnome/libgnome/libgnomekbd_3.26.1.bb17
-rw-r--r--meta-gnome/recipes-gnome/libgsf/libgsf/0001-Compilation-attempt-fixes-for-libxml-2.13.patch105
-rw-r--r--meta-gnome/recipes-gnome/libgsf/libgsf/0001-configure.ac-drop-a-copy-paste-of-introspection.m4-m.patch (renamed from meta-gnome/recipes-gnome/libgsf/files/0001-configure.ac-drop-a-copy-paste-of-introspection.m4-m.patch)0
-rw-r--r--meta-gnome/recipes-gnome/libgsf/libgsf_1.14.45.bb27
-rw-r--r--meta-gnome/recipes-gnome/libgsf/libgsf_1.14.52.bb23
-rw-r--r--meta-gnome/recipes-gnome/libgtkstylus/files/gtkstylus.sh5
-rw-r--r--meta-gnome/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb29
-rw-r--r--meta-gnome/recipes-gnome/libgtop/libgtop/0001-netload-Include-libc-net-headers-unconditionally.patch46
-rw-r--r--meta-gnome/recipes-gnome/libgtop/libgtop_2.40.0.bb16
-rw-r--r--meta-gnome/recipes-gnome/libgtop/libgtop_2.41.3.bb12
-rw-r--r--meta-gnome/recipes-gnome/libgweather/libgweather4/0001-Allow-building-gir-in-cross-environments.patch26
-rw-r--r--meta-gnome/recipes-gnome/libgweather/libgweather4_4.4.2.bb34
-rw-r--r--meta-gnome/recipes-gnome/libspelling/libspelling_0.2.1.bb13
-rw-r--r--meta-gnome/recipes-gnome/libtimezonemap/libtimezonemap_0.4.6.bb9
-rw-r--r--meta-gnome/recipes-gnome/libwnck/libwnck3_3.32.0.bb24
-rw-r--r--meta-gnome/recipes-gnome/libwnck/libwnck3_43.0.bb26
-rw-r--r--meta-gnome/recipes-gnome/libwnck/libwnck_2.31.0.bb7
-rw-r--r--meta-gnome/recipes-gnome/libxklavier/libxklavier/fix-do_installe-failure.patch2
-rw-r--r--meta-gnome/recipes-gnome/libxklavier/libxklavier_5.4.bb12
-rw-r--r--meta-gnome/recipes-gnome/metacity/metacity/0001-drop-zenity-detection.patch17
-rw-r--r--meta-gnome/recipes-gnome/metacity/metacity_3.32.0.bb41
-rw-r--r--meta-gnome/recipes-gnome/metacity/metacity_3.52.0.bb40
-rw-r--r--meta-gnome/recipes-gnome/msgraph/msgraph_0.2.3.bb19
-rw-r--r--meta-gnome/recipes-gnome/mutter/mutter_46.4.bb109
-rw-r--r--meta-gnome/recipes-gnome/nautilus/nautilus/0001-nautilus-drop-gnome-desktop-thumbnail-API-with-new-g.patch40
-rw-r--r--meta-gnome/recipes-gnome/nautilus/nautilus_3.18.5.bb33
-rw-r--r--meta-gnome/recipes-gnome/nautilus/nautilus_46.2.bb54
-rw-r--r--meta-gnome/recipes-gnome/rest/librest_0.8.1.bb33
-rw-r--r--meta-gnome/recipes-gnome/rest/rest_0.9.1.bb24
-rw-r--r--meta-gnome/recipes-gnome/sysprof/sysprof/0001-libsysprof-Check-for-unw_set_caching_policy-before-u.patch27
-rw-r--r--meta-gnome/recipes-gnome/sysprof/sysprof/0001-meson-Check-for-libunwind-instead-of-libunwind-gener.patch30
-rw-r--r--meta-gnome/recipes-gnome/sysprof/sysprof/0002-meson-Do-not-invoke-the-commands-to-update-the-icon-.patch32
-rw-r--r--meta-gnome/recipes-gnome/sysprof/sysprof_3.48.0.bb50
-rw-r--r--meta-gnome/recipes-gnome/tecla/tecla_46.0.bb16
-rw-r--r--meta-gnome/recipes-gnome/tepl/tepl_6.8.0.bb31
-rw-r--r--meta-gnome/recipes-gnome/tracker/tracker-miners/0001-Set-header-file-to-a-fixed-path-instead-of-a-host-pa.patch28
-rw-r--r--meta-gnome/recipes-gnome/tracker/tracker-miners/0001-fix-reproducibility.patch117
-rw-r--r--meta-gnome/recipes-gnome/tracker/tracker-miners_3.7.3.bb86
-rw-r--r--meta-gnome/recipes-gnome/tracker/tracker/0001-fix-reproducibility.patch77
-rw-r--r--meta-gnome/recipes-gnome/tracker/tracker_3.7.3.bb59
-rw-r--r--meta-gnome/recipes-gnome/yelp/yelp-tools_42.1.bb21
-rw-r--r--meta-gnome/recipes-gnome/yelp/yelp-xsl_42.1.bb21
-rw-r--r--meta-gnome/recipes-gnome/yelp/yelp_42.2.bb43
-rw-r--r--meta-gnome/recipes-gnome/zenity/zenity/0001-build-don-t-generate-manual.patch50
-rw-r--r--meta-gnome/recipes-gnome/zenity/zenity_3.32.0.bb24
-rw-r--r--meta-gnome/recipes-gnome/zenity/zenity_4.0.2.bb26
-rw-r--r--meta-gnome/recipes-graphics/clutter/clutter-1.0.inc49
-rw-r--r--meta-gnome/recipes-graphics/clutter/clutter-1.0/0001-Remove-clutter.types-as-it-is-build-configuration-sp.patch143
-rw-r--r--meta-gnome/recipes-graphics/clutter/clutter-1.0/install-examples.patch19
-rw-r--r--meta-gnome/recipes-graphics/clutter/clutter-1.0/run-installed-tests-with-tap-output.patch30
-rw-r--r--meta-gnome/recipes-graphics/clutter/clutter-1.0/run-ptest3
-rw-r--r--meta-gnome/recipes-graphics/clutter/clutter-1.0_1.26.4.bb10
-rw-r--r--meta-gnome/recipes-graphics/clutter/clutter-gst-3.0.inc23
-rw-r--r--meta-gnome/recipes-graphics/clutter/clutter-gst-3.0/0001-Install-example-binary-needed-for-core-image-clutter.patch33
-rw-r--r--meta-gnome/recipes-graphics/clutter/clutter-gst-3.0_3.0.27.bb7
-rw-r--r--meta-gnome/recipes-graphics/clutter/clutter-gtk-1.0.inc23
-rw-r--r--meta-gnome/recipes-graphics/clutter/clutter-gtk-1.0/0001-Add-a-config-variable-for-enabling-disabling-introsp.patch37
-rw-r--r--meta-gnome/recipes-graphics/clutter/clutter-gtk-1.0_1.8.4.bb7
-rw-r--r--meta-gnome/recipes-graphics/cogl/cogl-1.0.inc84
-rw-r--r--meta-gnome/recipes-graphics/cogl/cogl-1.0/0001-configure.ac-don-t-require-eglmesaext.h.patch92
-rw-r--r--meta-gnome/recipes-graphics/cogl/cogl-1.0_1.22.8.bb6
-rw-r--r--meta-gnome/recipes-graphics/packagegroups/packagegroup-core-clutter.bb25
-rw-r--r--meta-gnome/recipes-support/accountsservice/accountsservice/0001-musl-Hack-to-fix-build.patch36
-rw-r--r--meta-gnome/recipes-support/accountsservice/accountsservice/0002-musl-add-missing-fgetspent_r.patch44
-rw-r--r--meta-gnome/recipes-support/accountsservice/accountsservice_22.08.8.bb32
-rw-r--r--meta-gnome/recipes-support/appstream-glib/appstream-glib_0.8.2.bb39
-rw-r--r--meta-gnome/recipes-support/colord-gtk/colord-gtk_0.3.1.bb25
-rw-r--r--meta-gnome/recipes-support/ibus/ibus-native.bb34
-rw-r--r--meta-gnome/recipes-support/ibus/ibus.bb41
-rw-r--r--meta-gnome/recipes-support/ibus/ibus.inc42
-rw-r--r--meta-gnome/recipes-support/ibus/ibus/0001-Do-not-try-to-start-dbus-we-do-not-have-dbus-lauch.patch34
-rw-r--r--meta-gnome/recipes-support/ibus/ibus/0001-makefile-don-t-gzip-the-man-pages.patch164
-rw-r--r--meta-gnome/recipes-support/keybinder/keybinder_3.0.bb15
-rw-r--r--meta-gnome/recipes-support/libcloudproviders/libcloudproviders_0.3.6.bb11
-rw-r--r--meta-gnome/recipes-support/libuser/libuser/0001-docs-Disable-building.patch29
-rw-r--r--meta-gnome/recipes-support/libuser/libuser/0001-modules-files.c-parse_field-fix-string-formating-in-.patch34
-rw-r--r--meta-gnome/recipes-support/libuser/libuser/gtkdoc.patch22
-rw-r--r--meta-gnome/recipes-support/libuser/libuser_0.64.bb (renamed from meta-gnome/recipes-support/libuser/libuser_0.62.bb)27
-rw-r--r--meta-gnome/recipes-support/libwacom/libwacom_2.8.0.bb24
-rw-r--r--meta-gnome/recipes-support/onboard/onboard/0001-pypredict-lm-Define-error-API-if-platform-does-not-h.patch67
-rw-r--r--meta-gnome/recipes-support/onboard/onboard_1.4.1.bb29
-rw-r--r--meta-gnome/recipes-support/packagegroups/packagegroup-gnome-apps.bb28
-rw-r--r--meta-gnome/recipes-support/packagegroups/packagegroup-gnome-desktop.bb30
-rw-r--r--meta-gnome/recipes-support/usermode/usermode/0001-Makefile.am-Link-with-libm-for-powl-API.patch11
-rw-r--r--meta-gnome/recipes-support/usermode/usermode_1.114.bb (renamed from meta-gnome/recipes-support/usermode/usermode_1.113.bb)13
-rw-r--r--meta-gnome/recipes-support/webp-pixbuf-loader/webp-pixbuf-loader_0.2.7.bb23
-rw-r--r--meta-gnome/recipes-support/xdg-desktop-portal/xdg-desktop-portal-gnome_46.2.bb31
-rw-r--r--meta-gnome/recipes-support/xdg-desktop-portal/xdg-desktop-portal-gtk_1.15.1.bb30
-rw-r--r--meta-gnome/site/arm-6413
-rw-r--r--meta-gnome/site/riscv64-linux16
-rw-r--r--meta-gnome/site/x86_64-linux17
250 files changed, 6936 insertions, 2254 deletions
diff --git a/meta-gnome/README b/meta-gnome/README
deleted file mode 100644
index 3c5b4c5f9d..0000000000
--- a/meta-gnome/README
+++ /dev/null
@@ -1,18 +0,0 @@
-Dependencies
-------------
-This layer depends on:
-
-URI: git://github.com/openembedded/oe-core.git
-branch: master
-revision: HEAD
-
-URI: git://github.com/openembedded/meta-oe.git
-branch: master
-revision: HEAD
-
-Send pull requests to openembedded-devel@lists.openembedded.org with '[meta-gnome]' in the subject'
-
-When sending single patches, please using something like:
-'git send-email -M -1 --to openembedded-devel@lists.openembedded.org --subject-prefix=meta-gnome][PATCH'
-
-Layer maintainer: Andreas Müller <schnitzeltony@googlemail.com>
diff --git a/meta-gnome/README.md b/meta-gnome/README.md
new file mode 100644
index 0000000000..fbb0d72476
--- /dev/null
+++ b/meta-gnome/README.md
@@ -0,0 +1,16 @@
+Dependencies
+------------
+This layer depends on:
+
+URI: git://git.openembedded.org/openembedded-core
+branch: master
+
+URI: git://git.openembedded.org/meta-openembedded
+branch: master
+
+Send pull requests to openembedded-devel@lists.openembedded.org with '[meta-gnome]' in the subject'
+
+When sending single patches, please using something like:
+git send-email -M -1 --to openembedded-devel@lists.openembedded.org --subject-prefix='meta-gnome][PATCH'
+
+Layer maintainer: Andreas Müller <schnitzeltony@gmail.com>
diff --git a/meta-gnome/classes/clutter.bbclass b/meta-gnome/classes/clutter.bbclass
new file mode 100644
index 0000000000..24b53a13e4
--- /dev/null
+++ b/meta-gnome/classes/clutter.bbclass
@@ -0,0 +1,18 @@
+def get_minor_dir(v):
+ import re
+ m = re.match(r"^([0-9]+)\.([0-9]+)", v)
+ return "%s.%s" % (m.group(1), m.group(2))
+
+def get_real_name(n):
+ import re
+ m = re.match(r"^([a-z]+(-[a-z]+)?)(-[0-9]+\.[0-9]+)?", n)
+ return "%s" % (m.group(1))
+
+VERMINOR = "${@get_minor_dir("${PV}")}"
+REALNAME = "${@get_real_name("${BPN}")}"
+
+SRC_URI = "${GNOME_MIRROR}/${REALNAME}/${VERMINOR}/${REALNAME}-${PV}.tar.xz;name=archive"
+S = "${WORKDIR}/${REALNAME}-${PV}"
+
+CLUTTERBASEBUILDCLASS ??= "autotools"
+inherit ${CLUTTERBASEBUILDCLASS} pkgconfig gtk-doc gettext
diff --git a/meta-gnome/classes/gnome-help.bbclass b/meta-gnome/classes/gnome-help.bbclass
new file mode 100644
index 0000000000..750670ae24
--- /dev/null
+++ b/meta-gnome/classes/gnome-help.bbclass
@@ -0,0 +1,67 @@
+# Class to pack gnome help files or delete them during install
+# There are the following cases:
+#
+# if 'helpfiles' not in DISTRO_FEATURES
+# delete all help contants during install
+# else
+# if PACKAGE_NO_HELP_SPLIT == 1
+# pack all help files to ${PN}-help
+# else
+# pack all help files to ${PN}-help-<lingua>
+
+# Dummy to get yelp build & PACKAGE_NO_HELP_SPLIT set 1
+PACKAGES:append = " ${PN}-help"
+FILES:${PN}-help = "${datadir}/help"
+RRECOMMENDS:${PN}-help = "${@bb.utils.contains('DISTRO_FEATURES','helpfiles','yelp','',d)}"
+
+do_install:append() {
+ if ${@bb.utils.contains('DISTRO_FEATURES','helpfiles','false','true',d)}; then
+ rm -rf ${D}${datadir}/help/*
+ fi
+}
+
+python gnome_do_split_help() {
+ if bb.utils.contains('DISTRO_FEATURES', 'helpfiles', False, True, d):
+ return
+
+ if (d.getVar('PACKAGE_NO_HELP_SPLIT') == '1'):
+ # all help files go to ${
+ bb.debug(1, "package requested not splitting help-files")
+ return
+
+ packages = (d.getVar('PACKAGES') or "").split()
+ datadir = d.getVar('datadir')
+ dvar = d.getVar('PKGD')
+ pn = d.getVar('PN')
+
+ if pn + '-help' in packages:
+ packages.remove(pn + '-help')
+
+ helpdir = os.path.join(dvar + datadir, 'help')
+
+ if not cpath.isdir(helpdir):
+ bb.warn("No help files in this package - remove gnome-help from inherit?")
+ return
+
+ helps = os.listdir(helpdir)
+
+ summary = d.getVar('SUMMARY') or pn
+ description = d.getVar('DESCRIPTION') or ""
+ locale_section = d.getVar('LOCALE_SECTION')
+ mlprefix = d.getVar('MLPREFIX') or ""
+ for l in sorted(helps):
+ ln = legitimize_package_name(l)
+ pkg = pn + '-help-' + ln
+ packages.append(pkg)
+ d.setVar('FILES:' + pkg, os.path.join(datadir, 'help', l))
+ d.setVar('RRECOMMENDS:' + pkg, '%syelp' % mlprefix)
+ d.setVar('SUMMARY:' + pkg, '%s - %s help' % (summary, l))
+ d.setVar('DESCRIPTION:' + pkg, '%s This package contains language help files for the %s locale.' % (description, l))
+ if locale_section:
+ d.setVar('SECTION:' + pkg, locale_section)
+
+ d.setVar('PACKAGES', ' '.join(packages))
+}
+
+PACKAGESPLITFUNCS:prepend = "gnome_do_split_help "
+
diff --git a/meta-gnome/conf/include/non-repro-meta-gnome.inc b/meta-gnome/conf/include/non-repro-meta-gnome.inc
new file mode 100755
index 0000000000..553bc32cc6
--- /dev/null
+++ b/meta-gnome/conf/include/non-repro-meta-gnome.inc
@@ -0,0 +1,13 @@
+# List of known non-reproducible package of the meta-gnome layer
+# Please keep this list sorted
+KNOWN_NON_REPRO_META_GNOME = " \
+ geary \
+ geary-dbg \
+ gegl-dev \
+ gimp \
+ gimp-dbg \
+ gnome-terminal-src \
+ grilo-src \
+ gtk-vnc-src \
+ ibus \
+"
diff --git a/meta-gnome/conf/layer.conf b/meta-gnome/conf/layer.conf
index 862d622ee0..f831de78c4 100644
--- a/meta-gnome/conf/layer.conf
+++ b/meta-gnome/conf/layer.conf
@@ -6,12 +6,26 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "gnome-layer"
BBFILE_PATTERN_gnome-layer := "^${LAYERDIR}/"
-BBFILE_PRIORITY_gnome-layer = "7"
+BBFILE_PRIORITY_gnome-layer = "5"
+
+# auto-pack gnome help files
+IMAGE_LINGUAS_COMPLEMENTARY:append = " ${@bb.utils.contains('DISTRO_FEATURES','helpfiles','*-help-%s','',d)}"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
LAYERVERSION_gnome-layer = "1"
-LAYERDEPENDS_gnome-layer = "core openembedded-layer networking-layer"
+LAYERDEPENDS_gnome-layer = "core openembedded-layer networking-layer meta-python"
+
+LAYERSERIES_COMPAT_gnome-layer = "styhead"
+
+SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += "\
+ faenza-icon-theme->gdk-pixbuf \
+ faenza-icon-theme->gtk+3 \
+"
-LAYERSERIES_COMPAT_gnome-layer = "thud warrior zeus"
+BBFILES_DYNAMIC += " \
+ virtualization-layer:${LAYERDIR}/dynamic-layers/meta-virtualization/*/*/*.bb \
+ virtualization-layer:${LAYERDIR}/dynamic-layers/meta-virtualization/*/*/*.bbappend \
+ security:${LAYERDIR}/dynamic-layers/meta-security/*/*/*.bb \
+"
diff --git a/meta-gnome/dynamic-layers/meta-security/recipes-gnome/gnome-remote-desktop/gnome-remote-desktop_46.2.bb b/meta-gnome/dynamic-layers/meta-security/recipes-gnome/gnome-remote-desktop/gnome-remote-desktop_46.2.bb
new file mode 100644
index 0000000000..a16a02aa7b
--- /dev/null
+++ b/meta-gnome/dynamic-layers/meta-security/recipes-gnome/gnome-remote-desktop/gnome-remote-desktop_46.2.bb
@@ -0,0 +1,40 @@
+SUMMARY = "Remote desktop daemon for GNOME using pipewire."
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+inherit gnomebase gettext gsettings features_check
+
+REQUIRED_DISTRO_FEATURES = "opengl polkit"
+
+SRC_URI[archive.sha256sum] = "97443eaffe4b1a69626886a41d25cbeb2c148d3fed43d92115c1b7d20d5238ab"
+
+DEPENDS = " \
+ asciidoc-native \
+ libdrm \
+ libei \
+ libepoxy \
+ cairo \
+ glib-2.0 \
+ pipewire \
+ polkit \
+ libnotify \
+ libopus \
+ libsecret \
+ nv-codec-headers \
+ tpm2-tss \
+"
+
+PACKAGECONFIG ??= " \
+ rdp \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
+"
+
+PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false,pipewire-native wireplumber-native dbus-native"
+PACKAGECONFIG[vnc] = "-Dvnc=true,-Dvnc=false,libvncserver"
+PACKAGECONFIG[rdp] = "-Drdp=true,-Drdp=false,freerdp3 fuse3 libxkbcommon"
+PACKAGECONFIG[systemd] = "-Dsystemd=true,-Dsystemd=false,systemd"
+
+PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src"
+FILES:${PN} += "${systemd_user_unitdir} ${systemd_system_unitdir} ${datadir} ${libdir}/sysusers.d ${libdir}/tmpfiles.d"
diff --git a/meta-gnome/dynamic-layers/meta-virtualization/recipes-gnome/gnome-boxes/gnome-boxes_46.1.bb b/meta-gnome/dynamic-layers/meta-virtualization/recipes-gnome/gnome-boxes/gnome-boxes_46.1.bb
new file mode 100644
index 0000000000..6272065de6
--- /dev/null
+++ b/meta-gnome/dynamic-layers/meta-virtualization/recipes-gnome/gnome-boxes/gnome-boxes_46.1.bb
@@ -0,0 +1,43 @@
+SUMMARY = "A simple GNOME application to access virtual machines."
+SECTION = "network"
+LICENSE = "LGPL-2.1-or-later"
+LIC_FILES_CHKSUM = "file://copyright;md5=a65e9b0c9f78617732f09f68fc4ef79a"
+
+GNOMEBASEBUILDCLASS = "meson"
+
+REQUIRED_DISTRO_FEATURES += "gobject-introspection-data"
+
+DEPENDS = " \
+ glib-2.0 \
+ desktop-file-utils-native \
+ libarchive \
+ libgudev \
+ libhandy \
+ libosinfo \
+ libportal \
+ libsecret \
+ libsoup \
+ libvirt-glib \
+ mtools \
+ spice-gtk \
+ tracker \
+ webkitgtk3 \
+ appstream-glib-native \
+ spice-protocol \
+ yelp-tools \
+"
+
+RDEPENDS:${PN} = "glib-2.0-dev libvirt-virsh qemu-common qemu-system-x86-64 genisoimage"
+
+inherit gnomebase gsettings pkgconfig mime-xdg gtk-icon-cache gobject-introspection vala features_check
+
+SRC_URI[archive.sha256sum] = "900c177f6762640370a6634cf9e7d3cd8207e498367a8a667a6b731b04116036"
+
+GIR_MESON_OPTION = ""
+VALA_MESON_OPTION = ""
+
+CFLAGS += "-Wno-int-conversion"
+
+FILES:${PN} += "${datadir}"
+
+INSANE_SKIP:${PN} = "dev-deps"
diff --git a/meta-gnome/files/static-passwd-meta-gnome b/meta-gnome/files/static-passwd-meta-gnome
new file mode 100644
index 0000000000..4502d8bd10
--- /dev/null
+++ b/meta-gnome/files/static-passwd-meta-gnome
@@ -0,0 +1 @@
+gdm:x:680:nogroup::/:/bin/nologin \ No newline at end of file
diff --git a/meta-gnome/recipes-apps/pinpoint/pinpoint_git.bb b/meta-gnome/recipes-apps/pinpoint/pinpoint_git.bb
deleted file mode 100644
index bf5178cf80..0000000000
--- a/meta-gnome/recipes-apps/pinpoint/pinpoint_git.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-SUMMARY = "A simple presentation tool for hackers"
-DESCRIPTION = "Pinpoint is a simple presentation tool that hopes to avoid audience death \
- by bullet point and instead encourage presentations containing beautiful \
- images and small amounts of concise text in slides."
-SECTION = "x11/multimedia"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24 \
- file://pinpoint.c;beginline=6;endline=17;md5=201d438283607da393fae6aca085454c"
-
-DEPENDS = "glib-2.0 gdk-pixbuf cogl-1.0 clutter-1.0 clutter-gst-3.0 librsvg"
-
-inherit autotools gettext pkgconfig distro_features_check
-
-# cogl requires opengl
-REQUIRED_DISTRO_FEATURES = "opengl"
-
-SRC_URI = "git://git.gnome.org/pinpoint"
-
-SRCREV = "80a056c57e819d0b75035424638813b0670830e1"
-PV = "0.1.4+gitr${SRCPV}"
-
-S = "${WORKDIR}/git"
-
-RRECOMMENDS_${PN} = "gdk-pixbuf-loader-jpeg gdk-pixbuf-loader-png"
diff --git a/meta-gnome/recipes-connectivity/folks/folks_0.15.9.bb b/meta-gnome/recipes-connectivity/folks/folks_0.15.9.bb
new file mode 100644
index 0000000000..899b8da261
--- /dev/null
+++ b/meta-gnome/recipes-connectivity/folks/folks_0.15.9.bb
@@ -0,0 +1,28 @@
+SUMMARY = "Folks is a contact aggregation library."
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
+
+DEPENDS = " \
+ glib-2.0 \
+ libgee \
+"
+
+EXTRA_OEMESON += "-Dtests=false -Db_lto=false "
+
+CFLAGS:append:toolchain-clang = " -Wno-error=implicit-function-declaration"
+# gobject-introspection is mandatory and cannot be configured
+REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
+GIR_MESON_OPTION = ""
+
+PACKAGECONFIG[eds] = "-Deds_backend=true,-Deds_backend=false,evolution-data-server"
+PACKAGECONFIG[bluez] = "-Dbluez_backend=true,-Dbluez_backend=false,evolution-data-server"
+PACKAGECONFIG[ofono] = "-Deds_backend=true -Dofono_backend=true,-Dofono_backend=false,evolution-data-server"
+PACKAGECONFIG[telepathy] = "-Dtelepathy_backend=true,-Dtelepathy_backend=false,telepathy-glib dbus-glib"
+PACKAGECONFIG[import_tool] = "-Dimport_tool=true,-Dimport_tool=false,libxml2"
+PACKAGECONFIG[inspect_tool] = "-Dinspect_tool=true,-Dinspect_tool=false"
+
+PACKAGECONFIG ??= ""
+
+inherit pkgconfig gnomebase gettext gobject-introspection vala features_check
+
+SRC_URI[archive.sha256sum] = "2311b37355c351f33f163fdc394874a22a0a0682c319493d6d8a6e420711415f"
diff --git a/meta-gnome/recipes-connectivity/geary/geary/0001-application-client.vala-hardcode-some-paths.patch b/meta-gnome/recipes-connectivity/geary/geary/0001-application-client.vala-hardcode-some-paths.patch
new file mode 100644
index 0000000000..8162e50d9b
--- /dev/null
+++ b/meta-gnome/recipes-connectivity/geary/geary/0001-application-client.vala-hardcode-some-paths.patch
@@ -0,0 +1,40 @@
+From 98243ca43e40116c22f7b867e32ad27ffd314505 Mon Sep 17 00:00:00 2001
+From: Markus Volk <f_l_k@t-online.de>
+Date: Tue, 16 Jul 2024 07:30:09 +0200
+Subject: [PATCH] application-client.vala: hardcode some paths
+
+Otherwise the build values will be stored in the binary and used if geary was not installed
+https://gitlab.gnome.org/GNOME/geary/-/blob/main/src/client/application/application-client.vala?ref_type=heads#L798
+https://gitlab.gnome.org/GNOME/geary/-/blob/main/src/client/application/application-client.vala?ref_type=heads#L365
+
+This breaks reproducibility
+WARNING: geary-46.0-r0 do_package_qa: QA Issue: File /usr/lib/geary/libgeary-client-46.0.so in package geary contains reference to TMPDIR [buildpaths]
+WARNING: geary-46.0-r0 do_package_qa: QA Issue: File /usr/lib/geary/.debug/libgeary-client-46.0.so in package geary-dbg contains reference to TMPDIR [buildpaths]
+
+Upstream-Status: Inappropriate [oe-specific]
+
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+---
+ src/client/application/application-client.vala | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/client/application/application-client.vala b/src/client/application/application-client.vala
+index 51d0f632e..acc53a65f 100644
+--- a/src/client/application/application-client.vala
++++ b/src/client/application/application-client.vala
+@@ -39,9 +39,9 @@ public class Application.Client : Gtk.Application {
+
+ public const string VERSION = _VERSION;
+ public const string INSTALL_PREFIX = _INSTALL_PREFIX;
+- public const string GSETTINGS_DIR = _GSETTINGS_DIR;
+- public const string SOURCE_ROOT_DIR = _SOURCE_ROOT_DIR;
+- public const string BUILD_ROOT_DIR = _BUILD_ROOT_DIR;
++ public const string GSETTINGS_DIR = "/usr/share/applications";
++ public const string SOURCE_ROOT_DIR = "/usr/src";
++ public const string BUILD_ROOT_DIR = "/usr/src";
+
+ // keep these in sync with meson_options.txt
+ public const string PROFILE_RELEASE = "release";
+--
+2.45.2
+
diff --git a/meta-gnome/recipes-connectivity/geary/geary_46.0.bb b/meta-gnome/recipes-connectivity/geary/geary_46.0.bb
new file mode 100644
index 0000000000..d8d48ef513
--- /dev/null
+++ b/meta-gnome/recipes-connectivity/geary/geary_46.0.bb
@@ -0,0 +1,58 @@
+SUMMARY = "Geary is an email application built around conversations, for the GNOME 3 desktop."
+SECTION = "network"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=2a2244d5a13871ad950c55877546a6a2"
+
+DEPENDS = " \
+ appstream-glib \
+ cairo \
+ desktop-file-utils-native \
+ enchant2 \
+ evolution-data-server \
+ folks \
+ gcr3 \
+ gmime \
+ gnome-online-accounts \
+ gsound \
+ gspell \
+ gtk+3 \
+ icu \
+ iso-codes \
+ json-glib \
+ libhandy \
+ libical \
+ libpeas \
+ libsecret \
+ libsoup \
+ libstemmer \
+ libxml2 \
+ sqlite3 \
+ webkitgtk3 \
+"
+
+RDEPENDS:${PN} = "gnome-keyring"
+
+inherit meson pkgconfig mime-xdg gsettings gtk-icon-cache gobject-introspection vala features_check
+
+SRC_URI = " \
+ git://github.com/GNOME/geary.git;nobranch=1;protocol=https \
+ file://0001-application-client.vala-hardcode-some-paths.patch \
+"
+
+S = "${WORKDIR}/git"
+SRCREV = "46e93c0c0dafc381e8a308b1befb07e908121722"
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+REQUIRED_DISTRO_FEATURES = "gobject-introspection-data opengl"
+
+GIR_MESON_OPTION = ""
+EXTRA_OEMESON = "-Dprofile=release"
+
+PACKAGECONFIG[libunwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind"
+PACKAGECONFIG[tnef] = "-Dtnef=enabled,-Dtnef=disabled,libytnef"
+PACKAGECONFIG[valadoc] = "-Dvaladoc=enabled,-Dvaladoc=disabled"
+
+PACKAGECONFIG ??= ""
+
+FILES:${PN} += "${datadir}"
+
diff --git a/meta-gnome/recipes-connectivity/gtk-vnc/gtk-vnc_1.3.1.bb b/meta-gnome/recipes-connectivity/gtk-vnc/gtk-vnc_1.3.1.bb
new file mode 100644
index 0000000000..8bd37f754c
--- /dev/null
+++ b/meta-gnome/recipes-connectivity/gtk-vnc/gtk-vnc_1.3.1.bb
@@ -0,0 +1,30 @@
+SUMMARY = "A VNC client viewer widget for GTK"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4339efb5fd592e45b9e2641de9fe734f"
+
+DEPENDS = " \
+ gdk-pixbuf \
+ glib-2.0 \
+ gnutls \
+ gtk+3 \
+ libgcrypt \
+ libx11 \
+ zlib \
+"
+
+REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
+GIR_MESON_OPTION = ""
+VALA_MESON_OPTION = "with-vala"
+VALA_MESON_ENABLE_FLAG ?= 'enabled'
+VALA_MESON_DISABLE_FLAG ?= 'disabled'
+
+PACKAGECONFIG[pulseaudio] = "-Dpulseaudio=enabled,-Dpulseaudio=disabled,pulseaudio"
+PACKAGECONFIG[sasl] = "-Dsasl=enabled,-Dsasl=disabled,cyrus-sasl"
+
+PACKAGECONFIG ??= "pulseaudio sasl"
+
+inherit pkgconfig gnomebase gettext gobject-introspection vala features_check
+
+PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src"
+
+SRC_URI[archive.sha256sum] = "512763ac4e0559d0158b6682ca5dd1a3bd633f082f5e4349d7158e6b5f80f1ce"
diff --git a/meta-gnome/recipes-connectivity/libnma/libnma_1.10.6.bb b/meta-gnome/recipes-connectivity/libnma/libnma_1.10.6.bb
new file mode 100644
index 0000000000..9a4dad35d1
--- /dev/null
+++ b/meta-gnome/recipes-connectivity/libnma/libnma_1.10.6.bb
@@ -0,0 +1,33 @@
+SUMMARY = "NetworkManager GUI library"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+DEPENDS = "glib-2.0 gtk+3 gtk4 networkmanager"
+
+inherit gnomebase gobject-introspection gtk-doc gettext vala features_check
+
+REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG','gcr','x11','',d)} opengl"
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+
+SRC_URI[archive.sha256sum] = "53a6fb2b190ad37c5986caed3e98bede7c3c602399ee4f93c8fc054303d76dab"
+
+PACKAGECONFIG ?= "gcr iso_codes mobile_broadband_provider_info"
+PACKAGECONFIG[gcr] = "-Dgcr=true,-Dgcr=false,gcr"
+PACKAGECONFIG[iso_codes] = "-Diso_codes=true,-Diso_codes=false,iso-codes,iso-codes"
+PACKAGECONFIG[mobile_broadband_provider_info] = "-Dmobile_broadband_provider_info=true,-Dmobile_broadband_provider_info=false,mobile-broadband-provider-info,mobile-broadband-provider-info"
+
+# for gnome-control-center >= 42
+EXTRA_OEMESON = "-Dlibnma_gtk4=true"
+
+# go introspection is not supported for mipsn32/riscv32, but vapi needs it
+#
+EXTRA_OEMESON:append:mipsarchn32 = " -Dvapi=false"
+EXTRA_OEMESON:append:riscv32 = " -Dvapi=false"
+EXTRA_OEMESON:append:powerpc64le = " -Dvapi=false"
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+do_install:append() {
+ # conflicts with the file provided by network-manager-applet
+ rm -f ${D}${datadir}/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml
+}
diff --git a/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet/0001-linker-scripts-Do-not-export-_IO_stdin_used.patch b/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet/0001-linker-scripts-Do-not-export-_IO_stdin_used.patch
new file mode 100644
index 0000000000..eafd497ae2
--- /dev/null
+++ b/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet/0001-linker-scripts-Do-not-export-_IO_stdin_used.patch
@@ -0,0 +1,30 @@
+From e09ba80e342b3b24bb2a46e11dae1c30cc61c75c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 3 Sep 2023 08:48:42 -0700
+Subject: [PATCH] linker-script: Do not export _IO_stdin_used
+
+This is glibc specific toolhain issue, it should have been handled in
+toolchain instead of exposing to applications. This was done to fix
+
+https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=835550
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ linker-script-binary.ver | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/linker-script-binary.ver b/linker-script-binary.ver
+index a2780c0..f030d35 100644
+--- a/linker-script-binary.ver
++++ b/linker-script-binary.ver
+@@ -1,6 +1,5 @@
+ {
+ global:
+- _IO_stdin_used;
+ local:
+ *;
+ };
+--
+2.42.0
+
diff --git a/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.36.0.bb b/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.36.0.bb
new file mode 100644
index 0000000000..10e514775a
--- /dev/null
+++ b/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.36.0.bb
@@ -0,0 +1,31 @@
+SUMMARY = "GTK+ applet for NetworkManager"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+DEPENDS = "gtk+3 libnma libnotify libsecret libgudev networkmanager iso-codes nss"
+
+inherit features_check gnomebase gsettings gtk-icon-cache gettext pkgconfig
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+SRC_URI:append:libc-musl = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' file://0001-linker-scripts-Do-not-export-_IO_stdin_used.patch', '', d)}"
+
+SRC_URI[archive.sha256sum] = "a84704487ea3afe1485c47fb2ab598b8f779f540ae0dcbf0a1c5f85e64a7e253"
+
+# We don't not have ubuntu's appindicator (yet?)
+EXTRA_OEMESON = "-Dappindicator=no"
+# We currently don't build NetworkManager with libteamdctl support
+EXTRA_OEMESON += "-Dteam=false"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)}"
+PACKAGECONFIG[modemmanager] = "-Dwwan=true, -Dwwan=false, modemmanager"
+PACKAGECONFIG[selinux] = "-Dselinux=true, -Dselinux=false, libselinux"
+
+RDEPENDS:${PN} =+ "networkmanager"
+
+FILES:${PN} += " \
+ ${datadir}/nm-applet/ \
+ ${datadir}/libnma/wifi.ui \
+ ${datadir}/metainfo \
+"
diff --git a/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.8.22.bb b/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.8.22.bb
deleted file mode 100644
index 37f512a73c..0000000000
--- a/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.8.22.bb
+++ /dev/null
@@ -1,44 +0,0 @@
-SUMMARY = "GTK+ applet for NetworkManager"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-
-DEPENDS = "gtk+3 libnotify libsecret networkmanager \
- libgnome-keyring iso-codes nss \
- intltool-native \
-"
-
-GNOMEBASEBUILDCLASS = "autotools-brokensep"
-inherit distro_features_check gnomebase gsettings gtk-icon-cache gobject-introspection gettext
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI[archive.md5sum] = "e0373f4c0d0637716e6e385799a9080f"
-SRC_URI[archive.sha256sum] = "ebef1c1050ff6d94cad060e8d259f2a88ae159cf83ca75cb71d9f76867877eed"
-
-PACKAGECONFIG[modemmanager] = "--with-wwan,--without-wwan,modemmanager"
-PACKAGECONFIG[mobile-provider-info] = "--enable-mobile-broadband-provider-info,--disable-mobile-broadband-provider-info,mobile-broadband-provider-info,mobile-broadband-provider-info"
-PACKAGECONFIG ??= ""
-
-EXTRA_OECONF = " \
- --without-selinux \
-"
-
-# gobject-introspection related
-GI_DATA_ENABLED_libc-musl = "False"
-
-do_compile_prepend() {
- export GIR_EXTRA_LIBS_PATH="${B}/src/libnma/.libs"
-}
-
-RDEPENDS_${PN} =+ "networkmanager"
-
-FILES_${PN} += " \
- ${datadir}/nm-applet/ \
- ${datadir}/libnma/wifi.ui \
- ${datadir}/metainfo \
-"
-
-# musl builds generate gir files which otherwise go un-packaged
-FILES_${PN}-dev += " \
- ${datadir}/gir-1.0 \
-"
diff --git a/meta-gnome/recipes-extended/gparted/files/0001-Install-polkit-action-unconditionally-executable-pke.patch b/meta-gnome/recipes-extended/gparted/files/0001-Install-polkit-action-unconditionally-executable-pke.patch
new file mode 100644
index 0000000000..a7fc4d5973
--- /dev/null
+++ b/meta-gnome/recipes-extended/gparted/files/0001-Install-polkit-action-unconditionally-executable-pke.patch
@@ -0,0 +1,47 @@
+From 79fd11f1d8e4827ae8aee03420a5c92038fe4ef5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Wed, 26 Feb 2020 20:25:06 +0100
+Subject: [PATCH] Install polkit action unconditionally - executable pkexec is
+ not in our sysroot
+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 | 17 +----------------
+ 1 file changed, 1 insertion(+), 16 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 43503ac..b339ee5 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -24,22 +24,7 @@ dnl======================
+ dnl Find graphical privilege escalation program
+ dnl======================
+ dnl Check for pkexec >= 0.102 for it's ability to run X11 apps.
+-AM_CONDITIONAL([INSTALL_POLKIT_ACTIONS], false)
+-PKEXEC_REQUIRED_VERSION='0.102'
+-AC_MSG_CHECKING([for pkexec >= $PKEXEC_REQUIRED_VERSION])
+-PKEXEC_REQUIRED_INT=`echo "$PKEXEC_REQUIRED_VERSION" | $AWK -F. '{print $1 * 10000 + $2}'`
+-PKEXEC_VERSION_OUTPUT=`pkexec --version 2> /dev/null` ||
+- AC_MSG_RESULT([not found])
+-if test "x$PKEXEC_VERSION_OUTPUT" != 'x'; then
+- PKEXEC_FOUND_VERSION=`echo "$PKEXEC_VERSION_OUTPUT" | head -1 | cut -d' ' -f3`
+- PKEXEC_FOUND_INT=`echo "$PKEXEC_FOUND_VERSION" | $AWK -F. '{print $1 * 10000 + $2}'`
+- AC_MSG_RESULT([$PKEXEC_FOUND_VERSION found])
+- if test "$PKEXEC_FOUND_INT" -ge "$PKEXEC_REQUIRED_INT"; then
+- GKSUPROG='pkexec --disable-internal-agent'
+- AC_SUBST([GKSUPROG])
+- AM_CONDITIONAL([INSTALL_POLKIT_ACTIONS], true)
+- fi
+-fi
++AM_CONDITIONAL([INSTALL_POLKIT_ACTIONS], true)
+
+ dnl Check for alternative graphical privilege escalation programs.
+ if test "x$GKSUPROG" = 'x'; then
+--
+2.21.0
+
diff --git a/meta-gnome/recipes-extended/gparted/files/gparted_polkit b/meta-gnome/recipes-extended/gparted/files/gparted_polkit
deleted file mode 100644
index feabd0eebb..0000000000
--- a/meta-gnome/recipes-extended/gparted/files/gparted_polkit
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/sh
-
-# polkit installed?
-if [ $(which pkexec) ]; then
- pkexec --disable-internal-agent "%sbindir%/gparted" "$@"
-else
- %sbindir%/gparted "$@"
-fi
-
-
diff --git a/meta-gnome/recipes-extended/gparted/files/org.yoctoproject.pkexec.run-gparted.policy b/meta-gnome/recipes-extended/gparted/files/org.yoctoproject.pkexec.run-gparted.policy
deleted file mode 100644
index 77a91923eb..0000000000
--- a/meta-gnome/recipes-extended/gparted/files/org.yoctoproject.pkexec.run-gparted.policy
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE policyconfig PUBLIC
- "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
- "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
-<policyconfig>
-
- <action id="org.yoctoproject.pkexec.run-gparted">
- <description>Run the GParted program</description>
- <message>Authentication is required to run the GParted Partition Editor</message>
- <icon_name>gparted</icon_name>
- <defaults>
- <allow_any>auth_admin</allow_any>
- <allow_inactive>auth_admin</allow_inactive>
- <allow_active>auth_admin</allow_active>
- </defaults>
- <annotate key="org.freedesktop.policykit.exec.path">/usr/sbin/gparted</annotate>
- <annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
- </action>
-
-</policyconfig>
diff --git a/meta-gnome/recipes-extended/gparted/gparted_0.33.0.bb b/meta-gnome/recipes-extended/gparted/gparted_0.33.0.bb
deleted file mode 100644
index de143b9c87..0000000000
--- a/meta-gnome/recipes-extended/gparted/gparted_0.33.0.bb
+++ /dev/null
@@ -1,40 +0,0 @@
-SUMMARY = "A partition editor to graphically manage disk partitions "
-HOMEPAGE = "http://gparted.org/index.php"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-inherit distro_features_check autotools pkgconfig gtk-icon-cache
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI = " \
- ${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}/${BPN}-${PV}/${BPN}-${PV}.tar.gz \
- file://org.yoctoproject.pkexec.run-gparted.policy \
- file://gparted_polkit \
-"
-SRC_URI[md5sum] = "2f481ad34decb7021ca04ca305e79e7d"
-SRC_URI[sha256sum] = "5023b8c983f88a22e65bf6f09a12ea09369defc008981b52ee8b96a3879f81d6"
-
-DEPENDS += "glib-2.0 glib-2.0-native gtkmm parted gnome-doc-utils intltool-native"
-
-do_install_append() {
- # Add a script which checks if polkit is installed.
- # If yes: a policy is requested from polkit / otherwise start as usual
- install ${WORKDIR}/gparted_polkit ${D}${sbindir}
- sed -i 's:%sbindir%:${sbindir}:g' ${D}${sbindir}/gparted_polkit
- # relink menu entry to use our script
- sed -i 's:${sbindir}/gparted:${sbindir}/gparted_polkit:g' ${D}${datadir}/applications/gparted.desktop
-
- install -d ${D}${datadir}/polkit-1/actions
- install ${WORKDIR}/org.yoctoproject.pkexec.run-gparted.policy ${D}${datadir}/polkit-1/actions/org.yoctoproject.pkexec.run-gparted.policy
-}
-
-EXTRA_OECONF = "--disable-scrollkeeper --disable-doc"
-
-FILES_${PN} += " \
- ${datadir}/appdata \
- ${datadir}/icons \
- ${datadir}/polkit-1 \
-"
-
-RDEPENDS_${PN} = "dosfstools mtools e2fsprogs"
diff --git a/meta-gnome/recipes-extended/gparted/gparted_1.6.0.bb b/meta-gnome/recipes-extended/gparted/gparted_1.6.0.bb
new file mode 100644
index 0000000000..ab2890679a
--- /dev/null
+++ b/meta-gnome/recipes-extended/gparted/gparted_1.6.0.bb
@@ -0,0 +1,45 @@
+SUMMARY = "A partition editor to graphically manage disk partitions "
+HOMEPAGE = "http://gparted.org/index.php"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+inherit autotools pkgconfig python3native gettext gnome-help gtk-icon-cache features_check
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+
+SRC_URI = " \
+ ${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}/${BPN}-${PV}/${BPN}-${PV}.tar.gz \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'file://0001-Install-polkit-action-unconditionally-executable-pke.patch', '', d)} \
+"
+SRC_URI[sha256sum] = "9b9f51b3ce494ddcb59a55e1ae6679c09436604e331dbf5a536d60ded6c6ea5b"
+
+UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/gparted/files/gparted/"
+UPSTREAM_CHECK_REGEX = "gparted-(?P<pver>\d+\.(\d+)+(\.\d+)+)"
+
+DEPENDS += " \
+ glib-2.0-native \
+ yelp-tools-native \
+ intltool-native \
+ glib-2.0 \
+ gtkmm3 \
+ parted \
+"
+
+PACKAGECONFIG = "${@bb.utils.filter('DISTRO_FEATURES', 'polkit', d)}"
+PACKAGECONFIG[polkit] = ",,polkit"
+
+FILES:${PN} += " \
+ ${datadir}/appdata \
+ ${datadir}/icons \
+ ${datadir}/metainfo \
+"
+
+PACKAGES += "${PN}-polkit"
+FILES:${PN}-polkit = "${datadir}/polkit-1"
+
+RDEPENDS:${PN} = " \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'polkit', '${PN}-polkit', '', d)} \
+ dosfstools \
+ mtools \
+ e2fsprogs \
+"
diff --git a/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0001-Select-the-current-user-to-authenticate-with-by-defa.patch b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0001-Select-the-current-user-to-authenticate-with-by-defa.patch
new file mode 100644
index 0000000000..f8f7ec34f9
--- /dev/null
+++ b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0001-Select-the-current-user-to-authenticate-with-by-defa.patch
@@ -0,0 +1,80 @@
+From: Utopia Maintenance Team
+ <pkg-utopia-maintainers@lists.alioth.debian.org>
+Date: Mon, 30 Apr 2018 17:56:52 +0000
+Subject: Select the current user to authenticate with by default
+
+Bug: http://bugzilla.gnome.org/show_bug.cgi?id=596188
+Bug-Ubuntu: https://launchpad.net/bugs/435227
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/polkitgnomeauthenticationdialog.c | 23 ++++++++++++++---------
+ 1 file changed, 14 insertions(+), 9 deletions(-)
+
+diff --git a/src/polkitgnomeauthenticationdialog.c b/src/polkitgnomeauthenticationdialog.c
+index 743cc96..d307516 100644
+--- a/src/polkitgnomeauthenticationdialog.c
++++ b/src/polkitgnomeauthenticationdialog.c
+@@ -138,7 +138,7 @@ user_combobox_changed (GtkComboBox *widget,
+ static void
+ create_user_combobox (PolkitGnomeAuthenticationDialog *dialog)
+ {
+- int n;
++ int n, i, selected_index = 0;
+ GtkComboBox *combo;
+ GtkTreeIter iter;
+ GtkCellRenderer *renderer;
+@@ -162,7 +162,7 @@ create_user_combobox (PolkitGnomeAuthenticationDialog *dialog)
+
+
+ /* For each user */
+- for (n = 0; dialog->priv->users[n] != NULL; n++)
++ for (i = 0, n = 0; dialog->priv->users[n] != NULL; n++)
+ {
+ gchar *gecos;
+ gchar *real_name;
+@@ -224,6 +224,14 @@ create_user_combobox (PolkitGnomeAuthenticationDialog *dialog)
+ USERNAME_COL, dialog->priv->users[n],
+ -1);
+
++ i++;
++ if (passwd->pw_uid == getuid ())
++ {
++ selected_index = i;
++ g_free (dialog->priv->selected_user);
++ dialog->priv->selected_user = g_strdup (dialog->priv->users[n]);
++ }
++
+ g_free (real_name);
+ g_object_unref (pixbuf);
+ }
+@@ -252,8 +260,8 @@ create_user_combobox (PolkitGnomeAuthenticationDialog *dialog)
+ user_combobox_set_sensitive,
+ NULL, NULL);
+
+- /* Initially select the "Select user..." ... */
+- gtk_combo_box_set_active (GTK_COMBO_BOX (combo), 0);
++ /* Select the default user */
++ gtk_combo_box_set_active (GTK_COMBO_BOX (combo), selected_index);
+
+ /* Listen when a new user is selected */
+ g_signal_connect (GTK_WIDGET (combo),
+@@ -719,16 +727,13 @@ polkit_gnome_authentication_dialog_constructed (GObject *object)
+ gtk_widget_set_tooltip_markup (label, s);
+ g_free (s);
+
+- if (have_user_combobox)
++ /* Disable password entry and authenticate until have a user selected */
++ if (have_user_combobox && gtk_combo_box_get_active (GTK_COMBO_BOX (dialog->priv->user_combobox)) == 0)
+ {
+- /* ... and make the password entry and "Authenticate" button insensitive */
+ gtk_widget_set_sensitive (dialog->priv->prompt_label, FALSE);
+ gtk_widget_set_sensitive (dialog->priv->password_entry, FALSE);
+ gtk_widget_set_sensitive (dialog->priv->auth_button, FALSE);
+ }
+- else
+- {
+- }
+
+ gtk_widget_realize (GTK_WIDGET (dialog));
+
diff --git a/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0002-Auth-dialog-Make-the-label-wrap-at-70-chars.patch b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0002-Auth-dialog-Make-the-label-wrap-at-70-chars.patch
new file mode 100644
index 0000000000..011fe6ef25
--- /dev/null
+++ b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0002-Auth-dialog-Make-the-label-wrap-at-70-chars.patch
@@ -0,0 +1,34 @@
+From: Lars Uebernickel <lars@uebernic.de>
+Date: Fri, 17 Oct 2014 15:35:25 +0200
+Subject: Auth dialog: Make the label wrap at 70 chars
+
+Because GtkWindow doesn't have a default width anymore.
+
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=738688
+Bug-Ubuntu: https://launchpad.net/bugs/1382566
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/polkitgnomeauthenticationdialog.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/polkitgnomeauthenticationdialog.c b/src/polkitgnomeauthenticationdialog.c
+index d307516..efd4185 100644
+--- a/src/polkitgnomeauthenticationdialog.c
++++ b/src/polkitgnomeauthenticationdialog.c
+@@ -574,6 +574,7 @@ polkit_gnome_authentication_dialog_constructed (GObject *object)
+ g_free (s);
+ gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
+ gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
++ gtk_label_set_max_width_chars (GTK_LABEL (label), 70);
+ gtk_box_pack_start (GTK_BOX (main_vbox), label, FALSE, FALSE, 0);
+
+ /* secondary message */
+@@ -601,6 +602,7 @@ polkit_gnome_authentication_dialog_constructed (GObject *object)
+ }
+ gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
+ gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
++ gtk_label_set_max_width_chars (GTK_LABEL (label), 70);
+ gtk_box_pack_start (GTK_BOX (main_vbox), label, FALSE, FALSE, 0);
+
+ /* user combobox */
diff --git a/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0003-Get-user-icon-from-accountsservice-instead-of-lookin.patch b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0003-Get-user-icon-from-accountsservice-instead-of-lookin.patch
new file mode 100644
index 0000000000..a3759c4dcf
--- /dev/null
+++ b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0003-Get-user-icon-from-accountsservice-instead-of-lookin.patch
@@ -0,0 +1,138 @@
+From: Marc Deslauriers <marc.deslauriers@canonical.com>
+Date: Mon, 30 Apr 2018 18:03:22 +0000
+Subject: Get user icon from accountsservice instead of looking in ~/.face
+
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=669857
+Bug-Ubuntu: https://launchpad.net/bugs/928249
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/polkitgnomeauthenticationdialog.c | 107 ++++++++++++++++++++++++++++++----
+ 1 file changed, 97 insertions(+), 10 deletions(-)
+
+diff --git a/src/polkitgnomeauthenticationdialog.c b/src/polkitgnomeauthenticationdialog.c
+index efd4185..565da87 100644
+--- a/src/polkitgnomeauthenticationdialog.c
++++ b/src/polkitgnomeauthenticationdialog.c
+@@ -135,6 +135,102 @@ user_combobox_changed (GtkComboBox *widget,
+ }
+ }
+
++static GdkPixbuf *
++get_user_icon (char *username)
++{
++ GError *error;
++ GDBusConnection *connection;
++ GVariant *find_user_result;
++ GVariant *get_icon_result;
++ GVariant *icon_result_variant;
++ const gchar *user_path;
++ const gchar *icon_filename;
++ GdkPixbuf *pixbuf;
++
++ error = NULL;
++ connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, &error);
++
++ if (connection == NULL)
++ {
++ g_warning ("Unable to connect to system bus: %s", error->message);
++ g_error_free (error);
++ return NULL;
++ }
++
++ find_user_result = g_dbus_connection_call_sync (connection,
++ "org.freedesktop.Accounts",
++ "/org/freedesktop/Accounts",
++ "org.freedesktop.Accounts",
++ "FindUserByName",
++ g_variant_new ("(s)",
++ username),
++ G_VARIANT_TYPE ("(o)"),
++ G_DBUS_CALL_FLAGS_NONE,
++ -1,
++ NULL,
++ &error);
++
++ if (find_user_result == NULL)
++ {
++ g_warning ("Accounts couldn't find user: %s", error->message);
++ g_error_free (error);
++ return NULL;
++ }
++
++ user_path = g_variant_get_string (g_variant_get_child_value (find_user_result, 0),
++ NULL);
++
++ get_icon_result = g_dbus_connection_call_sync (connection,
++ "org.freedesktop.Accounts",
++ user_path,
++ "org.freedesktop.DBus.Properties",
++ "Get",
++ g_variant_new ("(ss)",
++ "org.freedesktop.Accounts.User",
++ "IconFile"),
++ G_VARIANT_TYPE ("(v)"),
++ G_DBUS_CALL_FLAGS_NONE,
++ -1,
++ NULL,
++ &error);
++
++ g_variant_unref (find_user_result);
++
++ if (get_icon_result == NULL)
++ {
++ g_warning ("Accounts couldn't find user icon: %s", error->message);
++ g_error_free (error);
++ return NULL;
++ }
++
++ g_variant_get_child (get_icon_result, 0, "v", &icon_result_variant);
++ icon_filename = g_variant_get_string (icon_result_variant, NULL);
++
++ if (icon_filename == NULL)
++ {
++ g_warning ("Accounts didn't return a valid filename for user icon");
++ pixbuf = NULL;
++ }
++ else
++ {
++ /* TODO: we probably shouldn't hard-code the size to 16x16 */
++ pixbuf = gdk_pixbuf_new_from_file_at_size (icon_filename,
++ 16,
++ 16,
++ &error);
++ if (pixbuf == NULL)
++ {
++ g_warning ("Couldn't open user icon: %s", error->message);
++ g_error_free (error);
++ }
++ }
++
++ g_variant_unref (icon_result_variant);
++ g_variant_unref (get_icon_result);
++
++ return pixbuf;
++}
++
+ static void
+ create_user_combobox (PolkitGnomeAuthenticationDialog *dialog)
+ {
+@@ -197,16 +293,7 @@ create_user_combobox (PolkitGnomeAuthenticationDialog *dialog)
+ g_free (gecos);
+
+ /* Load users face */
+- pixbuf = NULL;
+- if (passwd->pw_dir != NULL)
+- {
+- gchar *path;
+- path = g_strdup_printf ("%s/.face", passwd->pw_dir);
+- /* TODO: we probably shouldn't hard-code the size to 16x16 */
+- pixbuf = gdk_pixbuf_new_from_file_at_scale (path, 16, 16, TRUE, NULL);
+- g_free (path);
+- }
+-
++ pixbuf = get_user_icon (dialog->priv->users[n]);
+ /* fall back to avatar-default icon */
+ if (pixbuf == NULL)
+ {
diff --git a/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0004-Use-fresh-X11-timestamps-when-displaying-authenticat.patch b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0004-Use-fresh-X11-timestamps-when-displaying-authenticat.patch
new file mode 100644
index 0000000000..2c9c5bb16b
--- /dev/null
+++ b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0004-Use-fresh-X11-timestamps-when-displaying-authenticat.patch
@@ -0,0 +1,48 @@
+From: Jeffrey Knockel <jeff250@gmail.com>
+Date: Mon, 30 Apr 2018 18:05:20 +0000
+Subject: Use fresh X11 timestamps when displaying authentication dialog
+
+This circumvents focus-stealing prevention.
+
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=676076
+Bug-Debian: https://bugs.debian.org/684300
+Bug-Ubuntu: https://launchpad.net/bugs/946171
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/polkitgnomeauthenticator.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/src/polkitgnomeauthenticator.c b/src/polkitgnomeauthenticator.c
+index 23163b4..e57d76e 100644
+--- a/src/polkitgnomeauthenticator.c
++++ b/src/polkitgnomeauthenticator.c
+@@ -26,6 +26,7 @@
+ #include <sys/types.h>
+ #include <pwd.h>
+ #include <glib/gi18n.h>
++#include <gdk/gdkx.h>
+
+ #include <polkit/polkit.h>
+ #include <polkitagent/polkitagent.h>
+@@ -306,7 +307,17 @@ session_request (PolkitAgentSession *session,
+ }
+
+ gtk_widget_show_all (GTK_WIDGET (authenticator->dialog));
+- gtk_window_present (GTK_WINDOW (authenticator->dialog));
++ GdkWindow *window = gtk_widget_get_window (GTK_WIDGET (authenticator->dialog));
++
++ if (GDK_IS_X11_WINDOW (window))
++ {
++ gtk_window_present_with_time (GTK_WINDOW (authenticator->dialog), gdk_x11_get_server_time (window));
++ }
++ else
++ {
++ gtk_window_present (GTK_WINDOW (authenticator->dialog));
++ }
++
+ password = polkit_gnome_authentication_dialog_run_until_response_for_prompt (POLKIT_GNOME_AUTHENTICATION_DIALOG (authenticator->dialog),
+ modified_request,
+ echo_on,
+
diff --git a/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0005-configure.ac-disable-gnome-tools-that-are-not-provid.patch b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0005-configure.ac-disable-gnome-tools-that-are-not-provid.patch
new file mode 100644
index 0000000000..7eee12a920
--- /dev/null
+++ b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/0005-configure.ac-disable-gnome-tools-that-are-not-provid.patch
@@ -0,0 +1,29 @@
+From 334abb04ff953dabec63a91094de43e3cf064d7d Mon Sep 17 00:00:00 2001
+From: Markus Volk <f_l_k@t-online.de>
+Date: Fri, 24 Feb 2023 17:29:24 +0100
+Subject: [PATCH] configure.ac: disable gnome-tools that are not provided
+
+Upstream-Status: Inappropriate [OE-specific]
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 24eb724..02fccbd 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -33,8 +33,8 @@ LT_INIT
+ # GNOME
+ # *****
+
+-GNOME_DEBUG_CHECK
+-GNOME_COMPILE_WARNINGS([maximum])
++#GNOME_DEBUG_CHECK
++#GNOME_COMPILE_WARNINGS([maximum])
+
+ #### gcc warning flags
+
+--
+2.34.1
+
diff --git a/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/polkit-gnome-authentication-agent-1.desktop b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/polkit-gnome-authentication-agent-1.desktop
new file mode 100644
index 0000000000..c45acfa543
--- /dev/null
+++ b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome/polkit-gnome-authentication-agent-1.desktop
@@ -0,0 +1,87 @@
+[Desktop Entry]
+Name=PolicyKit Authentication Agent
+Name[ar]=مدير الاستيثاق PolicyKit
+Name[be]=PolicyKit - аґент аўтэнтыфікацыі
+Name[bn_IN]=PolicyKit অনুমোদনের এজেন্ট
+Name[ca]=Agent d'autenticació del PolicyKit
+Name[cs]=Ověřovací agent PolicyKit
+Name[da]=Godkendelsesprogrammet PolicyKit
+Name[de]=Legitimationsdienst von PolicyKit
+Name[el]=Πράκτορας πιστοποίησης PolicyKit
+Name[en_GB]=PolicyKit Authentication Agent
+Name[es]=Agente de autenticación de PolicyKit
+Name[eu]=PolicyKit autentifikatzeko agentea
+Name[fi]=PolicytKit-tunnistautumisohjelma
+Name[fr]=Agent d'authentification de PolicyKit
+Name[gl]=Axente de autenticación PolicyKit
+Name[gu]=PolicyKit સત્તાધિકરણ એજન્ટ
+Name[hi]=PolicyKit प्रमाणीकरण प्रतिनिधि
+Name[hu]=PolicyKit hitelesítési ügynök
+Name[it]=Agente di autenticazione per PolicyKit
+Name[ja]=PolicyKit 認証エージェント
+Name[kn]=PolicyKit ದೃಢೀಕರಣ ಮಧ್ಯವರ್ತಿ
+Name[lt]=PolicyKit tapatybės nustatymo agentas
+Name[ml]=പോളിസിക്കിറ്റ് ഓഥന്റിക്കേഷന്‍ ഏജന്റ്
+Name[mr]=PolicyKit ऑथेंटीकेशन एजेंट
+Name[or]=PolicyKit ବୈଧିକରଣ ସଦସ୍ୟ
+Name[pa]=ਪਾਲਸੀਕਿੱਟ ਪਰਮਾਣਕਿਤਾ ਏਜੰਟ
+Name[pl]=Agent uwierzytelniania PolicyKit
+Name[pt]=Agente de Autenticação PolicyKit
+Name[pt_BR]=Agente de autenticação PolicyKit
+Name[ro]=Agent de autentificare PolicyKit
+Name[sk]=Agent PolicyKit na overovanie totožnosti
+Name[sl]=PolicyKit program overjanja
+Name[sv]=Autentiseringsagent för PolicyKit
+Name[ta]=PolicyKit அங்கீகார முகவர்
+Name[te]=పాలసీకిట్ ధృవీకరణ ప్రతినిధి
+Name[th]=ตัวกลางสำหรับยืนยันตัวบุคคล PolicyKit
+Name[uk]=Агент автентифікації PolicyKit
+Name[zh_CN]=PolicyKit 认证代理
+Name[zh_HK]=PolicyKit 驗證代理程式
+Name[zh_TW]=PolicyKit 驗證代理程式
+Comment=PolicyKit Authentication Agent
+Comment[ar]=مدير الاستيثاق PolicyKit
+Comment[be]=PolicyKit - аґент аўтэнтыфікацыі
+Comment[bn_IN]=PolicyKit অনুমোদনের এজেন্ট
+Comment[ca]=Agent d'autenticació del PolicyKit
+Comment[cs]=Ověřovací agent PolicyKit
+Comment[da]=Godkendelsesprogrammet PolicyKit
+Comment[de]=Legitimationsdienst von PolicyKit
+Comment[el]=Πράκτορας πιστοποίησης PolicyKit
+Comment[en_GB]=PolicyKit Authentication Agent
+Comment[es]=Agente de autenticación de PolicyKit
+Comment[eu]=PolicyKit autentifikatzeko agentea
+Comment[fi]=PolicytKit-tunnistautumisohjelma
+Comment[fr]=Agent d'authentification de PolicyKit
+Comment[gl]=Axente de autenticación PolicyKit
+Comment[gu]=PolicyKit સત્તાધિકરણ એજન્ટ
+Comment[hi]=PolicyKit प्रमाणीकरण प्रतिनिधि
+Comment[hu]=PolicyKit hitelesítési ügynök
+Comment[it]=Agente di autenticazione per PolicyKit
+Comment[ja]=PolicyKit 認証エージェント
+Comment[kn]=PolicyKit ದೃಢೀಕರಣ ಮಧ್ಯವರ್ತಿ
+Comment[lt]=PolicyKit tapatybės nustatymo agentas
+Comment[ml]=പോളിസിക്കിറ്റ് ഓഥന്റിക്കേഷന്‍ ഏജന്റ്
+Comment[mr]=PolicyKit ऑथेंटीकेशन एजेंट
+Comment[or]=PolicyKit ବୈଧିକରଣ ସଦସ୍ୟ
+Comment[pa]=ਪਾਲਸੀਕਿੱਟ ਪਰਮਾਣਕਿਤਾ ਏਜੰਟ
+Comment[pl]=Agent uwierzytelniania PolicyKit
+Comment[pt]=Agente de Autenticação PolicyKit
+Comment[pt_BR]=Agente de autenticação PolicyKit
+Comment[ro]=Agent de autentificare PolicyKit
+Comment[sk]=Agent PolicyKit na overovanie totožnosti
+Comment[sl]=PolicyKit program overjanja
+Comment[sv]=Autentiseringsagent för PolicyKit
+Comment[ta]=PolicyKit அங்கீகார முகவர்
+Comment[te]=పాలసీకిట్ ధృవీకరణ ప్రతినిధి
+Comment[th]=ตัวกลางสำหรับยืนยันตัวบุคคล PolicyKit
+Comment[uk]=Агент автентифікації PolicyKit
+Comment[zh_CN]=PolicyKit 认证代理
+Comment[zh_HK]=PolicyKit 驗證代理程式
+Comment[zh_TW]=PolicyKit 驗證代理程式
+Exec=/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
+Terminal=false
+Type=Application
+Categories=
+NoDisplay=true
+OnlyShowIn=GNOME;
diff --git a/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome_0.105.bb b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome_0.105.bb
new file mode 100644
index 0000000000..af1a7d8673
--- /dev/null
+++ b/meta-gnome/recipes-extended/polkit-gnome/polkit-gnome_0.105.bb
@@ -0,0 +1,29 @@
+SUMMARY = "PolicyKit-gnome provides an Authentication Agent for PolicyKit"
+HOMEPAGE = "https://gitlab.gnome.org/Archive/policykit-gnome"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=74579fab173e4c5e12aac0cd83ee98ec"
+
+DEPENDS = "glib-2.0-native glib-2.0 gtk+3 polkit intltool-native"
+
+inherit autotools pkgconfig features_check
+
+REQUIRED_DISTRO_FEATURES = "polkit"
+
+SRC_URI = " \
+ git://gitlab.gnome.org/Archive/policykit-gnome.git;protocol=https;branch=master \
+ file://0001-Select-the-current-user-to-authenticate-with-by-defa.patch \
+ file://0002-Auth-dialog-Make-the-label-wrap-at-70-chars.patch \
+ file://0003-Get-user-icon-from-accountsservice-instead-of-lookin.patch \
+ file://0004-Use-fresh-X11-timestamps-when-displaying-authenticat.patch \
+ file://0005-configure.ac-disable-gnome-tools-that-are-not-provid.patch \
+ file://polkit-gnome-authentication-agent-1.desktop \
+"
+SRCREV = "a0763a246a81188f60b0f9810143e49224dc752f"
+S = "${WORKDIR}/git"
+
+
+do_install:append() {
+ install -d ${D}${datadir}/applications
+ install -m644 ${UNPACKDIR}/polkit-gnome-authentication-agent-1.desktop \
+ ${D}${datadir}/applications
+}
diff --git a/meta-gnome/recipes-gimp/babl/babl_0.1.108.bb b/meta-gnome/recipes-gimp/babl/babl_0.1.108.bb
new file mode 100644
index 0000000000..e0685f781d
--- /dev/null
+++ b/meta-gnome/recipes-gimp/babl/babl_0.1.108.bb
@@ -0,0 +1,17 @@
+SUMMARY = "Babl is a dynamic, any to any, pixel format conversion library"
+LICENSE = "LGPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6a6a8e020838b23406c81b19c1d46df6"
+
+GIR_MESON_OPTION = "enable-gir"
+VALA_MESON_OPTION = "enable-vapi"
+
+inherit setuptools3 gnomebase gobject-introspection vala
+
+DEPENDS += "lcms"
+
+SRC_URI = "https://download.gimp.org/pub/${BPN}/0.1/${BP}.tar.xz"
+SRC_URI[sha256sum] = "26defe9deaab7ac4d0e076cab49c2a0d6ebd0df0c31fd209925a5f07edee1475"
+
+FILES:${PN} += "${libdir}/${BPN}-${@gnome_verdir("${PV}")}"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-gnome/recipes-gimp/gegl/gegl_0.4.48.bb b/meta-gnome/recipes-gimp/gegl/gegl_0.4.48.bb
new file mode 100644
index 0000000000..34e001a5f7
--- /dev/null
+++ b/meta-gnome/recipes-gimp/gegl/gegl_0.4.48.bb
@@ -0,0 +1,63 @@
+SUMMARY = "GEGL (Generic Graphics Library) is a graph based image processing framework"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=f1a8bfcbc85304df454b65d378b299c7"
+
+DEPENDS = " \
+ intltool-native \
+ babl \
+ glib-2.0 \
+ cairo \
+ expat \
+ zlib \
+ \
+ json-glib \
+"
+
+DEPENDS:append:toolchain-clang = " openmp"
+DEPENDS:remove:toolchain-clang:riscv32 = "openmp"
+DEPENDS:remove:toolchain-clang:powerpc = "openmp"
+
+VALA_MESON_OPTION = ""
+
+inherit features_check gnomebase gobject-introspection vala
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+
+SHPV = "${@gnome_verdir("${PV}")}"
+
+SRC_URI = "https://download.gimp.org/pub/${BPN}/${SHPV}/${BP}.tar.xz"
+SRC_URI[sha256sum] = "418c26d94be8805d7d98f6de0c6825ca26bd74fcacb6c188da47533d9ee28247"
+
+PACKAGECONFIG ??= "gexiv2 jpeg libpng libraw librsvg pango poppler sdl2"
+PACKAGECONFIG:class-native = "libpng librsvg"
+
+PACKAGECONFIG[jasper] = "-Djasper=enabled,-Djasper=disabled,jasper"
+PACKAGECONFIG[gexiv2] = "-Dgexiv2=enabled,-Dgexiv2=disabled,gexiv2"
+PACKAGECONFIG[graphviz] = "-Dgraphviz=enabled,-Dgraphviz=disabled,graphviz"
+PACKAGECONFIG[jpeg] = "-Dlibjpeg=enabled,-Dlibjpeg=disabled,jpeg"
+PACKAGECONFIG[lcms] = "-Dlcms=enabled,-Dlcms=disabled,lcms"
+PACKAGECONFIG[libav] = "-Dlibav=enabled,-Dlibav=disabled,libav"
+PACKAGECONFIG[libpng] = "-Dlibpng=enabled,-Dlibpng=disabled,libpng"
+PACKAGECONFIG[libraw] = "-Dlibraw=enabled,-Dlibraw=disabled,libraw"
+PACKAGECONFIG[librsvg] = "-Dlibrsvg=enabled,-Dlibrsvg=disabled,librsvg"
+PACKAGECONFIG[pango] = "-Dpango=enabled -Dpangocairo=enabled,-Dpango=disabled -Dpangocairo=disabled,pango"
+PACKAGECONFIG[poppler] = "-Dpoppler=enabled,-Dpoppler=disabled,poppler"
+PACKAGECONFIG[sdl] = "-Dsdl1=enabled,-Dsdl1=disabled,libsdl"
+PACKAGECONFIG[sdl2] = "-Dsdl2=enabled,-Dsdl2=disabled,libsdl2"
+PACKAGECONFIG[tiff] = "-Dlibtiff=enabled,-Dlibtiff=disabled,tiff"
+PACKAGECONFIG[webp] = "-Dwebp=enabled,-Dwebp=disabled,webp"
+
+# There are a couple of non-symlink .so files installed into libdir, which need to go into main package
+FILES:${PN} += " \
+ ${libdir}/*.so \
+ ${libdir}/gegl-${SHPV}/*.json \
+ ${libdir}/gegl-${SHPV}/*.so \
+"
+FILES_SOLIBSDEV = "${libdir}/libgegl-${SHPV}${SOLIBSDEV}"
+
+# Fails to build with thumb-1 (qemuarm)
+# gegl-0.2.0/operations/common/matting-global.c: In function 'matting_process':
+# gegl-0.2.0/operations/common/matting-global.c:463:1: internal compiler error: in patch_jump_insn, at cfgrtl.c:1275
+ARM_INSTRUCTION_SET = "arm"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-configure-Keep-first-line-of-compiler-version-string.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-configure-Keep-first-line-of-compiler-version-string.patch
new file mode 100644
index 0000000000..618b4cc7a7
--- /dev/null
+++ b/meta-gnome/recipes-gimp/gimp/gimp/0001-configure-Keep-first-line-of-compiler-version-string.patch
@@ -0,0 +1,30 @@
+From 5711ccfab40e304ced7f5be39a4083e3fcecff91 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 24 May 2023 22:22:41 -0700
+Subject: [PATCH] configure: Keep first line of compiler version string
+
+Full output of cc -v may contain additional information which could
+contain build path information, which is unnessasary
+
+Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gimp/-/merge_requests/926]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index c25415d..68707a0 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -599,7 +599,7 @@ fi
+ for CC_VERSION_OPT in $CC_VERSION_OPTS; do
+ # We run $CC, and escape and format its output, in a single step,
+ # since some shells expand escape sequences in "echo" arguments.
+- CC_VERSION="`$CC $CC_VERSION_OPT 2>&1 | sed -e 's/\\\\/\\\\\\\\\\\\\\\\/g;s/^/\\\\t/;s/$/\\\\n/' | tr -d '\n'`"
++ CC_VERSION="`$CC $CC_VERSION_OPT 2>&1 | head -1 | sed -e 's/\\\\/\\\\\\\\\\\\\\\\/g;s/^/\\\\t/;s/$/\\\\n/' | tr -d '\n'`"
+ if test $? -eq 0; then
+ break
+ fi
+--
+2.40.1
+
diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-file-tiff-load-fix-mismatching-variable-type.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-file-tiff-load-fix-mismatching-variable-type.patch
new file mode 100644
index 0000000000..13b3dda144
--- /dev/null
+++ b/meta-gnome/recipes-gimp/gimp/gimp/0001-file-tiff-load-fix-mismatching-variable-type.patch
@@ -0,0 +1,24 @@
+From a2458f1528e5733574bb26ff5452b1329116e6db Mon Sep 17 00:00:00 2001
+From: Simon Budig <simon@budig.de>
+Date: Sat, 20 May 2023 18:40:41 +0200
+Subject: [PATCH] file-tiff-load: fix mismatching variable type
+
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gimp/-/commit/a2458f1528e5733574bb26ff5452b1329116e6db]
+Signed-off-by: Khem Raj <raj.khem@gmai.com>
+---
+ plug-ins/file-tiff/file-tiff-load.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+--- a/plug-ins/file-tiff/file-tiff-load.c
++++ b/plug-ins/file-tiff/file-tiff-load.c
+@@ -1301,8 +1301,8 @@ load_image (GFile *file,
+
+ /* any resolution info in the file? */
+ {
+- gfloat xres = 72.0;
+- gfloat yres = 72.0;
++ gdouble xres = 72.0;
++ gdouble yres = 72.0;
+ gushort read_unit;
+ GimpUnit unit = GIMP_UNIT_PIXEL; /* invalid unit */
+
diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch
new file mode 100644
index 0000000000..cec0055284
--- /dev/null
+++ b/meta-gnome/recipes-gimp/gimp/gimp/0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch
@@ -0,0 +1,34 @@
+From c720df90dfe3a3e92e34bfb36a04cc792064a501 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 24 May 2023 22:39:02 -0700
+Subject: [PATCH] libtool: Do not add build time library paths to
+ LD_LIBRARY_PATH
+
+This does not serve much purpose on cross builds as it will add build
+time paths which are only useful when trying to run these tools from
+build area but when they are cross built this is not possible to run
+them like this.
+
+Upstream-Status: Inappropriate [Cross-compile specific]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ ltmain.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ltmain.sh b/ltmain.sh
+index 134902c..068d74a 100644
+--- a/ltmain.sh
++++ b/ltmain.sh
+@@ -5748,7 +5748,7 @@ func_exec_program ()
+ if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
+ $ECHO "\
+ # Add our own library path to $shlibpath_var
+- $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
++ $shlibpath_var=\"$shlibpath_var\"
+
+ # Some systems cannot cope with colon-terminated $shlibpath_var
+ # The second colon is a workaround for a bug in BeOS R4 sed
+--
+2.40.1
+
diff --git a/meta-gnome/recipes-gimp/gimp/gimp/0001-metadata-shut-up-a-weird-warning.patch b/meta-gnome/recipes-gimp/gimp/gimp/0001-metadata-shut-up-a-weird-warning.patch
new file mode 100644
index 0000000000..4f04ac8250
--- /dev/null
+++ b/meta-gnome/recipes-gimp/gimp/gimp/0001-metadata-shut-up-a-weird-warning.patch
@@ -0,0 +1,22 @@
+From 51311f913d9f417d121f59b83d560c7b4b853d1c Mon Sep 17 00:00:00 2001
+From: Simon Budig <simon@budig.de>
+Date: Sat, 20 May 2023 22:25:40 +0200
+Subject: [PATCH] metadata: shut up a weird warning
+
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gimp/-/commit/51311f913d9f417d121f59b83d560c7b4b853d1c]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ plug-ins/metadata/metadata-editor.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/plug-ins/metadata/metadata-editor.c
++++ b/plug-ins/metadata/metadata-editor.c
+@@ -2140,7 +2140,7 @@ metadata_dialog_editor_set_metadata (GEx
+ }
+ else
+ {
+- if (! g_strv_contains (values, equiv_values[evi]))
++ if (! g_strv_contains ((const gchar * const *) values, equiv_values[evi]))
+ {
+ gchar *tmpvalue;
+
diff --git a/meta-gnome/recipes-gimp/gimp/gimp_2.10.38.bb b/meta-gnome/recipes-gimp/gimp/gimp_2.10.38.bb
new file mode 100644
index 0000000000..a17e03b103
--- /dev/null
+++ b/meta-gnome/recipes-gimp/gimp/gimp_2.10.38.bb
@@ -0,0 +1,80 @@
+SUMMARY = "The GIMP is the GNU Image Manipulation Program"
+HOMEPAGE = "http://www.gimp.org"
+SECTION = "x11/graphics"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=c678957b0c8e964aa6c70fd77641a71e"
+
+DEPENDS = " \
+ alsa-lib \
+ atk \
+ cairo \
+ fontconfig \
+ freetype \
+ gdk-pixbuf-native \
+ intltool-native \
+ libxslt-native \
+ gegl-native \
+ dbus-glib \
+ gtk+ \
+ babl \
+ gegl \
+ libmypaint \
+ mypaint-brushes-1.0 \
+ gexiv2 \
+ jpeg \
+ libmng \
+ libpng \
+ libexif \
+ tiff \
+ lcms \
+ poppler \
+ poppler-data \
+ jasper \
+ bzip2 \
+ libgudev \
+ libmng \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxmu libxpm', '', d)} \
+"
+DEPENDS:append:libc-musl = " libexecinfo"
+
+GNOMEBASEBUILDCLASS = "autotools"
+inherit features_check gnomebase gtk-icon-cache gtk-doc mime-xdg
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SHPV = "${@gnome_verdir("${PV}")}"
+
+SRC_URI = "https://download.gimp.org/pub/${BPN}/v${SHPV}/${BP}.tar.bz2 \
+ file://0001-configure-Keep-first-line-of-compiler-version-string.patch \
+ file://0001-libtool-Do-not-add-build-time-library-paths-to-LD_LI.patch \
+ file://0001-file-tiff-load-fix-mismatching-variable-type.patch \
+ file://0001-metadata-shut-up-a-weird-warning.patch \
+ "
+SRC_URI[sha256sum] = "50a845eec11c8831fe8661707950f5b8446e35f30edfb9acf98f85c1133f856e"
+
+EXTRA_OECONF = "--disable-python \
+ --without-webkit \
+ --disable-check-update \
+ --without-wmf"
+
+EXTRA_OECONF += "${@oe.utils.conditional('SITEINFO_BITS', '32', ' --disable-vector-icons', '', d)}"
+
+do_configure:append() {
+ find ${B} -name Makefile | xargs sed -i s:'-I$(includedir)':'-I.':g
+ find ${B} -name Makefile | xargs sed -i s:'-I/usr/include':'-I${STAGING_INCDIR}':g
+}
+
+do_compile:prepend() {
+ # Let native babl/gegl find their plugins
+ export BABL_PATH=`find ${STAGING_LIBDIR_NATIVE} -maxdepth 1 -name 'babl-*'`
+ export GEGL_PATH=`find ${STAGING_LIBDIR_NATIVE} -maxdepth 1 -name 'gegl-*'`
+}
+
+FILES:${PN} += "${datadir}/metainfo"
+
+RDEPENDS:${PN} += "mypaint-brushes-1.0"
+
+CVE_STATUS[CVE-2007-3741] = "not-applicable-platform: This only applies for Mandriva Linux"
+CVE_STATUS[CVE-2009-0581] = "cpe-incorrect: The current version (2.10.38) is not affected."
+CVE_STATUS[CVE-2009-0723] = "cpe-incorrect: The current version (2.10.38) is not affected."
+CVE_STATUS[CVE-2009-0733] = "cpe-incorrect: The current version (2.10.38) is not affected."
diff --git a/meta-gnome/recipes-gimp/mypaint/libmypaint/0001-make-build-compatible-w.-autoconf-2.7.patch b/meta-gnome/recipes-gimp/mypaint/libmypaint/0001-make-build-compatible-w.-autoconf-2.7.patch
new file mode 100644
index 0000000000..28e279438a
--- /dev/null
+++ b/meta-gnome/recipes-gimp/mypaint/libmypaint/0001-make-build-compatible-w.-autoconf-2.7.patch
@@ -0,0 +1,32 @@
+From 712a101c9aa2eb8548e4d0100a4a2eaf76fad164 Mon Sep 17 00:00:00 2001
+From: Jesper Lloyd <jpl.lloyd@gmail.com>
+Date: Wed, 20 Jan 2021 20:21:53 +0100
+Subject: [PATCH] make build compatible w. autoconf 2.7
+
+Workaround for stricter behaviour (due to a bugfix) in 2.7,
+which makes a failing intltoolize macro check fail the build.
+
+Fix provided by hosiet.
+
+Upstream-Status: Backport [https://github.com/mypaint/libmypaint/commit/a6bac154db018e1f1cc4dbddc34f6c8422c891fb]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 416d9fe..48b9d02 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -248,7 +248,7 @@ if test "x$enable_i18n" != "xno"; then
+ AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE",
+ [The prefix for our gettext translation domains.])
+ AC_SUBST(GETTEXT_PACKAGE)
+- IT_PROG_INTLTOOL
++IT_PROG_INTLTOOL
+ AM_GLIB_GNU_GETTEXT
+
+ dnl Debian: stdlib
+--
+2.30.0
+
diff --git a/meta-gnome/recipes-gimp/mypaint/libmypaint_git.bb b/meta-gnome/recipes-gimp/mypaint/libmypaint_git.bb
new file mode 100644
index 0000000000..d509aa3dd0
--- /dev/null
+++ b/meta-gnome/recipes-gimp/mypaint/libmypaint_git.bb
@@ -0,0 +1,26 @@
+SUMMARY = "libmypaint is a library for making brushstrokes"
+LICENSE = "ISC"
+LIC_FILES_CHKSUM = "file://COPYING;md5=9d13203ab4013e5a14dd62105f75d58b"
+
+DEPENDS = " \
+ glib-2.0-native \
+ intltool-native \
+ glib-2.0 \
+ babl \
+ json-c \
+"
+
+inherit autotools gobject-introspection gettext pkgconfig python3native
+
+SRC_URI = "git://github.com/mypaint/libmypaint.git;protocol=https;branch=libmypaint-v1 \
+ file://0001-make-build-compatible-w.-autoconf-2.7.patch \
+ "
+SRCREV = "2768251dacce3939136c839aeca413f4aa4241d0"
+PV = "1.6.1"
+S = "${WORKDIR}/git"
+
+do_configure:append() {
+ # autogen uses python2 so generate headers ourselves
+ cd ${S}
+ python3 generate.py mypaint-brush-settings-gen.h brushsettings-gen.h
+}
diff --git a/meta-gnome/recipes-gimp/mypaint/mypaint-brushes-1.0_git.bb b/meta-gnome/recipes-gimp/mypaint/mypaint-brushes-1.0_git.bb
new file mode 100644
index 0000000000..ca3912da88
--- /dev/null
+++ b/meta-gnome/recipes-gimp/mypaint/mypaint-brushes-1.0_git.bb
@@ -0,0 +1,12 @@
+SUMMARY = "MyPaint brushes"
+LICENSE = "CC0-1.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=65d3616852dbf7b1a6d4b53b00626032"
+
+inherit autotools allarch
+
+SRC_URI = "git://github.com/mypaint/mypaint-brushes.git;protocol=https;branch=v1.3.x"
+SRCREV = "8a0124ac0675103eae8fa41fad533851768ae1ce"
+PV = "1.3.1"
+S = "${WORKDIR}/git"
+
+FILES:${PN} += "${datadir}/mypaint-data"
diff --git a/meta-gnome/recipes-gnome/dconf/dconf-editor_3.32.0.bb b/meta-gnome/recipes-gnome/dconf/dconf-editor_3.32.0.bb
deleted file mode 100644
index 999ed041af..0000000000
--- a/meta-gnome/recipes-gnome/dconf/dconf-editor_3.32.0.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-SUMMARY = "Configuration editor for dconf"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464"
-
-GNOMEBASEBUILDCLASS = "meson"
-
-DEPENDS = "dconf gtk+3"
-
-inherit gnomebase vala gettext gsettings bash-completion
-
-SRC_URI[archive.md5sum] = "331a3603c0f8a9913e3a3c0f178b5310"
-SRC_URI[archive.sha256sum] = "f19d1332ac27e23ef3dc2ed07ba4e4646d9d7f05e2e78748aa525a1320adbaba"
-
-FILES_${PN} += " \
- ${datadir}/dbus-1 \
- ${datadir}/metainfo \
-"
diff --git a/meta-gnome/recipes-gnome/dconf/dconf-editor_45.0.1.bb b/meta-gnome/recipes-gnome/dconf/dconf-editor_45.0.1.bb
new file mode 100644
index 0000000000..32a69a0707
--- /dev/null
+++ b/meta-gnome/recipes-gnome/dconf/dconf-editor_45.0.1.bb
@@ -0,0 +1,22 @@
+SUMMARY = "Configuration editor for dconf"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464"
+
+
+DEPENDS = " \
+ dconf \
+ desktop-file-utils-native \
+ gtk+3 \
+ glib-2.0 \
+ libhandy\
+"
+
+inherit gnomebase vala gsettings bash-completion pkgconfig gtk-icon-cache
+
+SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/45/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive"
+SRC_URI[archive.sha256sum] = "1180297678eedae6217cc514a2638c187d2f1d1ef2720cb9079b740c429941dd"
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/metainfo \
+"
diff --git a/meta-gnome/recipes-gnome/dconf/dconf_0.32.0.bb b/meta-gnome/recipes-gnome/dconf/dconf_0.40.0.bb
index 8d1bbdfd1a..c5c45a0264 100644
--- a/meta-gnome/recipes-gnome/dconf/dconf_0.32.0.bb
+++ b/meta-gnome/recipes-gnome/dconf/dconf_0.40.0.bb
@@ -1,21 +1,24 @@
SUMMARY = "configuation database system"
-LICENSE = "LGPLv2.1"
+LICENSE = "LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
SECTION = "x11/gnome"
-SRC_URI[archive.md5sum] = "e1ac0b6285abefeed69ca9e380e44f5a"
-SRC_URI[archive.sha256sum] = "68bce78b19bc94cb2c3bb8587e37f9e5e338568c3a674f86edde9c9f1624ffab"
+SRC_URI[archive.sha256sum] = "cf7f22a4c9200421d8d3325c5c1b8b93a36843650c9f95d6451e20f0bcb24533"
DEPENDS = "dbus glib-2.0 intltool-native"
-GNOMEBASEBUILDCLASS = "meson"
inherit gnomebase bash-completion vala
# I/O error : Attempt to load network entity http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
EXTRA_OEMESON = "-Dman=false"
+# no bash-completion for native
+EXTRA_OEMESON:append:class-native = " -Dbash_completion=false"
-FILES_${PN} += " \
+FILES:${PN} += " \
${datadir}/dbus-1 \
+ ${systemd_user_unitdir} \
${libdir}/gio/modules/*.so \
"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-gnome/recipes-gnome/devilspie/devilspie2_0.43.bb b/meta-gnome/recipes-gnome/devilspie/devilspie2_0.44.bb
index 6ef8e8a62e..9e641daa5a 100644
--- a/meta-gnome/recipes-gnome/devilspie/devilspie2_0.43.bb
+++ b/meta-gnome/recipes-gnome/devilspie/devilspie2_0.44.bb
@@ -1,20 +1,23 @@
DESCRIPTION = "Devilspie2 is a window matching utility, allowing the user to perform scripted actions on windows as they are created"
HOMEPAGE = "http://www.gusnan.se/devilspie2"
-LICENSE = "GPLv3"
+LICENSE = "GPL-3.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=00aefaa50aad75c21367df66102d542c \
file://GPL3.txt;md5=d32239bcb673463ab874e80d47fae504"
-DEPENDS = "gtk+ glib-2.0 libwnck lua virtual/libx11"
+DEPENDS = "gtk+ glib-2.0 libwnck libxinerama lua virtual/libx11"
-SRC_URI = " \
- http://download.savannah.gnu.org/releases/${BPN}/${BPN}_${PV}-src.tar.gz \
+PV .= "+git"
+
+SRCREV = "b9d7ad9c09a5fb17a1562ee1d892798c646e9ec9"
+
+SRC_URI = "git://github.com/dsalt/devilspie2;branch=master;protocol=https \
file://default.lua \
file://devilspie2.desktop \
"
-SRC_URI[md5sum] = "26eed0b5b4af5c7e13c551eceaeab832"
-SRC_URI[sha256sum] = "ecffc17c62b41e196b72340192a90c4223329df041f135e74c0990860595f828"
-inherit distro_features_check pkgconfig gettext
+S = "${WORKDIR}/git"
+
+inherit features_check pkgconfig gettext
REQUIRED_DISTRO_FEATURES = "x11"
@@ -26,7 +29,7 @@ do_compile() {
do_install() {
oe_runmake DESTDIR="${D}" PREFIX="${prefix}" install
install -d ${D}/${sysconfdir}/devilspie2
- install -m 644 ${WORKDIR}/default.lua ${D}/${sysconfdir}/devilspie2
+ install -m 644 ${UNPACKDIR}/default.lua ${D}/${sysconfdir}/devilspie2
install -d ${D}/${sysconfdir}/xdg/autostart
- install -m 644 ${WORKDIR}/devilspie2.desktop ${D}/${sysconfdir}/xdg/autostart
+ install -m 644 ${UNPACKDIR}/devilspie2.desktop ${D}/${sysconfdir}/xdg/autostart
}
diff --git a/meta-gnome/recipes-gnome/eds/evolution-data-server/0005-Use-LC_MESSAGES-for-address-localization-when-LC_ADD.patch b/meta-gnome/recipes-gnome/eds/evolution-data-server/0005-Use-LC_MESSAGES-for-address-localization-when-LC_ADD.patch
deleted file mode 100644
index 55ab5a7fca..0000000000
--- a/meta-gnome/recipes-gnome/eds/evolution-data-server/0005-Use-LC_MESSAGES-for-address-localization-when-LC_ADD.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 95425206e7317e59b7ca06d7f838ad357cdd200c Mon Sep 17 00:00:00 2001
-From: Piotr Tworek <tworaz@tworaz.net>
-Date: Wed, 14 Aug 2019 00:31:54 +0200
-Subject: [PATCH 5/7] Use LC_MESSAGES for address localization when LC_ADDRESS
- is not available.
-
-Musl does not define LC_ADDRESS unfortunately.
-
-Upstream-Status: Inappropriate [musl specific]
-
-Signed-off-by: Piotr Tworek <tworaz@tworaz.net>
----
- src/addressbook/libebook-contacts/e-phone-number-private.cpp | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/src/addressbook/libebook-contacts/e-phone-number-private.cpp b/src/addressbook/libebook-contacts/e-phone-number-private.cpp
-index 4c5aebb..9abcebd 100644
---- a/src/addressbook/libebook-contacts/e-phone-number-private.cpp
-+++ b/src/addressbook/libebook-contacts/e-phone-number-private.cpp
-@@ -36,6 +36,10 @@
- #include <phonenumbers/logger.h>
- #include <phonenumbers/phonenumberutil.h>
-
-+#ifndef LC_ADDRESS
-+#define LC_ADDRESS LC_MESSAGES
-+#endif
-+
- using i18n::phonenumbers::PhoneNumber;
- using i18n::phonenumbers::PhoneNumberUtil;
-
---
-2.21.0
-
diff --git a/meta-gnome/recipes-gnome/eds/evolution-data-server/0006-Dont-add-usr-lib-to-LDFLAGS-when-linking-libphonenum.patch b/meta-gnome/recipes-gnome/eds/evolution-data-server/0006-Dont-add-usr-lib-to-LDFLAGS-when-linking-libphonenum.patch
deleted file mode 100644
index c0c1427fd2..0000000000
--- a/meta-gnome/recipes-gnome/eds/evolution-data-server/0006-Dont-add-usr-lib-to-LDFLAGS-when-linking-libphonenum.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From fb9164bbca5b425f1cf1bb3cac51d06afe81938a Mon Sep 17 00:00:00 2001
-From: Piotr Tworek <tworaz@tworaz.net>
-Date: Wed, 14 Aug 2019 00:47:59 +0200
-Subject: [PATCH 6/7] Dont add /usr/lib to LDFLAGS when linking libphonenumber.
-
-This will refer to host lib dir which is not what we want.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Piotr Tworek <tworaz@tworaz.net>
----
- cmake/modules/FindPhonenumber.cmake | 6 ++----
- 1 file changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/cmake/modules/FindPhonenumber.cmake b/cmake/modules/FindPhonenumber.cmake
-index 04d1056..70c0c41 100644
---- a/cmake/modules/FindPhonenumber.cmake
-+++ b/cmake/modules/FindPhonenumber.cmake
-@@ -37,12 +37,10 @@ string(TOUPPER "${WITH_PHONENUMBER}" optupper)
- if(("${optupper}" STREQUAL "ON") OR ("${substr}" STREQUAL "${CMAKE_BINARY_DIR}"))
- set(WITH_PHONENUMBER "ON")
- set(PHONENUMBER_INCLUDE_DIRS "${INCLUDE_INSTALL_DIR}")
-- set(PHONENUMBER_LIB_DIRS ${LIB_INSTALL_DIR})
-- set(PHONENUMBER_LDFLAGS -L${PHONENUMBER_LIB_DIRS} ${PHONENUMBER_LDFLAGS})
-+ set(PHONENUMBER_LDFLAGS ${PHONENUMBER_LDFLAGS})
- else(("${optupper}" STREQUAL "ON") OR ("${substr}" STREQUAL "${CMAKE_BINARY_DIR}"))
- set(PHONENUMBER_INCLUDE_DIRS "${WITH_PHONENUMBER}/include")
-- set(PHONENUMBER_LIB_DIRS ${WITH_PHONENUMBER}/lib${LIB_SUFFIX})
-- set(PHONENUMBER_LDFLAGS -L${PHONENUMBER_LIB_DIRS} ${PHONENUMBER_LDFLAGS})
-+ set(PHONENUMBER_LDFLAGS ${PHONENUMBER_LDFLAGS})
- endif(("${optupper}" STREQUAL "ON") OR ("${substr}" STREQUAL "${CMAKE_BINARY_DIR}"))
-
- unset(bindirlen)
---
-2.21.0
-
diff --git a/meta-gnome/recipes-gnome/eds/evolution-data-server/0007-Modify-gobject-intrispection-support-to-work-with-OE.patch b/meta-gnome/recipes-gnome/eds/evolution-data-server/0007-Modify-gobject-intrispection-support-to-work-with-OE.patch
deleted file mode 100644
index c00082a2ce..0000000000
--- a/meta-gnome/recipes-gnome/eds/evolution-data-server/0007-Modify-gobject-intrispection-support-to-work-with-OE.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From d84f4fd68441e934b37be2a6917abad52c5d1bda Mon Sep 17 00:00:00 2001
-From: Piotr Tworek <tworaz@tworaz.net>
-Date: Fri, 16 Aug 2019 21:22:16 +0200
-Subject: [PATCH 7/7] Modify gobject-intrispection support to work with OE.
-
-1. Use tools provided by the recipe sysroot instread of host ones.
-2. Make sure all the required dirs make it into g-ir-scanner via
- LDFLAGS.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Piotr Tworek <tworaz@tworaz.net>
----
- cmake/modules/GObjectIntrospection.cmake | 12 ++++++++++--
- 1 file changed, 10 insertions(+), 2 deletions(-)
-
-diff --git a/cmake/modules/GObjectIntrospection.cmake b/cmake/modules/GObjectIntrospection.cmake
-index 5be5042..67c035a 100644
---- a/cmake/modules/GObjectIntrospection.cmake
-+++ b/cmake/modules/GObjectIntrospection.cmake
-@@ -20,6 +20,9 @@ if(ENABLE_INTROSPECTION)
- pkg_check_variable(G_IR_SCANNER gobject-introspection-1.0 g_ir_scanner)
- pkg_check_variable(G_IR_COMPILER gobject-introspection-1.0 g_ir_compiler)
-
-+ string(CONCAT G_IR_SCANNER $ENV{PKG_CONFIG_SYSROOT_DIR} "${G_IR_SCANNER}")
-+ string(CONCAT G_IR_COMPILER $ENV{PKG_CONFIG_SYSROOT_DIR} "${G_IR_COMPILER}")
-+
- if(NOT G_IR_SCANNER)
- message(FATAL_ERROR "g-ir-scanner not provided by gobject-introspection-1.0, you can disable GObject introspection by -DENABLE_INTROSPECTION=OFF")
- endif(NOT G_IR_SCANNER)
-@@ -116,7 +119,7 @@ macro(gir_add_introspection gir)
- file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/${_gir_name}_files "${_gir_files}")
-
- add_custom_command(
-- COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'" LDFLAGS=
-+ COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'" LDFLAGS=${INTROSPECTION_SCANNER_LDFLAGS}
- ${INTROSPECTION_SCANNER_ENV}
- ${G_IR_SCANNER}
- ${INTROSPECTION_SCANNER_ARGS}
-@@ -186,6 +189,7 @@ macro(gir_add_introspection_simple gir_library pkg_export_prefix gir_library_ver
- unset(INTROSPECTION_SCANNER_ARGS)
- unset(INTROSPECTION_SCANNER_ENV)
- unset(INTROSPECTION_COMPILER_ARGS)
-+ unset(INTROSPECTION_SCANNER_LDFLAGS)
-
- set(${gir_vars_prefix} ${gir_library})
- set(${gir_vars_prefix}_SCANNERFLAGS "--warn-all")
-@@ -223,12 +227,12 @@ macro(gir_add_introspection_simple gir_library pkg_export_prefix gir_library_ver
- --add-include-path=${CMAKE_CURRENT_SOURCE_DIR}
- --library-path=${CMAKE_BINARY_DIR}
- --library-path=${CMAKE_BINARY_DIR}/src
-+ --library-path=${CMAKE_BINARY_DIR}/src/private
- --library-path=${CMAKE_CURRENT_BINARY_DIR}
- ${_gir_extra_libdirs}
- ${_gir_identifies_prefixes}
- ${_gir_deps}
- --add-include-path=${SHARE_INSTALL_PREFIX}/gir-1.0
-- --library-path=${LIB_INSTALL_DIR}
- ${_extra_library_path}
- --pkg-export ${pkg_export_prefix}-${gir_library_version}
- --c-include=${c_include}
-@@ -279,6 +283,10 @@ macro(gir_add_introspection_simple gir_library pkg_export_prefix gir_library_ver
- )
- endif(UNIX)
-
-+ _gir_list_prefix(_gir_scanner_ldflags ${gir_extra_libdirs_var} "-Wl,-rpath-link=")
-+ string(REPLACE ";" " " _gir_scanner_ldflags "${_gir_scanner_ldflags}")
-+ set(INTROSPECTION_SCANNER_LDFLAGS "${_gir_scanner_ldflags}")
-+
- set(INTROSPECTION_SCANNER_ENV
- ${_loader_library_path_var}="${_extra_loader_library_path_native}"
- )
---
-2.21.0
-
diff --git a/meta-gnome/recipes-gnome/eds/evolution-data-server_3.32.4.bb b/meta-gnome/recipes-gnome/eds/evolution-data-server_3.32.4.bb
deleted file mode 100644
index 429dd53d80..0000000000
--- a/meta-gnome/recipes-gnome/eds/evolution-data-server_3.32.4.bb
+++ /dev/null
@@ -1,155 +0,0 @@
-SUMMARY = "Evolution database backend server"
-HOMEPAGE = "http://www.gnome.org/projects/evolution/"
-BUGTRACKER = "https://bugzilla.gnome.org/"
-
-LICENSE = "LGPLv2 & LGPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6a6e689d19255cf0557f3fe7d7068212 \
- file://src/camel/camel.h;endline=24;md5=342fc5e9357254bc30c24e43ae47d9a1 \
- file://src/libedataserver/e-data-server-util.h;endline=20;md5=8f21a9c80ea82a4fb80b5f959f672543 \
- file://src/calendar/libecal/e-cal.h;endline=24;md5=e699ec3866f73f129f7a4ffffdcfc196"
-
-DEPENDS = " \
- intltool-native gperf-native glib-2.0-native \
- glib-2.0 gtk+3 libgnome-keyring libgdata libcanberra icu \
- dbus db virtual/libiconv zlib libsoup-2.4 libical nss libsecret \
-"
-
-inherit gnomebase cmake gtk-doc gettext gobject-introspection perlnative upstream-version-is-even vala
-
-SRC_URI += "file://0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch \
- file://0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch \
- file://0003-contact-Replace-the-Novell-sample-contact-with-somet.patch \
- file://0004-Add-native-suffix-to-exacutables-produced-and-run-du.patch \
- file://0005-Use-LC_MESSAGES-for-address-localization-when-LC_ADD.patch \
- file://0006-Dont-add-usr-lib-to-LDFLAGS-when-linking-libphonenum.patch \
- file://0007-Modify-gobject-intrispection-support-to-work-with-OE.patch \
- file://iconv-detect.h \
- "
-SRC_URI[archive.md5sum] = "57820f3f88fc554e1a58665a52e12c05"
-SRC_URI[archive.sha256sum] = "83f67cb4b680e892b22b51bcde64c788b7ac63e92a99de401fb347e3794f4c7f"
-
-LKSTRFTIME = "HAVE_LKSTRFTIME=ON"
-LKSTRFTIME_libc-musl = "HAVE_LKSTRFTIME=OFF"
-
-EXTRA_OECMAKE = " \
- -D${LKSTRFTIME} \
- -DSYSCONF_INSTALL_DIR=${sysconfdir} \
- -DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')} \
-"
-
-PACKAGECONFIG ??= "${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'introspection', '', d)}"
-PACKAGECONFIG[openldap] = "-DWITH_OPENLDAP=ON,-DWITH_OPENLDAP=OFF,openldap"
-PACKAGECONFIG[oauth2] = "-DENABLE_OAUTH2=ON,-DENABLE_OAUTH2=OFF,json-glib webkitgtk"
-PACKAGECONFIG[mitkrb5] = "-DWITH_KRB5=ON,-DWITH_KRB5=OFF,krb5"
-PACKAGECONFIG[goa] = "-DENABLE_GOA=ON,-DENABLE_GOA=OFF,gnome-online-accounts"
-PACKAGECONFIG[weather] = "-DENABLE_WEATHER=ON,-DENABLE_WEATHER=OFF,libgweather"
-PACKAGECONFIG[phonenumber] = "-DWITH_PHONENUMBER=ON,-DWITH_PHONENUMBER=OFF,libphonenumber"
-PACKAGECONFIG[introspection] = "-DENABLE_INTROSPECTION=ON,-DENABLE_INTROSPECTION=OFF"
-PACKAGECONFIG[vala] = "-DENABLE_VALA_BINDINGS=ON -DVAPIGEN=${STAGING_BINDIR_NATIVE}/vapigen,-DENABLE_VALA_BINDINGS=OFF"
-
-# -ldb needs this on some platforms
-LDFLAGS += "-lpthread -lgmodule-2.0 -lgthread-2.0"
-
-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
-}
-
-do_compile_prepend() {
- # CMake does not support building native binaries when cross compiling. As result
- # it always cross compiles them for the target and then aborts when they fail to run.
- # To work around this manually build required tools and patch cmake targets to use
- # those native binaries we built here.
- ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} -I${B} ${S}/src/camel/camel-gen-tables.c \
- -o ${B}/src/camel/camel-gen-tables-native
- ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} -I${B} $(pkg-config-native --cflags glib-2.0) \
- ${S}/src/addressbook/libebook-contacts/gen-western-table.c \
- -o ${B}/src/addressbook/libebook-contacts/gen-western-table-native \
- $(pkg-config-native --libs glib-2.0)
-}
-
-
-PACKAGES =+ "libebook-contacts libebook-contacts-dev \
- libcamel libcamel-dev libebook libebook-dev libecal libecal-dev \
- libedata-book libedata-book-dev libedata-cal libedata-cal-dev \
- libedataserver libedataserver-dev \
- libedataserverui libedataserverui-dev"
-
-FILES_${PN} =+ "${systemd_user_unitdir} \
- ${datadir}/dbus-1 \
- ${datadir}/evolution-data-server-*/ui/"
-RDEPENDS_${PN} += "perl"
-
-FILES_${PN}-dev =+ "${libdir}/pkgconfig/evolution-data-server-*.pc"
-FILES_${PN}-dbg =+ "${libdir}/evolution-data-server*/camel-providers/.debug \
- ${libdir}/evolution-data-server*/calendar-backends/.debug \
- ${libdir}/evolution-data-server*/addressbook-backends/.debug \
- ${libdir}/evolution-data-server*/extensions/.debug/"
-
-RRECOMMENDS_${PN}-dev += "libecal-dev libebook-dev"
-
-FILES_libcamel = "${libdir}/libcamel-*.so.* \
- ${libdir}/libcamel-provider-*.so.* \
- ${libdir}/girepository-*/Camel-*.typelib \
- ${libdir}/evolution-data-server*/camel-providers/*.so \
- ${libdir}/evolution-data-server*/camel-providers/*.urls"
-FILES_libcamel-dev = "${libdir}/libcamel-*.so ${libdir}/libcamel-provider-*.so \
- ${libdir}/pkgconfig/camel*pc \
- ${includedir}/evolution-data-server*/camel \
- ${datadir}/vala/vapi/camel-* \
- ${datadir}/gir-*/Camel-*.gir"
-
-FILES_libebook = "${libdir}/libebook-*.so.* \
- ${libdir}/girepository-*/EBook-*.typelib"
-FILES_libebook-dev = "${libdir}/libebook-*.so \
- ${libdir}/pkgconfig/libebook-*.pc \
- ${datadir}/gir-*/EBook-*.gir \
- ${datadir}/vala/vapi/libebook-*.* \
- ${includedir}/evolution-data-server*/libebook/*.h"
-RRECOMMENDS_libebook = "libedata-book"
-
-FILES_libebook-contacts = "${libdir}/libebook-contacts-*.so.* \
- ${libdir}/girepository-*/EBookContacts-*.typelib"
-FILES_libebook-contacts-dev = "${libdir}/libebook-contacts-*.so \
- ${libdir}/pkgconfig/libebook-contacts-*.pc \
- ${datadir}/gir-*/EBookContacts-*.gir \
- ${datadir}/vala/vapi/libebook-contacts-* \
- ${includedir}/evolution-data-server*/libebook-contacts/*.h"
-
-FILES_libecal = "${libdir}/libecal-*.so.*"
-FILES_libecal-dev = "${libdir}/libecal-*.so ${libdir}/pkgconfig/libecal-*.pc \
- ${includedir}/evolution-data-server*/libecal/*.h \
- ${includedir}/evolution-data-server*/libical/*.h"
-RRECOMMENDS_libecal = "libedata-cal tzdata"
-
-FILES_libedata-book = "${libexecdir}/e-addressbook-factory \
- ${datadir}/dbus-1/services/*.AddressBook.service \
- ${libdir}/libedata-book-*.so.* \
- ${libdir}/evolution-data-server-*/extensions/libebook*.so"
-FILES_libedata-book-dev = "${libdir}/libedata-book-*.so \
- ${libdir}/pkgconfig/libedata-book-*.pc \
- ${includedir}/evolution-data-server-*/libedata-book"
-
-FILES_libedata-cal = "${libexecdir}/e-calendar-factory \
- ${datadir}/dbus-1/services/*.Calendar.service \
- ${libdir}/libedata-cal-*.so.* \
- ${libdir}/evolution-data-server-*/extensions/libecal*.so"
-FILES_libedata-cal-dev = "${libdir}/libedata-cal-*.so \
- ${libdir}/pkgconfig/libedata-cal-*.pc \
- ${includedir}/evolution-data-server-*/libedata-cal"
-
-FILES_libedataserver = "${libdir}/libedataserver-*.so.* \
- ${libdir}/girepository-*/EDataServer-*.typelib"
-FILES_libedataserver-dev = "${libdir}/libedataserver-*.so \
- ${libdir}/pkgconfig/libedataserver-*.pc \
- ${datadir}/vala/vapi/libedataserver-* \
- ${includedir}/evolution-data-server-*/libedataserver/*.h"
-
-FILES_libedataserverui = "${libdir}/libedataserverui-*.so.*"
-FILES_libedataserverui-dev = "${libdir}/libedataserverui-*.so \
- ${libdir}/pkgconfig/libedataserverui-*.pc \
- ${datadir}/gir-*/EDataServerUI-*.gir \
- ${datadir}/vala/vapi/libedataserverui-* \
- ${includedir}/evolution-data-server-*/libedataserverui/*.h"
diff --git a/meta-gnome/recipes-gnome/eog/eog_47.0.bb b/meta-gnome/recipes-gnome/eog/eog_47.0.bb
new file mode 100644
index 0000000000..8e0583cf91
--- /dev/null
+++ b/meta-gnome/recipes-gnome/eog/eog_47.0.bb
@@ -0,0 +1,30 @@
+SUMMARY = "This is the Eye of GNOME, an image viewer program."
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+DEPENDS = " \
+ librsvg \
+ gnome-desktop \
+ gsettings-desktop-schemas \
+ gdk-pixbuf \
+ gtk+3 \
+ libhandy \
+ libpeas \
+ libportal \
+ libexif \
+ lcms \
+"
+
+
+inherit gnomebase pkgconfig gsettings gobject-introspection gettext mime-xdg features_check gtk-icon-cache
+
+# FIXME: whilst eog uses libpeas <2, g-i is needed. This can be removed when libpeas2 is used.
+REQUIRED_DISTRO_FEATURES = "opengl gobject-introspection-data"
+
+SRC_URI[archive.sha256sum] = "db5edbf5224d75126a7b7d8ee4e9272a2f30a953331d5baf6d3f3c0ce0cbde66"
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+EXTRA_OEMESON = "-Dxmp=false"
+
+FILES:${PN} += "${datadir}"
diff --git a/meta-gnome/recipes-gnome/evince/evince/0001-Add-format-attribute-to-_synctex_malloc.patch b/meta-gnome/recipes-gnome/evince/evince/0001-Add-format-attribute-to-_synctex_malloc.patch
deleted file mode 100644
index de739c5b39..0000000000
--- a/meta-gnome/recipes-gnome/evince/evince/0001-Add-format-attribute-to-_synctex_malloc.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 3776fd0b42e473fe51d3678bf26cdaa37e1d8e0d Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 8 Apr 2017 13:36:12 -0700
-Subject: [PATCH] Add format attribute to _synctex_malloc
-
-Helps in avoiding compile errors about formating with clang
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- cut-n-paste/synctex/synctex_parser_utils.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/cut-n-paste/synctex/synctex_parser_utils.c b/cut-n-paste/synctex/synctex_parser_utils.c
-index f8a9f6f..9459b2d 100644
---- a/cut-n-paste/synctex/synctex_parser_utils.c
-+++ b/cut-n-paste/synctex/synctex_parser_utils.c
-@@ -78,6 +78,7 @@ void *_synctex_malloc(size_t size) {
- return (void *)ptr;
- }
-
-+__attribute__((__format__ (__printf__, 1, 0)))
- int _synctex_error(const char * reason,...) {
- va_list arg;
- int result;
---
-2.12.2
-
diff --git a/meta-gnome/recipes-gnome/evince/evince/0001-add-a-formatting-attribute-check.patch b/meta-gnome/recipes-gnome/evince/evince/0001-add-a-formatting-attribute-check.patch
deleted file mode 100644
index e87da90bce..0000000000
--- a/meta-gnome/recipes-gnome/evince/evince/0001-add-a-formatting-attribute-check.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From ef170dda7fbab53682c9bc287dec93fa86130bc9 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 9 Sep 2018 21:49:59 -0700
-Subject: [PATCH] add a formatting attribute check
-
-Tell Clang that parameter is a printf style format using the
-attribute flag
-
-This helps in avoiding below warnings seen with clang
-
-unarr.c:106:22: error: format string is not a string literal
-[-Werror,-Wformat-nonliteral]
-| vfprintf(stderr, msg, args);
-| ^~~
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- cut-n-paste/unarr/common/unarr.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/cut-n-paste/unarr/common/unarr.c b/cut-n-paste/unarr/common/unarr.c
-index 97ec92a..9e6e3ad 100644
---- a/cut-n-paste/unarr/common/unarr.c
-+++ b/cut-n-paste/unarr/common/unarr.c
-@@ -92,7 +92,7 @@ size_t ar_get_global_comment(ar_archive *ar, void *buffer, size_t count)
- return ar->get_comment(ar, buffer, count);
- }
-
--void ar_log(const char *prefix, const char *file, int line, const char *msg, ...)
-+void __attribute__((__format__ (__printf__, 4, 0))) ar_log(const char *prefix, const char *file, int line, const char *msg, ...)
- {
- va_list args;
- va_start(args, msg);
diff --git a/meta-gnome/recipes-gnome/evince/evince/0001-help-remove-YELP-macro.patch b/meta-gnome/recipes-gnome/evince/evince/0001-help-remove-YELP-macro.patch
deleted file mode 100644
index 592f466066..0000000000
--- a/meta-gnome/recipes-gnome/evince/evince/0001-help-remove-YELP-macro.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 40921037d8e7205a3889d529fb4e06f79e1e88b0 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Fri, 19 Feb 2016 16:52:18 +0200
-Subject: [PATCH] help: remove YELP macro
-
-Upstream-Status: Inappropriate [embedded-specific]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- help/Makefile.am | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/help/Makefile.am b/help/Makefile.am
-index 7835810..37c88ce 100644
---- a/help/Makefile.am
-+++ b/help/Makefile.am
-@@ -1,5 +1,3 @@
--@YELP_HELP_RULES@
--
- SUBDIRS = reference
-
- HELP_ID = evince
---
-2.7.0
-
diff --git a/meta-gnome/recipes-gnome/evince/evince/0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch b/meta-gnome/recipes-gnome/evince/evince/0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch
deleted file mode 100644
index dcc4a4e9ca..0000000000
--- a/meta-gnome/recipes-gnome/evince/evince/0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 0cdce687d3edfa5ac0fd19539ba1815d039026d5 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?I=C3=B1igo=20Mart=C3=ADnez?= <inigomartinez@gmail.com>
-Date: Fri, 7 Sep 2018 22:34:29 +0200
-Subject: [PATCH] libview: Remove EvDocumentModel get type function declaration
-
-The EvDocumentModel class declares the `ev_document_model_get_type`
-function as part of the `GObject` boilerplate code.
-
-However, this declaration is not necessary and also causes a warning
-when introspection data file, `EvinceView-3.0.gir`, is generated.
-
-Upstream-Status: Applied [1]
-
-
----
- libview/ev-document-model.h | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/libview/ev-document-model.h b/libview/ev-document-model.h
-index 784e27d6..6a99e43a 100644
---- a/libview/ev-document-model.h
-+++ b/libview/ev-document-model.h
-@@ -54,7 +54,6 @@ typedef enum {
- EV_PAGE_LAYOUT_AUTOMATIC
- } EvPageLayout;
-
--GType ev_document_model_get_type (void) G_GNUC_CONST;
- EvDocumentModel *ev_document_model_new (void);
- EvDocumentModel *ev_document_model_new_with_document (EvDocument *document);
-
---
-2.20.1
-
diff --git a/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb b/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb
deleted file mode 100644
index f45180e797..0000000000
--- a/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb
+++ /dev/null
@@ -1,65 +0,0 @@
-SUMMARY = "Evince is a document viewer for document formats like pdf, ps, djvu"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=96f2f8d5ee576a2163977938ea36fa7b"
-SECTION = "x11/office"
-DEPENDS = "gtk+3 libsecret ${@bb.utils.contains('DISTRO_FEATURES','x11','gnome-desktop3','',d)} poppler gstreamer1.0-plugins-base orc adwaita-icon-theme intltool-native gnome-common-native"
-
-inherit gnomebase pkgconfig gtk-icon-cache gsettings gobject-introspection distro_features_check systemd
-
-SRC_URI = " \
- ${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \
- file://0001-help-remove-YELP-macro.patch \
- file://0001-Add-format-attribute-to-_synctex_malloc.patch \
- file://0001-add-a-formatting-attribute-check.patch \
- file://0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch \
-"
-SRC_URI[archive.md5sum] = "66aa1766eaaa37536e48def11a0e67a3"
-SRC_URI[archive.sha256sum] = "0955d22d85c9f6d322b6cbb464f1cc4c352db619017ec95dad4cc5c3440f73e1"
-
-EXTRA_OECONF = "--enable-thumbnailer"
-
-do_compile_prepend() {
- export GIR_EXTRA_LIBS_PATH="${B}/libdocument/.libs"
-}
-
-
-do_install_append() {
- install -d ${D}${datadir}/pixmaps
- install -m 0755 ${S}/data/icons/48x48/apps/evince.png ${D}${datadir}/pixmaps/
- if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}
- then
- install -d ${D}${systemd_unitdir}/system
- mv ${D}${systemd_user_unitdir}/evince.service ${D}${systemd_system_unitdir}/evince.service
- else
- rm -rf ${D}${libdir}/systemd/user/evince.service
- fi
- rmdir --ignore-fail-on-non-empty ${D}${systemd_user_unitdir}
- rmdir --ignore-fail-on-non-empty ${D}${nonarch_libdir}/systemd
- rmdir --ignore-fail-on-non-empty ${D}${nonarch_libdir}
-}
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[nautilus] = "--enable-nautilus,--disable-nautilus,nautilus"
-PACKAGECONFIG[browser-plugin] = "--enable-browser-plugin,--disable-browser-plugin,"
-
-SYSTEMD_SERVICE_${PN} = "evince.service"
-
-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 \
- ${systemd_unitdir}/systemd/user/evince.service \
- "
-FILES_${PN}-dbg += "${libdir}/*/*/.debug \
- ${libdir}/*/*/*/.debug"
-FILES_${PN}-dev += "${libdir}/nautilus/extensions-2.0/*.la \
- ${libdir}/evince/*/backends/*.la"
-FILES_${PN}-staticdev += "${libdir}/nautilus/extensions-2.0/*.a \
- ${libdir}/evince/*/backends/*.a"
-FILES_${PN}-nautilus-extension = "${libdir}/nautilus/*/*so"
-FILES_${PN}-browser-plugin = "${libdir}/mozilla/*/*so"
diff --git a/meta-gnome/recipes-gnome/evince/evince_46.3.bb b/meta-gnome/recipes-gnome/evince/evince_46.3.bb
new file mode 100644
index 0000000000..47c0950b61
--- /dev/null
+++ b/meta-gnome/recipes-gnome/evince/evince_46.3.bb
@@ -0,0 +1,62 @@
+SUMMARY = "Evince is a document viewer for document formats like pdf, ps, djvu"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=96f2f8d5ee576a2163977938ea36fa7b"
+SECTION = "x11/office"
+DEPENDS = " \
+ adwaita-icon-theme \
+ appstream-glib \
+ cairo \
+ desktop-file-utils-native \
+ dbus \
+ gdk-pixbuf \
+ glib-2.0 \
+ gnome-common-native \
+ gnome-desktop \
+ gsettings-desktop-schemas \
+ gspell \
+ gstreamer1.0-plugins-base \
+ gtk+3 \
+ libarchive \
+ libhandy \
+ libsecret \
+ libxml2 \
+ poppler \
+ yelp-tools-native \
+ zlib \
+"
+
+
+inherit gnomebase itstool gnome-help pkgconfig gsettings gobject-introspection gettext mime-xdg gi-docgen features_check gtk-icon-cache
+
+REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'opengl', '', d)}"
+
+def gnome_verdir(v):
+ return oe.utils.trim_version(v, 1)
+
+SRC_URI[archive.sha256sum] = "bc0d1d41b9d7ffc762e99d2abfafacbf745182f0b31d86db5eec8c67f5f3006b"
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[nautilus] = "-Dnautilus=true,-Dnautilus=false,nautilus"
+
+RDEPENDS:${PN} += "glib-2.0-utils"
+RRECOMMENDS:${PN} = "adwaita-icon-theme"
+
+PACKAGES =+ "${PN}-nautilus-extension"
+
+do_install:prepend() {
+ sed -i -e 's|${B}/../${PN}-${PV}|${TARGET_DBGSRC_DIR}|g' ${B}/libview/ev-view-type-builtins.c
+ sed -i -e 's|${B}/../${PN}-${PV}|${TARGET_DBGSRC_DIR}|g' ${B}/libdocument/ev-document-type-builtins.c
+}
+
+FILES:${PN} += "${datadir}/dbus-1 \
+ ${datadir}/metainfo \
+ ${datadir}/thumbnailers \
+ ${systemd_user_unitdir} \
+"
+FILES:${PN}-nautilus-extension = "${libdir}/nautilus/*/*so"
+
+CVE_PRODUCT = "evince"
+CVE_STATUS[CVE-2011-0433] = "fixed-version: No action required. The current version (46.0) is not affected by the CVE which has been patched since version 3.1.2"
+CVE_STATUS[CVE-2011-5244] = "fixed-version: No action required. The current version (46.0) is not affected by the CVE which has been patched since version 3.1.2"
diff --git a/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server-native.bb b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server-native.bb
new file mode 100644
index 0000000000..f2f41276a6
--- /dev/null
+++ b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server-native.bb
@@ -0,0 +1,26 @@
+require ${BPN}.inc
+
+inherit_defer native
+
+DEPENDS = "glib-2.0-native"
+
+# build native helpers
+do_configure[noexec] = "1"
+
+do_compile() {
+ cd ${S}/src/camel
+ sed -i 's:#include "evolution-data-server-config.h"::g' camel-gen-tables.c
+ ${CC} -o ${B}/camel-gen-tables camel-gen-tables.c ${CFLAGS} ${LDFLAGS}
+
+ LDFLAGS_glib=`pkg-config glib-2.0 --libs`
+ CFLAGS_glib=`pkg-config glib-2.0 --cflags`
+ cd ${S}/src/addressbook/libebook-contacts
+ sed -i 's:#include "evolution-data-server-config.h"::g' gen-western-table.c
+ ${CC} -o ${B}/gen-western-table gen-western-table.c ${CFLAGS} ${CFLAGS_glib} ${LDFLAGS} ${LDFLAGS_glib}
+}
+
+do_install() {
+ install -d ${D}${bindir}
+ install -m 755 ${B}/* ${D}${bindir}
+}
+
diff --git a/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb
new file mode 100644
index 0000000000..fc19253142
--- /dev/null
+++ b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb
@@ -0,0 +1,72 @@
+require ${BPN}.inc
+
+DEPENDS = " \
+ ${BPN}-native gperf-native \
+ glib-2.0 json-glib gtk4 libxml2 icu \
+ dbus db virtual/libiconv zlib libsoup-3.0 libical nss libsecret \
+"
+
+inherit pkgconfig gsettings gobject-introspection features_check gtk-doc gettext perlnative vala
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+SRC_URI += " \
+ file://0001-cmake-Do-not-export-CC-into-gir-compiler.patch \
+ file://0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch \
+ file://0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch \
+ file://0003-contact-Replace-the-Novell-sample-contact-with-somet.patch \
+ file://0004-call-native-helpers.patch \
+ file://iconv-detect.h \
+"
+
+LKSTRFTIME = "HAVE_LKSTRFTIME=ON"
+LKSTRFTIME:libc-musl = "HAVE_LKSTRFTIME=OFF"
+
+EXTRA_OECMAKE = " \
+ -DSYSCONF_INSTALL_DIR=${sysconfdir} \
+ -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', '')} \
+ -DENABLE_GTK=OFF \
+ -DENABLE_GTK4=ON \
+ -DENABLE_INSTALLED_TESTS=OFF \
+ -DENABLE_EXAMPLES=OFF \
+ -DENABLE_MAINTAINER_MODE=OFF \
+"
+
+EXTRA_OECMAKE:append:class-target = " -DG_IR_COMPILER=${STAGING_BINDIR}/g-ir-compiler-wrapper"
+EXTRA_OECMAKE:append:class-target = " -DG_IR_SCANNER=${STAGING_BINDIR}/g-ir-scanner-wrapper"
+
+PACKAGECONFIG ?= "goa oauth"
+
+PACKAGECONFIG[canberra] = "-DENABLE_CANBERRA=ON,-DENABLE_CANBERRA=OFF,libcanberra"
+PACKAGECONFIG[oauth] = "-DENABLE_OAUTH2_WEBKITGTK4=ON -DENABLE_OAUTH2_WEBKITGTK=OFF,-DENABLE_OAUTH2_WEBKITGTK4=OFF -DENABLE_OAUTH2_WEBKITGTK=OFF,webkitgtk json-glib"
+PACKAGECONFIG[goa] = "-DENABLE_GOA=ON,-DENABLE_GOA=OFF,gnome-online-accounts"
+PACKAGECONFIG[kerberos] = "-DWITH_KRB5=ON,-DWITH_KRB5=OFF,krb5"
+# BROKEN: due missing pkg-config in openldap eds' cmake finds host-libs when
+# searching for openldap-libs
+PACKAGECONFIG[openldap] = "-DWITH_OPENLDAP=ON,-DWITH_OPENLDAP=OFF,openldap"
+PACKAGECONFIG[weather] = "-DENABLE_WEATHER=ON,-DENABLE_WEATHER=OFF,libgweather4"
+
+
+# -ldb needs this on some platforms
+LDFLAGS += "-lpthread -lgmodule-2.0 -lgthread-2.0"
+
+# invokes libraries from build host
+GI_DATA_ENABLED:libc-musl="False"
+
+do_configure:append () {
+ cp ${UNPACKDIR}/iconv-detect.h ${S}/src
+ # avoid writing perl-native path into csv2vcard shebang
+ sed -i "s|@PERL@|${bindir}/perl|" ${S}/src/tools/addressbook-export/csv2vcard.in
+}
+
+FILES:${PN} =+ " \
+ ${datadir}/dbus-1 \
+ ${datadir}/evolution-data-server-*/ui/ \
+ ${systemd_user_unitdir} \
+"
+
+RDEPENDS:${PN} += "perl"
diff --git a/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.inc b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.inc
new file mode 100644
index 0000000000..33190c461c
--- /dev/null
+++ b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.inc
@@ -0,0 +1,14 @@
+SUMMARY = "Evolution database backend server"
+HOMEPAGE = "http://www.gnome.org/projects/evolution/"
+BUGTRACKER = "https://bugzilla.gnome.org/"
+
+LICENSE = "LGPL-2.0-only & LGPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6a6e689d19255cf0557f3fe7d7068212 \
+ file://src/camel/camel.h;endline=24;md5=342fc5e9357254bc30c24e43ae47d9a1 \
+ file://src/libedataserver/e-data-server-util.h;endline=20;md5=8f21a9c80ea82a4fb80b5f959f672543"
+
+GNOMEBASEBUILDCLASS = "cmake"
+inherit gnomebase upstream-version-is-even
+
+SRC_URI[archive.sha256sum] = "91f4ffc38a1b8d2fe8939834449ac541c0bff4a39b444edc2a9529344a28e98a"
+PV = "3.50.1"
diff --git a/meta-gnome/recipes-gnome/eds/evolution-data-server/0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch
index cc9dca4ea5..e8c6d6a763 100644
--- a/meta-gnome/recipes-gnome/eds/evolution-data-server/0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch
+++ b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-CMakeLists.txt-Remove-TRY_RUN-for-iconv.patch
@@ -1,7 +1,7 @@
-From e32075119803f9fffbba01a31083e416cb213011 Mon Sep 17 00:00:00 2001
+From 131b88a81aba3d72d566bc8a9d968941a98e0007 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Tue, 19 Dec 2017 16:37:20 +0100
-Subject: [PATCH 1/7] CMakeLists.txt: Remove TRY_RUN for iconv
+Date: Sun, 31 Mar 2019 18:11:55 +0200
+Subject: [PATCH] CMakeLists.txt: Remove TRY_RUN for iconv
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -13,22 +13,24 @@ Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
- CMakeLists.txt | 6 ------
- 1 file changed, 6 deletions(-)
+ CMakeLists.txt | 11 -----------
+ 1 file changed, 11 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index f9d72db..ed99904 100644
+index 1672daf..0b3e4e0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -526,15 +526,9 @@ endif(NOT HAVE_ICONV)
+@@ -524,17 +524,6 @@ if(NOT HAVE_ICONV)
+ message(FATAL_ERROR "You need to install a working iconv implementation, such as ftp://ftp.gnu.org/pub/gnu/libiconv")
+ endif(NOT HAVE_ICONV)
- set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBS})
- file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/" _binary_dir_with_separator)
+-set(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBS})
+-file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/" _binary_dir_with_separator)
-CHECK_C_SOURCE_RUNS("#define ICONV_DETECT_BUILD_DIR \"${_binary_dir_with_separator}\"
- #include \"${CMAKE_SOURCE_DIR}/iconv-detect.c\"" _correct_iconv)
- unset(_binary_dir_with_separator)
- unset(CMAKE_REQUIRED_LIBRARIES)
-
+-unset(_binary_dir_with_separator)
+-unset(CMAKE_REQUIRED_LIBRARIES)
+-
-if(NOT _correct_iconv)
- message(FATAL_ERROR "You need to install a working iconv implementation, such as ftp://ftp.gnu.org/pub/gnu/libiconv")
-endif(NOT _correct_iconv)
@@ -37,5 +39,5 @@ index f9d72db..ed99904 100644
# Backtraces for debugging
# ******************************
--
-2.21.0
+2.20.1
diff --git a/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-cmake-Do-not-export-CC-into-gir-compiler.patch b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-cmake-Do-not-export-CC-into-gir-compiler.patch
new file mode 100644
index 0000000000..118d93a72a
--- /dev/null
+++ b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-cmake-Do-not-export-CC-into-gir-compiler.patch
@@ -0,0 +1,25 @@
+Use G_IR_SCANNER without passing additional environment
+
+Upstream-Status: Inappropriate [OE-specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/cmake/modules/GObjectIntrospection.cmake
++++ b/cmake/modules/GObjectIntrospection.cmake
+@@ -122,9 +122,7 @@ macro(gir_add_introspection gir)
+ file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/${_gir_name}_files "${_gir_files}")
+
+ add_custom_command(
+- COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'" LDFLAGS=
+- ${INTROSPECTION_SCANNER_ENV}
+- ${G_IR_SCANNER}
++ COMMAND ${G_IR_SCANNER}
+ ${INTROSPECTION_SCANNER_ARGS}
+ --namespace=${_gir_namespace}
+ --nsversion=${_gir_version}
+@@ -240,7 +238,6 @@ macro(gir_add_introspection_simple gir_l
+ ${_gir_identifies_prefixes}
+ ${_gir_deps}
+ --add-include-path=${SHARE_INSTALL_PREFIX}/gir-1.0
+- --library-path=${LIB_INSTALL_DIR}
+ ${_extra_library_path}
+ --pkg-export ${pkg_export_prefix}-${gir_library_version}
+ --c-include=${c_include}
diff --git a/meta-gnome/recipes-gnome/eds/evolution-data-server/0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch
index 23c3a96d43..51eaf7cfef 100644
--- a/meta-gnome/recipes-gnome/eds/evolution-data-server/0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch
+++ b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0002-CMakeLists.txt-remove-CHECK_C_SOURCE_RUNS-check.patch
@@ -9,6 +9,7 @@ Content-Transfer-Encoding: 8bit
* TRY_RUN: does not work for OE
* HAVE_LKSTRFTIME is set by recipe as configure option
+Upstream-Status: Inappropriate [Cross-compile specific]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
CMakeLists.txt | 23 -----------------------
diff --git a/meta-gnome/recipes-gnome/eds/evolution-data-server/0003-contact-Replace-the-Novell-sample-contact-with-somet.patch b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0003-contact-Replace-the-Novell-sample-contact-with-somet.patch
index c9e6f96f5c..c9e6f96f5c 100644
--- a/meta-gnome/recipes-gnome/eds/evolution-data-server/0003-contact-Replace-the-Novell-sample-contact-with-somet.patch
+++ b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0003-contact-Replace-the-Novell-sample-contact-with-somet.patch
diff --git a/meta-gnome/recipes-gnome/eds/evolution-data-server/0004-Add-native-suffix-to-exacutables-produced-and-run-du.patch b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0004-call-native-helpers.patch
index 67023df2cb..82f6972501 100644
--- a/meta-gnome/recipes-gnome/eds/evolution-data-server/0004-Add-native-suffix-to-exacutables-produced-and-run-du.patch
+++ b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0004-call-native-helpers.patch
@@ -1,26 +1,21 @@
-From 30bd4ae3badb152c9f81c6d34014c586fa0cc825 Mon Sep 17 00:00:00 2001
-From: Piotr Tworek <tworaz@tworaz.net>
-Date: Mon, 12 Aug 2019 14:13:52 +0200
-Subject: [PATCH 4/7] Add native suffix to exacutables produced and run during
- build process.
+From 9c375e3fcf8ff778a5010a07a7da4b6a58adec7c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Sun, 31 Mar 2019 19:11:31 +0200
+Subject: [PATCH] call native helpers
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
-CMake can't build tools for the host system when cross compiling. As
-result eds currently fails to build in OE due to some programs being
-cross compiled for the target and run on the host. To work around this
-limitation modify existing targets using build time generated binaries
-to invoke binaries suffixed with -native. We can inject such binaries
-into expected locations prior to invoking ninja in do_compile.
+Upstream-Status: Inappropriate [oe-specific]
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Piotr Tworek <tworaz@tworaz.net>
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
src/addressbook/libebook-contacts/CMakeLists.txt | 2 +-
src/camel/CMakeLists.txt | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/addressbook/libebook-contacts/CMakeLists.txt b/src/addressbook/libebook-contacts/CMakeLists.txt
-index e9e3259..2ae72a8 100644
+index e9e3259..e749d1b 100644
--- a/src/addressbook/libebook-contacts/CMakeLists.txt
+++ b/src/addressbook/libebook-contacts/CMakeLists.txt
@@ -25,7 +25,7 @@ target_link_libraries(gen-western-table
@@ -28,12 +23,12 @@ index e9e3259..2ae72a8 100644
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/e-name-western-tables.h
- COMMAND ${CMAKE_CURRENT_BINARY_DIR}/gen-western-table "${CMAKE_CURRENT_SOURCE_DIR}/e-name-western-tables.h.in" >${CMAKE_CURRENT_BINARY_DIR}/e-name-western-tables.h
-+ COMMAND ${CMAKE_CURRENT_BINARY_DIR}/gen-western-table-native "${CMAKE_CURRENT_SOURCE_DIR}/e-name-western-tables.h.in" >${CMAKE_CURRENT_BINARY_DIR}/e-name-western-tables.h
++ COMMAND gen-western-table "${CMAKE_CURRENT_SOURCE_DIR}/e-name-western-tables.h.in" >${CMAKE_CURRENT_BINARY_DIR}/e-name-western-tables.h
DEPENDS gen-western-table e-name-western-tables.h.in
)
diff --git a/src/camel/CMakeLists.txt b/src/camel/CMakeLists.txt
-index be626a8..9226b2b 100644
+index be626a8..14ac8b8 100644
--- a/src/camel/CMakeLists.txt
+++ b/src/camel/CMakeLists.txt
@@ -10,7 +10,7 @@ target_include_directories(camel-gen-tables PUBLIC
@@ -41,10 +36,10 @@ index be626a8..9226b2b 100644
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/camel-mime-tables.c
- COMMAND ${CMAKE_CURRENT_BINARY_DIR}/camel-gen-tables >${CMAKE_CURRENT_BINARY_DIR}/camel-mime-tables.c
-+ COMMAND ${CMAKE_CURRENT_BINARY_DIR}/camel-gen-tables-native >${CMAKE_CURRENT_BINARY_DIR}/camel-mime-tables.c
++ COMMAND camel-gen-tables >${CMAKE_CURRENT_BINARY_DIR}/camel-mime-tables.c
DEPENDS camel-gen-tables
)
--
-2.21.0
+2.20.1
diff --git a/meta-gnome/recipes-gnome/eds/evolution-data-server/iconv-detect.h b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/iconv-detect.h
index 46f476d5bc..46f476d5bc 100644
--- a/meta-gnome/recipes-gnome/eds/evolution-data-server/iconv-detect.h
+++ b/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/iconv-detect.h
diff --git a/meta-gnome/recipes-gnome/faenza-icon-theme/faenza-icon-theme_1.3.bb b/meta-gnome/recipes-gnome/faenza-icon-theme/faenza-icon-theme_1.3.bb
index 561b094a98..5db9457122 100644
--- a/meta-gnome/recipes-gnome/faenza-icon-theme/faenza-icon-theme_1.3.bb
+++ b/meta-gnome/recipes-gnome/faenza-icon-theme/faenza-icon-theme_1.3.bb
@@ -1,15 +1,15 @@
DESCRIPTION = "An icon theme for Gnome"
SECTION = "x11/wm"
-LICENSE = "GPLv3"
+LICENSE = "GPL-3.0-only"
HOMEPAGE = "http://code.google.com/p/faenza-icon-theme/"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
inherit allarch gtk-icon-cache
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
-SRC_URI = "http://faenza-icon-theme.googlecode.com/files/${BPN}_${PV}.zip"
-SRC_URI[md5sum] = "e9bd6106d13017ce06d24b586259ae9c"
+SRC_URI = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/${BPN}/${BPN}_${PV}.zip"
SRC_URI[sha256sum] = "d4486fda0413f8a81a87e0dd2329f50f2a8a7cb4147b48cf147f0160add8174a"
do_install() {
@@ -23,4 +23,4 @@ do_install() {
chown -R root:root ${D}${datadir}
}
-FILES_${PN} += "${datadir}/icons ${datadir}/themes"
+FILES:${PN} += "${datadir}/icons ${datadir}/themes"
diff --git a/meta-gnome/recipes-gnome/file-roller/file-roller_44.3.bb b/meta-gnome/recipes-gnome/file-roller/file-roller_44.3.bb
new file mode 100644
index 0000000000..a195d43f0c
--- /dev/null
+++ b/meta-gnome/recipes-gnome/file-roller/file-roller_44.3.bb
@@ -0,0 +1,46 @@
+SUMMARY = "An archive manager utility for the GNOME Environment"
+LICENSE="GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+
+DEPENDS = " \
+ desktop-file-utils-native \
+ glib-2.0-native \
+ glib-2.0 \
+ json-glib \
+ gtk4 \
+ libadwaita \
+ libarchive \
+ libhandy \
+ libportal \
+"
+
+inherit gnomebase gsettings itstool gobject-introspection gnome-help gettext upstream-version-is-even mime-xdg gtk-icon-cache features_check
+
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+EXTRA_OEMESON += "-Dintrospection=enabled"
+
+SRC_URI = "git://gitlab.gnome.org/GNOME/file-roller.git;protocol=https;branch=master"
+SRCREV = "d4f3b970bd7dd07d8f539433628eba10551aa629"
+S = "${WORKDIR}/git"
+
+PACKAGECONFIG ??= ""
+
+PACKAGECONFIG[nautilus] = "-Dnautilus-actions=enabled,-Dnautilus-actions=disabled,nautilus"
+PACKAGECONFIG[packagekit] = "-Dpackagekit=true,-Dpackagekit=false,,packagekit"
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/metainfo \
+ ${libdir}/nautilus \
+"
+
+EXTRA_OEMESON += "--cross-file=${WORKDIR}/meson-${PN}.cross"
+
+do_write_config:append() {
+ cat >${WORKDIR}/meson-${PN}.cross <<EOF
+[binaries]
+cpio = '${bindir}/cpio'
+EOF
+}
diff --git a/meta-gnome/recipes-gnome/gdm/gdm_46.0.bb b/meta-gnome/recipes-gnome/gdm/gdm_46.0.bb
new file mode 100644
index 0000000000..ec1d6ad39f
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gdm/gdm_46.0.bb
@@ -0,0 +1,67 @@
+SUMMARY = "GNOME Display Manager"
+LICENSE="GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+DEPENDS = " \
+ accountsservice \
+ audit \
+ dconf-native \
+ gtk+3 \
+ json-glib \
+ keyutils \
+ libcanberra \
+ libgudev \
+ libpam \
+ xserver-xorg \
+"
+
+REQUIRED_DISTRO_FEATURES = "x11 systemd pam polkit gobject-introspection-data"
+GIR_MESON_OPTION = ""
+
+
+inherit gnomebase gsettings pkgconfig gobject-introspection gettext systemd useradd itstool gnome-help features_check
+
+SRC_URI[archive.sha256sum] = "8d6cb52176eca48b6bbf1cfe2fdae08d9677b5a0f2bca600dee4604de0dd1efc"
+
+EXTRA_OEMESON = " \
+ -Dplymouth=disabled \
+ -Ddefault-pam-config=openembedded \
+ -Dpam-mod-dir=${base_libdir}/security \
+"
+
+do_install:prepend() {
+ sed -i -e 's|${B}/||g' ${B}/daemon/gdm-session-worker-enum-types.c
+ sed -i -e 's|${B}/||g' ${B}/daemon/gdm-session-worker-enum-types.h
+ sed -i -e 's|${B}/||g' ${B}/daemon/gdm-session-enum-types.c
+ sed -i -e 's|${B}/||g' ${B}/daemon/gdm-session-enum-types.h
+}
+
+do_install:append() {
+ rm -rf ${D}/run ${D}${localstatedir}/run
+}
+
+USERADD_PACKAGES = "${PN}"
+USERADD_PARAM:${PN} = "--system --no-create-home --home ${localstatedir}/lib/gdm --user-group gdm"
+
+SYSTEMD_SERVICE:${PN} = "${BPN}.service"
+
+# Some gnome components - as gnome-panel and gnome-shell (!!) - require gdm
+# components. To allow gnome-images using different display-manager, split them
+# out into a seperate package.
+PACKAGE_BEFORE_PN = "${PN}-base"
+FILES:${PN}-base = " \
+ ${datadir}/glib-2.0 \
+ ${datadir}/gnome-session \
+ ${libdir}/lib*${SOLIBS} \
+ ${libdir}/girepository-1.0 \
+"
+
+CONFFILES:${PN} += "${sysconfdir}/gdm/custom.conf"
+FILES:${PN} += " \
+ ${datadir}/dconf \
+ ${base_libdir}/security/pam_gdm.so \
+ ${localstatedir} \
+ ${systemd_unitdir} ${systemd_user_unitdir} \
+"
+
+RDEPENDS:${PN} += "${PN}-base"
diff --git a/meta-gnome/recipes-gnome/gedit/files/0001-Remove-help-directory-from-build.patch b/meta-gnome/recipes-gnome/gedit/files/0001-Remove-help-directory-from-build.patch
deleted file mode 100644
index 4ad57effe9..0000000000
--- a/meta-gnome/recipes-gnome/gedit/files/0001-Remove-help-directory-from-build.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 1d2e6165e3154e27ecde329a40c05f0880afb9e0 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Tue, 17 May 2016 14:14:03 +0300
-Subject: [PATCH] Remove help directory from build
-
-It hardcodes the use of xml2po utility, which is provided by obsolete gnome-doc-utils
-
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- Makefile.am | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index e57b203..a88152d 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -3,9 +3,6 @@ ACLOCAL_AMFLAGS = -I m4
-
- SUBDIRS = gedit pixmaps po data plugin-loaders plugins docs tests win32 osx
-
--if !OS_OSX
--SUBDIRS += help
--endif
-
- distuninstallcheck_listfiles = find . -type f -print | grep -v scrollkeeper
-
---
-2.8.1
-
diff --git a/meta-gnome/recipes-gnome/gedit/files/0001-gedit-utils-qualify-handle_builder_error-with-format.patch b/meta-gnome/recipes-gnome/gedit/files/0001-gedit-utils-qualify-handle_builder_error-with-format.patch
deleted file mode 100644
index 4885c45113..0000000000
--- a/meta-gnome/recipes-gnome/gedit/files/0001-gedit-utils-qualify-handle_builder_error-with-format.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 623ffac1f6e7725041b386e0f2933fe36809b5a9 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 26 Aug 2017 09:04:30 -0700
-Subject: [PATCH] gedit-utils: qualify handle_builder_error() with format
- string parameters
-
-gedit-utils.c:1063:32: error: format string is not a string literal [-Werror,-Wformat-nonliteral]
- msg_plain = g_strdup_vprintf (message, args);
- ^~~~~~~
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- gedit/gedit-utils.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/gedit/gedit-utils.c b/gedit/gedit-utils.c
-index 41a5afd..c800828 100644
---- a/gedit/gedit-utils.c
-+++ b/gedit/gedit-utils.c
-@@ -1051,7 +1051,7 @@ gedit_utils_is_valid_uri (const gchar *uri)
- return TRUE;
- }
-
--static GtkWidget *
-+static G_GNUC_PRINTF(1, 2) GtkWidget *
- handle_builder_error (const gchar *message, ...)
- {
- GtkWidget *label;
---
-2.14.1
-
diff --git a/meta-gnome/recipes-gnome/gedit/files/0001-tests-document-saver.c-Define-ACCESSPERMS-if-not-def.patch b/meta-gnome/recipes-gnome/gedit/files/0001-tests-document-saver.c-Define-ACCESSPERMS-if-not-def.patch
deleted file mode 100644
index 11afe75ce1..0000000000
--- a/meta-gnome/recipes-gnome/gedit/files/0001-tests-document-saver.c-Define-ACCESSPERMS-if-not-def.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From ee43bcc3c8d69fe56a64c3487e2d3c780ea5d25e Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 13 Jul 2017 06:53:35 -0700
-Subject: [PATCH] tests/document-saver.c: Define ACCESSPERMS if not defined
- already
-
-Helps compile with musl
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- tests/document-saver.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/tests/document-saver.c b/tests/document-saver.c
-index 9f44d5a..811ade6 100644
---- a/tests/document-saver.c
-+++ b/tests/document-saver.c
-@@ -41,6 +41,10 @@
- #define UNOWNED_GROUP_LOCAL_URI "/tmp/gedit-document-saver-unowned-group.txt"
- #define UNOWNED_GROUP_REMOTE_URI "sftp://localhost/tmp/gedit-document-saver-unowned-group.txt"
-
-+#if !defined(ACCESSPERMS)
-+#define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) /* 0777 */
-+#endif
-+
- static gboolean test_completed;
- static gboolean mount_completed;
- static gboolean mount_success;
---
-2.13.2
-
diff --git a/meta-gnome/recipes-gnome/gedit/files/0001-workaround-void-pointer-arithmetic.patch b/meta-gnome/recipes-gnome/gedit/files/0001-workaround-void-pointer-arithmetic.patch
deleted file mode 100644
index a28808b8d4..0000000000
--- a/meta-gnome/recipes-gnome/gedit/files/0001-workaround-void-pointer-arithmetic.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 8e0cbfac142d38320dd02416601e14c65585cd17 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Sat, 9 Mar 2013 12:47:06 +0100
-Subject: [PATCH] workaround void pointer arithmetic
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-fixes errors like:
-error: pointer of type 'void *' used in arithmetic [-Werror=pointer-arith]
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
----
- gedit/gedit-document-input-stream.c | 4 ++--
- gedit/gedit-smart-charset-converter.c | 2 +-
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/gedit/gedit-document-input-stream.c b/gedit/gedit-document-input-stream.c
-index 5a1f961..38316e7 100644
---- a/gedit/gedit-document-input-stream.c
-+++ b/gedit/gedit-document-input-stream.c
-@@ -426,7 +426,7 @@ gedit_document_input_stream_read (GInputStream *stream,
-
- do
- {
-- n = read_line (dstream, buffer + read, space_left);
-+ n = read_line (dstream, ((char*)buffer) + read, space_left);
- read += n;
- space_left -= n;
- } while (space_left > 0 && n != 0 && dstream->priv->bytes_partial == 0);
-@@ -451,7 +451,7 @@ gedit_document_input_stream_read (GInputStream *stream,
-
- newline = get_new_line (dstream);
-
-- memcpy (buffer + read, newline, newline_size);
-+ memcpy (((char*)buffer) + read, newline, newline_size);
-
- read += newline_size;
- dstream->priv->newline_added = TRUE;
-diff --git a/gedit/gedit-smart-charset-converter.c b/gedit/gedit-smart-charset-converter.c
-index e32b0b1..6745ce3 100644
---- a/gedit/gedit-smart-charset-converter.c
-+++ b/gedit/gedit-smart-charset-converter.c
-@@ -153,7 +153,7 @@ try_convert (GCharsetConverter *converter,
- do
- {
- res = g_converter_convert (G_CONVERTER (converter),
-- inbuf + nread,
-+ ((const char*)inbuf) + nread,
- inbuf_size - nread,
- out + nwritten,
- out_size - nwritten,
---
-1.7.4.4
-
diff --git a/meta-gnome/recipes-gnome/gedit/files/0002-suppress-string-format-literal-warning-to-fix-build-.patch b/meta-gnome/recipes-gnome/gedit/files/0002-suppress-string-format-literal-warning-to-fix-build-.patch
deleted file mode 100644
index a5d2310123..0000000000
--- a/meta-gnome/recipes-gnome/gedit/files/0002-suppress-string-format-literal-warning-to-fix-build-.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 4ebdf8023f763f75a7e1b548894de2e8b784f4a8 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Fri, 29 Jul 2016 23:19:40 +0200
-Subject: [PATCH] suppress string format literal warning to fix build with gcc6
-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@googlemail.com>
----
- plugins/time/gedit-time-plugin.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/plugins/time/gedit-time-plugin.c b/plugins/time/gedit-time-plugin.c
-index d2ffdb9..441d9f9 100644
---- a/plugins/time/gedit-time-plugin.c
-+++ b/plugins/time/gedit-time-plugin.c
-@@ -473,12 +473,15 @@ get_time (const gchar* format)
- clock = time (NULL);
- now = localtime (&clock);
-
-+#pragma GCC diagnostic push
-+#pragma GCC diagnostic ignored "-Wformat-nonliteral"
- do
- {
- out_length += 255;
- out = g_realloc (out, out_length);
- }
- while (strftime (out, out_length, locale_format, now) == 0);
-+#pragma GCC diagnostic pop
-
- g_free (locale_format);
-
---
-2.5.5
-
diff --git a/meta-gnome/recipes-gnome/gedit/gedit/0001-fix-for-clang-18.patch b/meta-gnome/recipes-gnome/gedit/gedit/0001-fix-for-clang-18.patch
new file mode 100644
index 0000000000..40fd93b984
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gedit/gedit/0001-fix-for-clang-18.patch
@@ -0,0 +1,32 @@
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+Upstream-Status: Inappropriate [https://gitlab.gnome.org/GNOME/gedit/-/issues/588]
+
+Temporary workaround to fix build:
+../plugins/quickhighlight/gedit-quick-highlight-plugin.c: In function ‘gedit_quick_highlight_plugin_load_style’:
+../plugins/quickhighlight/gedit-quick-highlight-plugin.c:96:47: error: implicit declaration of function ‘gtk_source_style_copy’; did you mean ‘gtk_source_style_apply’? [-Wimplicit-function-declaration]
+
+ 96 | plugin->priv->style = gtk_source_style_copy (style);
+ | ^~~~~~~~~~~~~~~~~~~~~
+ | gtk_source_style_apply
+../plugins/quickhighlight/gedit-quick-highlight-plugin.c:96:47: warning: nested extern declaration of ‘gtk_source_style_copy’ [-Wnested-externs]
+../plugins/quickhighlight/gedit-quick-highlight-plugin.c:96:45: error: assignment to ‘GtkSourceStyle *’ {aka ‘struct _GtkSourceStyle *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
+ 96 | plugin->priv->style = gtk_source_style_copy (style);
+ | ^
+
+--- a/plugins/quickhighlight/gedit-quick-highlight-plugin.c 2024-02-20 08:11:47.925749255 +0100
++++ b/plugins/quickhighlight/gedit-quick-highlight-plugin.c 2024-02-20 08:12:16.218594067 +0100
+@@ -90,11 +90,12 @@
+ if (style_scheme != NULL)
+ {
+ style = gtk_source_style_scheme_get_style (style_scheme, "quick-highlight-match");
+-
++#if 0
+ if (style != NULL)
+ {
+ plugin->priv->style = gtk_source_style_copy (style);
+ }
++#endif
+ }
+ }
+
+
diff --git a/meta-gnome/recipes-gnome/gedit/gedit_2.30.4.bb b/meta-gnome/recipes-gnome/gedit/gedit_2.30.4.bb
deleted file mode 100644
index 6e07208886..0000000000
--- a/meta-gnome/recipes-gnome/gedit/gedit_2.30.4.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-SUMMARY = "GNOME editor"
-SECTION = "x11/gnome"
-LICENSE = "GPLv2+"
-PR = "r2"
-
-DEPENDS = "gvfs enchant gconf gnome-doc-utils glib-2.0 glib-2.0-native gtk+ \
- gtksourceview2 iso-codes intltool-native gnome-common-native \
- libice python3-six-native"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-inherit distro_features_check gnomebase gconf gettext python3native
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \
- file://0001-workaround-void-pointer-arithmetic.patch \
- file://0001-Remove-help-directory-from-build.patch \
- file://0002-suppress-string-format-literal-warning-to-fix-build-.patch \
- file://0001-tests-document-saver.c-Define-ACCESSPERMS-if-not-def.patch \
- file://0001-gedit-utils-qualify-handle_builder_error-with-format.patch \
- "
-SRC_URI[archive.md5sum] = "e1eecb0a92a1a363b3d375ec5ac0fb3b"
-SRC_URI[archive.sha256sum] = "a561fe3dd1d199baede1bd07c4ee65f06fc7c494dd4d3327117f04149a608e3c"
-GNOME_COMPRESS_TYPE="bz2"
-
-EXTRA_OECONF = "--disable-scrollkeeper \
- --enable-gvfs-metadata"
-
-LDFLAGS += "-lgmodule-2.0 -lICE"
-
-FILES_${PN} += "${libdir}/gedit-2/plugin* ${datadir}/gedit-2"
-FILES_${PN}-dbg += "${libdir}/gedit-2/plugin-loaders/.debug ${libdir}/gedit-2/plugins/.debug"
diff --git a/meta-gnome/recipes-gnome/gedit/gedit_46.2.bb b/meta-gnome/recipes-gnome/gedit/gedit_46.2.bb
new file mode 100644
index 0000000000..6cdc33c1cc
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gedit/gedit_46.2.bb
@@ -0,0 +1,53 @@
+SUMMARY = "GNOME editor"
+SECTION = "x11/gnome"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=75859989545e37968a99b631ef42722e"
+
+
+DEPENDS = " \
+ appstream-glib-native \
+ desktop-file-utils-native \
+ libgedit-amtk \
+ libgedit-gtksourceview \
+ gdk-pixbuf-native \
+ gtk+3 \
+ gsettings-desktop-schemas \
+ libpeas \
+ libsoup \
+ gspell \
+ tepl \
+"
+
+inherit gnomebase gsettings itstool gnome-help gobject-introspection gtk-doc gettext features_check mime-xdg gtk-icon-cache python3targetconfig
+
+def gnome_verdir(v):
+ return oe.utils.trim_version(v, 1)
+
+SRC_URI += "file://0001-fix-for-clang-18.patch"
+SRC_URI[archive.sha256sum] = "c0866412bad147ebace2d282ffcbb5a0e9a304b20fd55640bee21c81e6d501ef"
+
+# gobject-introspection is mandatory and cannot be configured
+REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+
+do_install:prepend() {
+ sed -i -e 's|${B}||g' ${B}/plugins/filebrowser/gedit-file-browser-enum-types.c
+}
+
+GIR_MESON_OPTION = ""
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+PACKAGES += "${PN}-python"
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/metainfo \
+"
+
+FILES:${PN}-python += " \
+ ${PYTHON_SITEPACKAGES_DIR} \
+"
+
+RDEPENDS:${PN} += "gsettings-desktop-schemas"
+RRECOMMENDS:${PN} += "source-code-pro-fonts"
diff --git a/meta-gnome/recipes-gnome/gedit/libgedit-amtk_5.8.0.bb b/meta-gnome/recipes-gnome/gedit/libgedit-amtk_5.8.0.bb
new file mode 100644
index 0000000000..11da836ff4
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gedit/libgedit-amtk_5.8.0.bb
@@ -0,0 +1,17 @@
+SUMMARY = "libgedit-amtk - Actions, Menus and Toolbars Kit for GTK applications"
+SECTION = "gnome"
+LICENSE = "LGPL-3.0-or-later"
+LIC_FILES_CHKSUM = "file://LICENSES/LGPL-3.0-or-later.txt;md5=c51d3eef3be114124d11349ca0d7e117"
+
+DEPENDS = "glib-2.0 gtk+3"
+
+inherit meson pkgconfig gobject-introspection features_check gtk-doc
+
+SRC_URI = "git://github.com/gedit-technology/libgedit-amtk.git;protocol=https;branch=main"
+S = "${WORKDIR}/git"
+SRCREV = "f6fbfd1c57de3d97cab2056a5c3088b0da49e8a4"
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+
+GIR_MESON_OPTION = "gobject_introspection"
+GTKDOC_MESON_OPTION = "gtk_doc"
diff --git a/meta-gnome/recipes-gnome/gedit/libgedit-gtksourceview_299.2.1.bb b/meta-gnome/recipes-gnome/gedit/libgedit-gtksourceview_299.2.1.bb
new file mode 100644
index 0000000000..d66ce60802
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gedit/libgedit-gtksourceview_299.2.1.bb
@@ -0,0 +1,24 @@
+SUMMARY = "Gedit Technology - Source code editing widget"
+SECTION = "gnome"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+
+DEPENDS = "glib-2.0 gtk+3 libxml2"
+
+inherit meson pkgconfig gobject-introspection features_check gtk-doc
+
+SRC_URI = "git://github.com/gedit-technology/libgedit-gtksourceview.git;protocol=https;branch=main"
+S = "${WORKDIR}/git"
+SRCREV = "eaafc892d033713c7c823d8ad602061e456b3c88"
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+
+GIR_MESON_OPTION = "gobject_introspection"
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+do_install:prepend() {
+ sed -i -e 's|${B}||g' ${B}/gtksourceview/gtksource-enumtypes.c
+ sed -i -e 's|${B}||g' ${B}/gtksourceview/gtksource-enumtypes.h
+}
+
+FILES:${PN} += "${datadir}"
diff --git a/meta-gnome/recipes-gnome/geocode-glib/geocode-glib_3.26.4.bb b/meta-gnome/recipes-gnome/geocode-glib/geocode-glib_3.26.4.bb
new file mode 100644
index 0000000000..a1495d6153
--- /dev/null
+++ b/meta-gnome/recipes-gnome/geocode-glib/geocode-glib_3.26.4.bb
@@ -0,0 +1,18 @@
+SUMMARY = "A convenience library for the geocoding"
+
+LICENSE = "LGPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605"
+
+GIR_MESON_OPTION = "enable-introspection"
+GTKDOC_MESON_OPTION = "enable-gtk-doc"
+
+inherit gnomebase gobject-introspection gettext gtk-doc upstream-version-is-even
+
+DEPENDS = " \
+ json-glib \
+ libsoup-3.0 \
+"
+
+SRC_URI[archive.sha256sum] = "2d9a6826d158470449a173871221596da0f83ebdcff98b90c7049089056a37aa"
+
+EXTRA_OEMESON = "-Denable-installed-tests=false -Dsoup2=false"
diff --git a/meta-gnome/recipes-gnome/gexiv2/gexiv2_0.14.3.bb b/meta-gnome/recipes-gnome/gexiv2/gexiv2_0.14.3.bb
new file mode 100644
index 0000000000..83bc9c6ad8
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gexiv2/gexiv2_0.14.3.bb
@@ -0,0 +1,34 @@
+SUMMARY = "A GObject-based Exiv2 wrapper"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=625f055f41728f84a8d7938acc35bdc2"
+
+DEPENDS = "exiv2 python3-pygobject-native"
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+inherit gnomebase gobject-introspection gtk-doc python3native vala
+
+SRC_URI[archive.sha256sum] = "21e64d2c56e9b333d44fef3f2a4b25653d922c419acd972fa96fab695217e2c8"
+
+EXTRA_OEMESON = " \
+ ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-Dvapi=true', '-Dvapi=false', d)} \
+"
+
+PACKAGES =+ "${PN}-python3"
+FILES:${PN}-python3 = "${PYTHON_SITEPACKAGES_DIR}"
+RDEPENDS:${PN}-python3 = "${PN}"
+
+PACKAGE_PREPROCESS_FUNCS += "src_package_preprocess"
+src_package_preprocess () {
+ # Trim build paths from comments in generated sources to ensure reproducibility
+ sed -i -e "s,${B}/../${BPN}-${PV}/${BPN}/,,g" \
+ ${B}/gexiv2/gexiv2-enums.cpp
+}
+
+do_install:append() {
+ # gexiv2 harcodes usr/lib as install path, so this corrects it to actual libdir
+ if [ "${prefix}/lib" != "${libdir}" ]; then
+ mv ${D}/${prefix}/lib/* ${D}/${libdir}/
+ rm -rf ${D}/${prefix}/lib
+ fi
+}
diff --git a/meta-gnome/recipes-gnome/gfbgraph/gfbgraph_0.2.5.bb b/meta-gnome/recipes-gnome/gfbgraph/gfbgraph_0.2.5.bb
new file mode 100644
index 0000000000..9b1a02bb09
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gfbgraph/gfbgraph_0.2.5.bb
@@ -0,0 +1,26 @@
+SUMMARY = "A GObject library for Facebook Graph API"
+SECTION = "x11/gnome"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5804fe91d3294da4ac47c02b454bbc8a"
+
+DEPENDS = " \
+ glib-2.0 \
+ json-glib \
+ librest \
+ libsoup-2.4 \
+ gnome-online-accounts \
+"
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase gtk-doc gobject-introspection pkgconfig features_check
+
+# for gnome-online-accounts
+REQUIRED_DISTRO_FEATURES = "x11 opengl"
+
+#SRC_URI += " file://0001-Update-rest-requirement-to-rest-1.0.patch"
+SRC_URI[archive.sha256sum] = "9cb381b3f78ba1136df97af3f06e3b11dcc2ab339ac08f74eda0f8057d6603e3"
+
+do_install:append() {
+ # they install all the autotools files (NEWS AUTHORS..) to /usr/doc which
+ # is not a standard path exactly
+ rm -rf ${D}${prefix}/doc
+}
diff --git a/meta-gnome/recipes-gnome/ghex/ghex_46.0.bb b/meta-gnome/recipes-gnome/ghex/ghex_46.0.bb
new file mode 100644
index 0000000000..41d8391636
--- /dev/null
+++ b/meta-gnome/recipes-gnome/ghex/ghex_46.0.bb
@@ -0,0 +1,22 @@
+SUMMARY = "GHex - a hex editor for GNOME"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+
+DEPENDS = " \
+ desktop-file-utils-native \
+ glib-2.0-native \
+ gtk4 \
+ libadwaita \
+"
+
+GIR_MESON_ENABLE_FLAG = 'enabled'
+GIR_MESON_DISABLE_FLAG = 'disabled'
+
+inherit gnomebase gsettings gtk-icon-cache gnome-help gettext gobject-introspection vala gi-docgen
+
+SRC_URI[archive.sha256sum] = "a1c46f3020cb358b8323025db3a539c97d994a4c46f701f48edc6357f7fbcbd1"
+
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+FILES:${PN} += "${libdir} ${datadir}/metainfo"
diff --git a/meta-gnome/recipes-gnome/gjs/gjs/0001-Support-cross-builds-a-bit-better.patch b/meta-gnome/recipes-gnome/gjs/gjs/0001-Support-cross-builds-a-bit-better.patch
new file mode 100644
index 0000000000..12b4b08c7e
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gjs/gjs/0001-Support-cross-builds-a-bit-better.patch
@@ -0,0 +1,47 @@
+From 8a78a7996b01aba21377ceb7547da673fd30a391 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 c9b26d6..3058e8c 100644
+--- a/meson.build
++++ b/meson.build
+@@ -262,6 +262,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.
+@@ -292,6 +293,7 @@ elif minimal_program.returncode() != 0
+ failed to execute. Most likely you should build it with a different
+ configuration.''' + recommended_configuration)
+ endif
++endif # not meson.is_cross_build()
+
+ have_printf_alternative_int = cc.compiles('''
+ #include <stdio.h>
+@@ -690,7 +692,7 @@ subdir('installed-tests')
+
+ # 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
+
diff --git a/meta-gnome/recipes-gnome/gjs/gjs/0002-meson.build-Do-not-add-dir-installed-tests-when-inst.patch b/meta-gnome/recipes-gnome/gjs/gjs/0002-meson.build-Do-not-add-dir-installed-tests-when-inst.patch
new file mode 100644
index 0000000000..e932f06d27
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gjs/gjs/0002-meson.build-Do-not-add-dir-installed-tests-when-inst.patch
@@ -0,0 +1,35 @@
+From 29221ae42e424c6100b8c313d2b61801430c872d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller=20installed=5Ftests=20is=20false?=
+ <schnitzeltony@gmail.com>
+Date: Wed, 27 Oct 2021 20:04:02 +0200
+Subject: [PATCH] meson.build: Do not add dir installed-tests when
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+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 3058e8c..06cf8da 100644
+--- a/meson.build
++++ b/meson.build
+@@ -688,7 +688,9 @@ endif
+
+ ### Tests and test setups ######################################################
+
+-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.
diff --git a/meta-gnome/recipes-gnome/gjs/gjs_1.80.2.bb b/meta-gnome/recipes-gnome/gjs/gjs_1.80.2.bb
new file mode 100644
index 0000000000..1d781d078c
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gjs/gjs_1.80.2.bb
@@ -0,0 +1,39 @@
+SUMMARY = "Javascript bindings for GNOME"
+LICENSE = "MIT & LGPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8dcea832f6acf45d856abfeb2d51ec48"
+
+
+DEPENDS = "mozjs-115 cairo"
+
+inherit gnomebase gsettings gobject-introspection gettext features_check upstream-version-is-even pkgconfig
+
+SRC_URI[archive.sha256sum] = "135e39c5ac591096233e557cfe577d64093f5054411d47cb2e214bad7d4199bd"
+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 \
+ -Dskip_gtk_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-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.4.5.bb b/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.4.5.bb
new file mode 100644
index 0000000000..d7325888d6
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-autoar/gnome-autoar_0.4.5.bb
@@ -0,0 +1,20 @@
+SUMMARY = "GNOME archive library"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS = " \
+ gtk+3 \
+ libarchive \
+"
+
+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] = "838c5306fc38bfaa2f23abe24262f4bf15771e3303fb5dcb74f5b9c7a615dabe"
+
+do_compile:prepend() {
+ export GIR_EXTRA_LIBS_PATH="${B}/gnome-autoar/.libs"
+}
diff --git a/meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_46.0.bb b/meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_46.0.bb
new file mode 100644
index 0000000000..d938ae94cb
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_46.0.bb
@@ -0,0 +1,16 @@
+SUMMARY = "GNOME wallpapers"
+LICENSE = "CC-BY-SA-3.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b52fb0a6df395efb7047cb6fc56bfd7e"
+
+SECTION = "x11/gnome"
+
+inherit gnomebase gettext allarch
+
+SRC_URI[archive.sha256sum] = "4ddd3ac439a4a067876805921bb75f4d3c8b85a218d47c276dddde8928443c2e"
+
+FILES:${PN} += " \
+ ${datadir}/backgrounds \
+ ${datadir}/gnome-background-properties \
+"
+
+RDEPENDS:${PN} += "libjxl"
diff --git a/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth3/0001-build-Fix-build-for-newer-versions-of-meson.patch b/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth3/0001-build-Fix-build-for-newer-versions-of-meson.patch
new file mode 100644
index 0000000000..16c87b6a63
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth3/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-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth3_3.34.5.bb b/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth3_3.34.5.bb
new file mode 100644
index 0000000000..2a97263125
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth3_3.34.5.bb
@@ -0,0 +1,39 @@
+SUMMARY = "GNOME bluetooth manager"
+LICENSE = "GPL-2.0-only & LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
+ file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
+"
+
+SECTION = "x11/gnome"
+
+DEPENDS = "udev gtk+3 libnotify libcanberra bluez5"
+
+GNOMEBN = "gnome-bluetooth"
+S = "${WORKDIR}/${GNOMEBN}-${PV}"
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+inherit features_check gnomebase gtk-icon-cache gtk-doc gobject-introspection upstream-version-is-even
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+# 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"
+
+# avoid clashes with gnome-bluetooth
+do_install:append() {
+ # just bluetooth-sendto / bluetooth-sendto.desktop only
+ rm -rf ${D}${bindir}
+ rm -rf ${D}${datadir}/applications
+}
+
+FILES:${PN} += "${datadir}/gnome-bluetooth"
+
+# offer alternate bluetooth-sendto
+RRECOMMENS:${PN} += "gnome-bluetooth"
+
+RDEPENDS:${PN} += "bluez5"
diff --git a/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_3.32.1.bb b/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_3.32.1.bb
deleted file mode 100644
index 3c4438e7e7..0000000000
--- a/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_3.32.1.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-SUMMARY = "GNOME bluetooth manager"
-LICENSE = "GPLv2 & LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
- file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
-"
-
-SECTION = "x11/gnome"
-
-DEPENDS = "udev gtk+3 libnotify libcanberra bluez5"
-
-GNOMEBASEBUILDCLASS = "meson"
-GTKDOC_MESON_OPTION = "gtk_doc"
-
-inherit gnomebase gtk-icon-cache gtk-doc gobject-introspection upstream-version-is-even
-
-# gtk-icon-cache bbclass will take care of this for us.
-EXTRA_OEMESON = "-Dicon_update=false"
-
-SRC_URI[archive.md5sum] = "5b3d66f564a5067ea154750cdb6d850d"
-SRC_URI[archive.sha256sum] = "6441cafd313af94fba28b701698074f97d693b9023788a74e8e6f16f817ba1aa"
-
-RDEPENDS_${PN} += "bluez5"
diff --git a/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_46.1.bb b/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_46.1.bb
new file mode 100644
index 0000000000..980ff36782
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_46.1.bb
@@ -0,0 +1,43 @@
+SUMMARY = "GNOME bluetooth manager"
+LICENSE = "GPL-2.0-only & LGPL-2.1-only"
+LIC_FILES_CHKSUM = " \
+ file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
+ file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
+"
+
+SECTION = "x11/gnome"
+
+DEPENDS = " \
+ udev \
+ libnotify \
+ libcanberra \
+ bluez5 \
+ upower \
+ gtk4 \
+ gsound \
+ libadwaita \
+"
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+GTKIC_VERSION = "4"
+
+inherit features_check gnomebase gtk-icon-cache gtk-doc gobject-introspection
+
+REQUIRED_DISTRO_FEATURES = "x11 opengl"
+
+SRC_URI[archive.sha256sum] = "56c44a17034598e9607458afae1be75f3de5efdf0e62355f09ba58fc7bc312ac"
+
+BT_PULSE_PACKS = " \
+ pulseaudio-lib-bluez5-util \
+ pulseaudio-module-bluetooth-discover \
+ pulseaudio-module-bluetooth-policy \
+ pulseaudio-module-bluez5-device \
+ pulseaudio-module-bluez5-discover \
+"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio', d)}"
+PACKAGECONFIG[pulseaudio] = ",,,${BT_PULSE_PACKS}"
+
+FILES:${PN} += "${datadir}/gnome-bluetooth-3.0"
+
+RDEPENDS:${PN} += "bluez5"
diff --git a/meta-gnome/recipes-gnome/gnome-calculator/gnome-calculator_46.1.bb b/meta-gnome/recipes-gnome/gnome-calculator/gnome-calculator_46.1.bb
new file mode 100644
index 0000000000..f1a93ea833
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-calculator/gnome-calculator_46.1.bb
@@ -0,0 +1,38 @@
+SUMMARY = "GNOME calculator"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+SECTION = "x11/gnome"
+
+DEPENDS = " \
+ yelp-tools-native \
+ gtk4 \
+ libsoup-3.0 \
+ libgee \
+ libxml2 \
+ libmpc \
+ gtksourceview5 \
+ libadwaita \
+"
+
+GIR_MESON_OPTION = 'disable-introspection'
+GIR_MESON_ENABLE_FLAG = 'false'
+GIR_MESON_DISABLE_FLAG = 'true'
+VALA_MESON_OPTION = ''
+
+GTKIC_VERSION = '4'
+
+inherit gnomebase gobject-introspection gnome-help vala gtk-icon-cache gettext features_check
+
+def gnome_verdir(v):
+ return oe.utils.trim_version(v, 1)
+
+REQUIRED_DISTRO_FEATURES = "x11 opengl"
+
+SRC_URI[archive.sha256sum] = "2d36750a73890086122cf3f0c83e68517891585615165306fa1596a918668247"
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/metainfo \
+ ${datadir}/gnome-shell \
+"
diff --git a/meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar_46.1.bb b/meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar_46.1.bb
new file mode 100644
index 0000000000..eac768c8f5
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-calendar/gnome-calendar_46.1.bb
@@ -0,0 +1,37 @@
+SUMMARY = "GNOME calendar"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a"
+
+SECTION = "x11/gnome"
+
+DEPENDS = " \
+ gtk4 \
+ libical \
+ gsettings-desktop-schemas \
+ evolution-data-server \
+ libsoup \
+ libdazzle \
+ libadwaita \
+ libgweather4 \
+ geoclue \
+ geocode-glib \
+"
+
+GTKIC_VERSION = '4'
+inherit gnomebase gsettings gtk-icon-cache gettext features_check upstream-version-is-even mime-xdg
+
+REQUIRED_DISTRO_FEATURES = "x11 opengl"
+
+SRC_URI[archive.sha256sum] = "9861ff7b8abd5b7b20690ba55eb7542c7ec534b566269e29b5b1e858c1610897"
+
+do_install:prepend() {
+ sed -i -e 's|${S}/src|${TARGET_DBGSRC_DIR}/src|g' ${B}/src/gcal-enum-types.h
+ sed -i -e 's|${S}/src|${TARGET_DBGSRC_DIR}/src|g' ${B}/src/gcal-enum-types.c
+}
+
+FILES:${PN} += " \
+ ${datadir}/gnome-shell \
+ ${datadir}/metainfo \
+ ${datadir}/dbus-1 \
+"
+
diff --git a/meta-gnome/recipes-gnome/gnome-chess/gnome-chess_46.0.bb b/meta-gnome/recipes-gnome/gnome-chess/gnome-chess_46.0.bb
new file mode 100644
index 0000000000..bb53b58df7
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-chess/gnome-chess_46.0.bb
@@ -0,0 +1,34 @@
+SUMMARY = "GNOME Chess is a 2D chess game, where games can be played between a combination of human and computer players."
+HOMEPAGE = "https://wiki.gnome.org/Apps/Chess"
+LICENSE = "GPL-3.0-only"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+REQUIRED_DISTRO_FEATURES = "gobject-introspection-data opengl"
+
+GTKIC_VERSION = "4"
+
+DEPENDS = " \
+ appstream-glib-native \
+ cairo \
+ desktop-file-utils-native \
+ glib-2.0 \
+ glib-2.0 \
+ gtk4 \
+ libadwaita \
+ librsvg \
+ pango \
+"
+
+RRECOMMENDS:${PN} = "gnuchess"
+
+SRC_URI = "git://github.com/GNOME/gnome-chess.git;protocol=https;branch=master"
+
+inherit meson pkgconfig gobject-introspection gtk-icon-cache vala features_check mime-xdg gsettings
+
+GIR_MESON_OPTION = ""
+
+S = "${WORKDIR}/git"
+SRCREV = "c3625ee59ab3acfd7566ef04300b15ddbadaaac3"
+
+FILES:${PN} += "${datadir}"
diff --git a/meta-gnome/recipes-gnome/gnome-chess/gnuchess/0001-Remove-register-storage-class-classifier.patch b/meta-gnome/recipes-gnome/gnome-chess/gnuchess/0001-Remove-register-storage-class-classifier.patch
new file mode 100644
index 0000000000..69237fd57a
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-chess/gnuchess/0001-Remove-register-storage-class-classifier.patch
@@ -0,0 +1,149 @@
+From 321eb9b1ca1b230063259dc43be8a2ab2f3bfee9 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 17 Jan 2023 22:16:36 -0800
+Subject: [PATCH] Remove 'register' storage class classifier
+
+This is gone with c++17
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/frontend/atak.cc | 4 ++--
+ src/frontend/lexpgn.cc | 34 +++++++++++++++++-----------------
+ src/frontend/util.cc | 2 +-
+ 3 files changed, 20 insertions(+), 20 deletions(-)
+
+diff --git a/src/frontend/atak.cc b/src/frontend/atak.cc
+index ef19d87..640e150 100644
+--- a/src/frontend/atak.cc
++++ b/src/frontend/atak.cc
+@@ -37,7 +37,7 @@ short SqAtakd (short sq, short side)
+ *
+ **************************************************************************/
+ {
+- register BitBoard *a, b, *c, d, blocker;
++ BitBoard *a, b, *c, d, blocker;
+ int t;
+
+ a = board.b[side];
+@@ -89,7 +89,7 @@ BitBoard AttackTo (int sq, int side)
+ *
+ ***************************************************************************/
+ {
+- register BitBoard *a, b, *c, e, blocker;
++ BitBoard *a, b, *c, e, blocker;
+ int t;
+
+ a = board.b[side];
+diff --git a/src/frontend/lexpgn.cc b/src/frontend/lexpgn.cc
+index 475899d..971aa13 100644
+--- a/src/frontend/lexpgn.cc
++++ b/src/frontend/lexpgn.cc
+@@ -2431,9 +2431,9 @@ extern int yylex (void);
+ */
+ YY_DECL
+ {
+- register yy_state_type yy_current_state;
+- register char *yy_cp, *yy_bp;
+- register int yy_act;
++ yy_state_type yy_current_state;
++ char *yy_cp, *yy_bp;
++ int yy_act;
+
+ #line 153 "lexpgn.ll"
+
+@@ -3118,9 +3118,9 @@ case YY_STATE_EOF(RAV):
+ */
+ static int yy_get_next_buffer (void)
+ {
+- register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
+- register char *source = (yytext_ptr);
+- register int number_to_move, i;
++ char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
++ char *source = (yytext_ptr);
++ int number_to_move, i;
+ int ret_val;
+
+ if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
+@@ -3252,8 +3252,8 @@ static int yy_get_next_buffer (void)
+
+ static yy_state_type yy_get_previous_state (void)
+ {
+- register yy_state_type yy_current_state;
+- register char *yy_cp;
++ yy_state_type yy_current_state;
++ char *yy_cp;
+
+ yy_current_state = (yy_start);
+ yy_current_state += YY_AT_BOL();
+@@ -3278,8 +3278,8 @@ static int yy_get_next_buffer (void)
+ */
+ static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
+ {
+- register int yy_is_jam;
+- register char *yy_cp = (yy_c_buf_p);
++ int yy_is_jam;
++ char *yy_cp = (yy_c_buf_p);
+
+ yy_current_state = yy_nxt[yy_current_state][1];
+ yy_is_jam = (yy_current_state <= 0);
+@@ -3296,9 +3296,9 @@ static int yy_get_next_buffer (void)
+ return yy_is_jam ? 0 : yy_current_state;
+ }
+
+- static void yyunput (int c, register char * yy_bp )
++ static void yyunput (int c, char * yy_bp )
+ {
+- register char *yy_cp;
++ char *yy_cp;
+
+ yy_cp = (yy_c_buf_p);
+
+@@ -3308,10 +3308,10 @@ static int yy_get_next_buffer (void)
+ if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
+ { /* need to shift things up to make room */
+ /* +2 for EOB chars. */
+- register yy_size_t number_to_move = (yy_n_chars) + 2;
+- register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
++ yy_size_t number_to_move = (yy_n_chars) + 2;
++ char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
+ YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
+- register char *source =
++ char *source =
+ &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
+
+ while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
+@@ -3925,7 +3925,7 @@ int yylex_destroy (void)
+ #ifndef yytext_ptr
+ static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
+ {
+- register int i;
++ int i;
+ for ( i = 0; i < n; ++i )
+ s1[i] = s2[i];
+ }
+@@ -3934,7 +3934,7 @@ static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
+ #ifdef YY_NEED_STRLEN
+ static int yy_flex_strlen (yyconst char * s )
+ {
+- register int n;
++ int n;
+ for ( n = 0; s[n]; ++n )
+ ;
+
+diff --git a/src/frontend/util.cc b/src/frontend/util.cc
+index 5d3efe2..f7f7f1d 100644
+--- a/src/frontend/util.cc
++++ b/src/frontend/util.cc
+@@ -75,7 +75,7 @@ void UpdateFriends (void)
+ *
+ ***************************************************************************/
+ {
+- register BitBoard *w, *b;
++ BitBoard *w, *b;
+
+ w = board.b[white];
+ b = board.b[black];
+--
+2.39.1
+
diff --git a/meta-gnome/recipes-gnome/gnome-chess/gnuchess_6.2.9.bb b/meta-gnome/recipes-gnome/gnome-chess/gnuchess_6.2.9.bb
new file mode 100644
index 0000000000..78606b8a2a
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-chess/gnuchess_6.2.9.bb
@@ -0,0 +1,20 @@
+SUMMARY = "GNU Chess is a chess-playing program."
+HOMEPAGE = "http://www.gnu.org/software/chess/"
+LICENSE = "GPL-3.0-only"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+SRC_URI = "https://git.savannah.gnu.org/cgit/chess.git/snapshot/chess-${PV}.tar.gz \
+ file://0001-Remove-register-storage-class-classifier.patch"
+SRC_URI[sha256sum] = "03f9e844ccdd48d20ee49314174404f8b643d83bb8ce9ec9d2e6a21f1b6fb9f5"
+
+S = "${WORKDIR}/chess-${PV}"
+
+inherit autotools gettext
+
+do_configure:prepend() {
+ touch ${S}/ABOUT-NLS
+ touch ${S}/man/gnuchess.1
+}
+
+FILES:${PN} += "${datadir}"
diff --git a/meta-gnome/recipes-gnome/gnome-commander/gnome-commander/0001-Build-fix-needed-with-taglib-2.0.patch b/meta-gnome/recipes-gnome/gnome-commander/gnome-commander/0001-Build-fix-needed-with-taglib-2.0.patch
new file mode 100644
index 0000000000..8f6920c2cc
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-commander/gnome-commander/0001-Build-fix-needed-with-taglib-2.0.patch
@@ -0,0 +1,37 @@
+From dc3aa0ff5a41114b17816f1f36f6bb5631c6ab5c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 7 Mar 2024 17:17:29 -0800
+Subject: [PATCH] Build fix needed with taglib 2.0
+
+Fixes
+| ../gnome-commander-1.16.1/src/tags/gnome-cmd-tags-taglib.cc:153:29: error: no member named 'sampleWidth' in 'TagLib::FLAC::Properties'
+| 153 | if (flacProperties->sampleWidth())
+| | ~~~~~~~~~~~~~~ ^
+| ../gnome-commander-1.16.1/src/tags/gnome-cmd-tags-taglib.cc:154:67: error: no member named 'sampleWidth' in 'TagLib::FLAC::Properties'
+| 154 | cout << "Audio.FLAC.SampleWidth " << flacProperties->sampleWidth()<< endl;
+| | ~~~~~~~~~~~~~~ ^
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/tags/gnome-cmd-tags-taglib.cc | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/tags/gnome-cmd-tags-taglib.cc b/src/tags/gnome-cmd-tags-taglib.cc
+index 9e65836..573f5eb 100644
+--- a/src/tags/gnome-cmd-tags-taglib.cc
++++ b/src/tags/gnome-cmd-tags-taglib.cc
+@@ -150,8 +150,8 @@ bool getAudioProperties(GnomeCmdFileMetadata &metadata, const TagLib::AudioPrope
+ if (flacProperties)
+ {
+ metadata.add(TAG_AUDIO_CODEC,"FLAC");
+- if (flacProperties->sampleWidth())
+- cout << "Audio.FLAC.SampleWidth " << flacProperties->sampleWidth()<< endl;
++ if (flacProperties->bitsPerSample())
++ cout << "Audio.FLAC.BitsPerSample " << flacProperties->bitsPerSample()<< endl;
+
+ return true;
+ }
+--
+2.44.0
+
diff --git a/meta-gnome/recipes-gnome/gnome-commander/gnome-commander_1.16.1.bb b/meta-gnome/recipes-gnome/gnome-commander/gnome-commander_1.16.1.bb
new file mode 100644
index 0000000000..bb36d59e56
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-commander/gnome-commander_1.16.1.bb
@@ -0,0 +1,31 @@
+SUMMARY = "A light and fast file manager"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+DEPENDS += " \
+ desktop-file-utils-native \
+ glib-2.0-native \
+ gtk+ \
+"
+
+CXXFLAGS += "-D_LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR"
+
+inherit gnomebase itstool gettext gnome-help features_check meson gtk-icon-cache mime-xdg
+ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}"
+
+GIR_MESON_ENABLE_FLAG = 'enabled'
+GIR_MESON_DISABLE_FLAG = 'disabled'
+
+SRC_URI += "file://0001-Build-fix-needed-with-taglib-2.0.patch"
+SRC_URI[archive.sha256sum] = "3f1d00c4a650fe7902167648286b32c9ca4ef86e31a5d8ccca0139f12d10d0b3"
+
+PACKAGECONFIG ??= "exiv2 taglib libgsf poppler"
+PACKAGECONFIG[exiv2] = "-Dexiv2=enabled,-Dexiv2=disabled,exiv2"
+PACKAGECONFIG[taglib] = "-Dtaglib=enabled,-Dtaglib=disabled,taglib"
+PACKAGECONFIG[libgsf] = "-Dlibgsf=enabled,-Dlibgsf=disabled,libgsf"
+PACKAGECONFIG[poppler] = "-Dpoppler=enabled,-Dpoppler=disabled,poppler"
+PACKAGECONFIG[samba] = "-Dsamba=enabled,-Dsamba=disabled,samba"
+PACKAGECONFIG[tests] = "-Dtests=enabled,-Dtests=disabled,"
+
+FILES:${PN} += "${datadir}/metainfo"
+FILES:${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV}"
diff --git a/meta-gnome/recipes-gnome/gnome-console/gnome-console_45.0.bb b/meta-gnome/recipes-gnome/gnome-console/gnome-console_45.0.bb
new file mode 100644
index 0000000000..d03b5fe04d
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-console/gnome-console_45.0.bb
@@ -0,0 +1,27 @@
+SUMMARY = "GNOME Console"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a"
+
+GTKIC_VERSION = "4"
+inherit gnomebase gsettings pkgconfig gtk-icon-cache
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+DEPENDS = " \
+ desktop-file-utils-native \
+ gtk4-native \
+ glib-2.0 \
+ gsettings-desktop-schemas \
+ hicolor-icon-theme \
+ libadwaita \
+ libgtop \
+ pcre2 \
+ vte \
+"
+
+SRC_URI[archive.sha256sum] = "e7462128d2df2324a1d748062c40429cd0504af09e407067b33f3a9d0c59c8e1"
+
+PACKAGECONFIG ?= ""
+PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false"
+PACKAGECONFIG[devel] = "-Ddevel=true,-Ddevel=false"
+
+FILES:${PN} += "${datadir}"
diff --git a/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center/0001-Add-meson-option-to-pass-sysroot.patch b/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center/0001-Add-meson-option-to-pass-sysroot.patch
new file mode 100644
index 0000000000..c1bd34d14b
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center/0001-Add-meson-option-to-pass-sysroot.patch
@@ -0,0 +1,49 @@
+From 9b88f816ffbe3dd35d0260974e246f6694983500 Mon Sep 17 00:00:00 2001
+From: Markus Volk <f_l_k@t-online.de>
+Date: Mon, 18 Mar 2024 05:50:21 +0100
+Subject: [PATCH] Add meson option to pass sysroot
+
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+
+Upstream-Status: Inappropriate [OE specific]
+---
+ meson_options.txt | 1 +
+ panels/background/meson.build | 2 +-
+ panels/system/meson.build | 2 +-
+ 3 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/meson_options.txt b/meson_options.txt
+index b2302bf..5b9baf5 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,3 +1,4 @@
++option('oe_sysroot', type: 'string', value: '', description: 'Directory for OE-sysroot')
+ option('deprecated-declarations', type: 'feature', value: 'disabled', description: 'build with deprecated declaration warnings')
+ option('documentation', type: 'boolean', value: false, description: 'build documentation')
+ option('location-services', type: 'feature', value: 'enabled', description: 'build with location services')
+diff --git a/panels/background/meson.build b/panels/background/meson.build
+index 6ced050..df1f808 100644
+--- a/panels/background/meson.build
++++ b/panels/background/meson.build
+@@ -24,7 +24,7 @@ common_sources += gnome.mkenums_simple(
+
+ enums = 'gdesktop-enums-types'
+ enums_header = files(
+- gsettings_desktop_dep.get_variable(pkgconfig: 'prefix') + '/include/gsettings-desktop-schemas/gdesktop-enums.h'
++ get_option('oe_sysroot') + gsettings_desktop_dep.get_variable(pkgconfig: 'prefix') + '/include/gsettings-desktop-schemas/gdesktop-enums.h'
+ )
+
+ common_sources += gnome.mkenums(
+diff --git a/panels/system/meson.build b/panels/system/meson.build
+index 4fee822..979332a 100644
+--- a/panels/system/meson.build
++++ b/panels/system/meson.build
+@@ -73,7 +73,7 @@ sources += gnome.compile_resources(
+ )
+
+ enums_header = files(
+- gsettings_desktop_dep.get_variable(pkgconfig: 'prefix') + '/include/gsettings-desktop-schemas/gdesktop-enums.h',
++ get_option('oe_sysroot') + gsettings_desktop_dep.get_variable(pkgconfig: 'prefix') + '/include/gsettings-desktop-schemas/gdesktop-enums.h',
+ 'datetime/cc-datetime-page.h'
+ )
+
diff --git a/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_46.2.bb b/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_46.2.bb
new file mode 100644
index 0000000000..ae96caf94f
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_46.2.bb
@@ -0,0 +1,65 @@
+SUMMARY = "GNOME Settings"
+DESCRIPTION = "GNOME Settings is GNOME's main interface for configuration of various aspects of your desktop"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=75859989545e37968a99b631ef42722e"
+
+GTKIC_VERSION = "4"
+
+DEPENDS = " \
+ accountsservice \
+ colord-gtk \
+ gcr \
+ gdk-pixbuf \
+ glib-2.0 \
+ gnome-bluetooth \
+ gnome-desktop \
+ gnome-online-accounts \
+ gnome-settings-daemon \
+ gsettings-desktop-schemas \
+ gtk4 \
+ libadwaita \
+ libepoxy \
+ libgtop \
+ libgudev \
+ libnma \
+ libpwquality \
+ libxml2 \
+ polkit \
+ pulseaudio \
+ samba \
+ setxkbmap-native \
+ tecla \
+ udisks2 \
+ upower \
+"
+
+inherit gtk-icon-cache pkgconfig gnomebase gsettings gettext upstream-version-is-even bash-completion features_check
+
+REQUIRED_DISTRO_FEATURES += "opengl polkit pulseaudio systemd x11"
+
+SRC_URI += "file://0001-Add-meson-option-to-pass-sysroot.patch"
+SRC_URI[archive.sha256sum] = "6335c6cb8164e574db521fff61cfa3dfaa55f1db66ae3bca02750a193e1c4f3d"
+
+PACKAGECONFIG ??= "ibus ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)}"
+PACKAGECONFIG[cups] = ",,cups,cups system-config-printer cups-pk-helper"
+PACKAGECONFIG[ibus] = "-Dibus=true, -Dibus=false, ibus"
+PACKAGECONFIG[wayland] = "-Dwayland=true, -Dwayland=false, wayland"
+PACKAGECONFIG[file-share] = ",,,gnome-user-share"
+PACKAGECONFIG[media-share] = ",,,rygel-meta tumbler"
+PACKAGECONFIG[malcontent] = "-Dmalcontent=true,-Dmalcontent=false,malcontent,malcontent-ui"
+
+EXTRA_OEMESON += "-Doe_sysroot=${STAGING_DIR_HOST}"
+
+export XDG_DATA_DIRS = "${STAGING_DATADIR}"
+
+PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src"
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/gnome-shell \
+ ${datadir}/metainfo \
+"
+
+FILES:${PN}-dev += "${datadir}/gettext"
+
+RDEPENDS:${PN} += "gsettings-desktop-schemas tecla"
diff --git a/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop/0001-meson-Add-riscv32-to-seccomp-unsupported-list.patch b/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop/0001-meson-Add-riscv32-to-seccomp-unsupported-list.patch
new file mode 100644
index 0000000000..65e06dafcb
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop/0001-meson-Add-riscv32-to-seccomp-unsupported-list.patch
@@ -0,0 +1,29 @@
+From 6937685426aff8059b68b2941a0fe549eca21ce5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 3 Mar 2023 23:04:56 -0800
+Subject: [PATCH] meson: Add riscv32 to seccomp unsupported list
+
+rv32 needs to upstream the libseccomp support
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 6a888b8..a87c419 100644
+--- a/meson.build
++++ b/meson.build
+@@ -65,7 +65,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', 'sh4', 'sparc', 'sparc64']
++unsupported_cpus = ['alpha', 'ia64', 'm68k', 'riscv32', 'sh4', 'sparc', 'sparc64']
+ if supported_os.contains(host_os) and not unsupported_cpus.contains(host_cpu)
+ seccomp_dep = dependency('libseccomp')
+ else
+--
+2.39.2
+
diff --git a/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop/0001-meson.build-Disable-libseccomp-for-all-archs.patch b/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop/0001-meson.build-Disable-libseccomp-for-all-archs.patch
deleted file mode 100644
index e93d5b674c..0000000000
--- a/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop/0001-meson.build-Disable-libseccomp-for-all-archs.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From de0d33b068a5d8e61cc0c82d88d15b9a8aa97977 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Sat, 6 Apr 2019 18:07:17 +0200
-Subject: [PATCH] meson.build: Disable libseccomp for all archs
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-It does not seem mandatory and can cause unsatisfied dependency [1].
-
-[1] https://errors.yoctoproject.org/Errors/Details/235565/
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
----
- meson.build | 7 +------
- 1 file changed, 1 insertion(+), 6 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 83407b4..80eab84 100644
---- a/meson.build
-+++ b/meson.build
-@@ -53,12 +53,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', 'sh4', 'sparc', 'sparc64']
--if supported_os.contains(host_os) and not unsupported_cpus.contains(host_cpu)
-- seccomp_dep = dependency('libseccomp')
--else
-- seccomp_dep = dependency('', required: false)
--endif
-+seccomp_dep = dependency('', required: false)
- fontconfig_cache_path = fontconfig_dep.get_pkgconfig_variable('cachedir')
-
- xkb_base = xkb_config_dep.get_pkgconfig_variable('xkb_base')
---
-2.20.1
-
diff --git a/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.34.0.bb b/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.34.0.bb
deleted file mode 100644
index 77aa3fb615..0000000000
--- a/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.34.0.bb
+++ /dev/null
@@ -1,36 +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 pkgconfig upstream-version-is-even gobject-introspection distro_features_check
-
-# gobject-introspection is mandatory and cannot be configured
-REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
-UNKNOWN_CONFIGURE_WHITELIST_append = " introspection"
-
-SRC_URI[archive.md5sum] = "3149bbd12eaf6f4420b1a999131ec470"
-SRC_URI[archive.sha256sum] = "8d331ee655c1d56b2b97562a07c7a7598ff6706a11ff1cdce97423ebc6b62426"
-
-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 += "itstool-native gsettings-desktop-schemas virtual/libx11 gtk+3 startup-notification xkeyboard-config iso-codes udev"
-
-inherit distro_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-gnome/recipes-gnome/gnome-desktop/gnome-desktop_44.0.bb b/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_44.0.bb
new file mode 100644
index 0000000000..19bae74ce2
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_44.0.bb
@@ -0,0 +1,48 @@
+SUMMARY = "GNOME library for reading .desktop files"
+SECTION = "x11/gnome"
+LICENSE = "GPL-2.0-only & LGPL-2.0-only"
+LIC_FILES_CHKSUM = " \
+ file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://COPYING.LIB;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
+"
+
+
+inherit gnomebase itstool pkgconfig upstream-version-is-even gobject-introspection features_check gtk-doc
+
+REQUIRED_DISTRO_FEATURES = "x11 opengl"
+
+GIR_MESON_OPTION = ""
+
+SRC_URI += "file://gnome-desktop-thumbnail-don-t-assume-time_t-is-long.patch \
+ file://0001-meson-Add-riscv32-to-seccomp-unsupported-list.patch"
+SRC_URI[archive.sha256sum] = "42c773745d84ba14bc1cf1c4c6f4606148803a5cd337941c63964795f3c59d42"
+
+DEPENDS += " \
+ fontconfig \
+ gdk-pixbuf \
+ glib-2.0 \
+ gsettings-desktop-schemas \
+ gtk+3 \
+ gtk4 \
+ iso-codes \
+ xext \
+ libseccomp \
+ libxkbcommon \
+ xkeyboard-config \
+ xrandr \
+"
+
+DEPENDS:remove:riscv32 = "libseccomp"
+
+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-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0001-gnome-disk-utility-remove-libcanberra-dependency.patch b/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0001-gnome-disk-utility-remove-libcanberra-dependency.patch
new file mode 100644
index 0000000000..675f4635ba
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0001-gnome-disk-utility-remove-libcanberra-dependency.patch
@@ -0,0 +1,135 @@
+From 36cbdd82f21e4ef37da9f05c1c5e770b6cd66df2 Mon Sep 17 00:00:00 2001
+From: Markus Volk <f_l_k@t-online.de>
+Date: Sun, 29 May 2022 06:35:26 +0200
+Subject: [PATCH] gnome-disk-utility: remove libcanberra dependency
+
+libcanberra-gtk3 module isn't buildable for wayland.
+Remove its dpendency.
+
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+
+Upstream-Status: Inappropriate
+---
+ meson.build | 1 -
+ src/disks/gducreatediskimagedialog.c | 27 ++-------------------------
+ src/disks/gdurestorediskimagedialog.c | 20 +-------------------
+ src/disks/meson.build | 1 -
+ 4 files changed, 3 insertions(+), 46 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 0daf7f82..cba6c74b 100644
+--- a/meson.build
++++ b/meson.build
+@@ -72,7 +72,6 @@ dvdread_dep = dependency('dvdread', version: '>= 4.2.0')
+ gio_unix_dep = dependency('gio-unix-2.0', version: '>= 2.31.0')
+ gmodule_dep = dependency('gmodule-2.0')
+ gtk_dep = dependency('gtk+-3.0', version: '>= 3.16.0')
+-libcanberra_dep = dependency('libcanberra-gtk3', version: '>= 0.1')
+ # Keep the version here synchronised with subprojects/libhandy.wrap
+ libhandy_dep = dependency('libhandy-1', version: '>= 1.5.0', fallback: ['libhandy', 'libhandy_dep'])
+ liblzma_dep = dependency('liblzma', version: '>= 5.0.5')
+diff --git a/src/disks/gducreatediskimagedialog.c b/src/disks/gducreatediskimagedialog.c
+index 181b2892..a22004cf 100644
+--- a/src/disks/gducreatediskimagedialog.c
++++ b/src/disks/gducreatediskimagedialog.c
+@@ -21,8 +21,6 @@
+ #include <sys/ioctl.h>
+ #include <linux/fs.h>
+
+-#include <canberra-gtk.h>
+-
+ #include "gduapplication.h"
+ #include "gduwindow.h"
+ #include "gducreatediskimagedialog.h"
+@@ -297,19 +295,7 @@ create_disk_image_populate (DialogData *data)
+
+ static void
+ play_read_error_sound (DialogData *data)
+-{
+- const gchar *sound_message;
+-
+- /* Translators: A descriptive string for the sound played when
+- * there's a read error that's being ignored, see
+- * CA_PROP_EVENT_DESCRIPTION
+- */
+- sound_message = _("Disk image read error");
+- ca_gtk_play_for_widget (GTK_WIDGET (data->window), 0,
+- CA_PROP_EVENT_ID, "dialog-warning",
+- CA_PROP_EVENT_DESCRIPTION, sound_message,
+- NULL);
+-}
++{}
+
+ /* ---------------------------------------------------------------------------------------------------- */
+
+@@ -403,16 +389,7 @@ update_job (DialogData *data,
+
+ static void
+ play_complete_sound (DialogData *data)
+-{
+- const gchar *sound_message;
+-
+- /* Translators: A descriptive string for the 'complete' sound, see CA_PROP_EVENT_DESCRIPTION */
+- sound_message = _("Disk image copying complete");
+- ca_gtk_play_for_widget (GTK_WIDGET (data->window), 0,
+- CA_PROP_EVENT_ID, "complete",
+- CA_PROP_EVENT_DESCRIPTION, sound_message,
+- NULL);
+-}
++{}
+
+ /* ---------------------------------------------------------------------------------------------------- */
+
+diff --git a/src/disks/gdurestorediskimagedialog.c b/src/disks/gdurestorediskimagedialog.c
+index bccf97e9..e7ec81cb 100644
+--- a/src/disks/gdurestorediskimagedialog.c
++++ b/src/disks/gdurestorediskimagedialog.c
+@@ -17,8 +17,6 @@
+ #include <sys/ioctl.h>
+ #include <linux/fs.h>
+
+-#include <canberra-gtk.h>
+-
+ #include "gduapplication.h"
+ #include "gduwindow.h"
+ #include "gdurestorediskimagedialog.h"
+@@ -606,23 +604,7 @@ update_job (DialogData *data,
+
+ static void
+ play_complete_sound (DialogData *data)
+-{
+- const gchar *sound_message;
+-
+- /* Translators: A descriptive string for the 'complete' sound, see CA_PROP_EVENT_DESCRIPTION */
+- sound_message = _("Disk image copying complete");
+- ca_gtk_play_for_widget (GTK_WIDGET (data->dialog), 0,
+- CA_PROP_EVENT_ID, "complete",
+- CA_PROP_EVENT_DESCRIPTION, sound_message,
+- NULL);
+-
+- if (data->inhibit_cookie > 0)
+- {
+- gtk_application_uninhibit (GTK_APPLICATION (gdu_window_get_application (data->window)),
+- data->inhibit_cookie);
+- data->inhibit_cookie = 0;
+- }
+-}
++{}
+
+ /* ---------------------------------------------------------------------------------------------------- */
+
+diff --git a/src/disks/meson.build b/src/disks/meson.build
+index 35b2f103..6fc367b4 100644
+--- a/src/disks/meson.build
++++ b/src/disks/meson.build
+@@ -85,7 +85,6 @@ deps = [
+ dvdread_dep,
+ gio_unix_dep,
+ gmodule_dep,
+- libcanberra_dep,
+ libgdu_dep,
+ libhandy_dep,
+ liblzma_dep,
+--
+2.25.1
+
diff --git a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_46.1.bb b/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_46.1.bb
new file mode 100644
index 0000000000..6f910c4c13
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_46.1.bb
@@ -0,0 +1,41 @@
+SUMMARY = "GNOME disk utility"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SECTION = "x11/gnome"
+
+DEPENDS = " \
+ desktop-file-utils-native \
+ gtk+3 \
+ libdvdread \
+ libnotify \
+ libsecret \
+ libpwquality \
+ udisks2 \
+ libhandy \
+ xz \
+"
+
+
+inherit gnomebase gsettings gtk-icon-cache gettext features_check mime-xdg
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+REQUIRED_DISTRO_FEATURES = "polkit"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd x11', d)}"
+
+# As soon as elogind is of interest this needs rework: meson option is combo
+PACKAGECONFIG[systemd] = "-Dlogind=libsystemd,-Dlogind=none,systemd"
+PACKAGECONFIG[x11] = ",,libcanberra"
+
+SRC_URI:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'file://0001-gnome-disk-utility-remove-libcanberra-dependency.patch', '', d)}"
+SRC_URI[archive.sha256sum] = "c24e9439a04d70bcfae349ca134c7005435fe2b6f452114df878bff0b89bbffe"
+
+EXTRA_OEMESON = "-Dman=false"
+
+PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src"
+
+FILES:${PN} += " \
+ ${datadir}/metainfo \
+ ${datadir}/dbus-1 \
+"
diff --git a/meta-gnome/recipes-gnome/gnome-flashback/gnome-flashback_3.46.0.bb b/meta-gnome/recipes-gnome/gnome-flashback/gnome-flashback_3.46.0.bb
new file mode 100644
index 0000000000..cf1122714f
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-flashback/gnome-flashback_3.46.0.bb
@@ -0,0 +1,39 @@
+SUMMARY = "GNOME Flashback (GNOME 2) session"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase gsettings gtk-icon-cache gettext upstream-version-is-even features_check
+
+REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam"
+
+DEPENDS += " \
+ upower \
+ ibus \
+ libxkbfile \
+ polkit \
+ metacity \
+ gdm \
+ gnome-desktop \
+ gnome-bluetooth \
+ gnome-panel \
+"
+
+SRC_URI[archive.sha256sum] = "7a8d5c03310e4dfadd18a65e00a37741032afeea5418dd6804a975c4b0980045"
+
+do_install:append() {
+ # no oe-layer has compiz -> remove dead session
+ rm -f ${D}${datadir}/xsessions/gnome-flashback-compiz.desktop
+}
+
+FILES:${PN} += " \
+ ${datadir}/desktop-directories \
+ ${datadir}/gnome-control-center \
+ ${datadir}/gnome-panel \
+ ${datadir}/gnome-session \
+ ${datadir}/xsessions \
+ ${libdir}/gnome-panel \
+ ${systemd_user_unitdir} \
+"
+
+RDEPENDS:${PN} += "metacity"
diff --git a/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer/0001-window-Fix-function-callback-definition.patch b/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer/0001-window-Fix-function-callback-definition.patch
new file mode 100644
index 0000000000..be4c002fc3
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer/0001-window-Fix-function-callback-definition.patch
@@ -0,0 +1,43 @@
+From ac4a07e7ef3d9d046a4ca2a803c5b649b6f7ddf4 Mon Sep 17 00:00:00 2001
+From: Matt Turner <mattst88@gmail.com>
+Date: Sat, 8 Jul 2023 00:01:07 -0400
+Subject: [PATCH] window: Fix function callback definition
+
+Without this, the build fails with clang with
+CFLAGS=-Werror=incompatible-function-pointer-types
+
+```
+../src/font-view-window.c:864:77: error: incompatible function pointer types passing 'void (FontViewWindow *)' (aka 'void (struct _FontViewWindow *)') to parameter of type 'GtkWidgetActionActivateFunc' (aka 'void (*)(struct _GtkWidget *, const char *, struct _GVariant *)') [-Wincompatible-function-pointer-types]
+ gtk_widget_class_install_action (widget_class, "win.toggle-search", NULL, action_toggle_search_cb);
+ ^~~~~~~~~~~~~~~~~~~~~~~
+/usr/include/gtk-4.0/gtk/gtkwidget.h:956:87: note: passing argument to parameter 'activate' here
+ GtkWidgetActionActivateFunc activate);
+ ^
+```
+
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gnome-font-viewer/-/merge_requests/54]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/font-view-window.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/src/font-view-window.c b/src/font-view-window.c
+index 639ac33..24461f7 100644
+--- a/src/font-view-window.c
++++ b/src/font-view-window.c
+@@ -758,8 +758,11 @@ font_view_window_show_overview (FontViewWindow *self)
+ }
+
+ static void
+-action_toggle_search_cb (FontViewWindow *self)
++action_toggle_search_cb (GtkWidget *widget,
++ const char *action_name,
++ GVariant *parameter)
+ {
++ FontViewWindow *self = FONT_VIEW_WINDOW (widget);
+
+ gtk_toggle_button_set_active (self->search_button,
+ !gtk_toggle_button_get_active (self->search_button));
+--
+2.45.1
+
diff --git a/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_46.0.bb b/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_46.0.bb
new file mode 100644
index 0000000000..ccf8262dcd
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-font-viewer/gnome-font-viewer_46.0.bb
@@ -0,0 +1,25 @@
+SUMMARY = "GNOME font viewer"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+SECTION = "x11/gnome"
+
+DEPENDS = " \
+ gtk4 \
+ gnome-desktop \
+ libadwaita \
+"
+
+
+inherit gnomebase gtk-icon-cache gettext features_check mime-xdg
+
+REQUIRED_DISTRO_FEATURES = "x11 opengl"
+
+SRC_URI += "file://0001-window-Fix-function-callback-definition.patch"
+SRC_URI[archive.sha256sum] = "592f401e485d02cc044d487bb5c8e04c961da6856216768a59f1ff98bd2d537c"
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/metainfo \
+ ${datadir}/thumbnailers \
+"
diff --git a/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring/0001-Set-paths-to-ssh-agent-and-ssh-add-by-configure-opti.patch b/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring/0001-Set-paths-to-ssh-agent-and-ssh-add-by-configure-opti.patch
new file mode 100644
index 0000000000..c3c3050924
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring/0001-Set-paths-to-ssh-agent-and-ssh-add-by-configure-opti.patch
@@ -0,0 +1,40 @@
+From 647f3d946ec3fe4800b2bec89371f85a1a4b15cf Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Thu, 23 May 2019 23:44:06 +0200
+Subject: [PATCH] Set paths to ssh-agent and ssh-add by configure options
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+We have no executables in our sysroot so configuration won't find them.
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+
+---
+ configure.ac | 11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index f4f793c..5194e5d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -356,8 +356,15 @@ if test "$enable_ssh_agent" = "no"; then
+ SSH_AGENT=false
+ SSH_ADD=false
+ else
+- AC_PATH_PROG([SSH_AGENT], [ssh-agent], [no])
+- AC_PATH_PROG([SSH_ADD], [ssh-add], [no])
++ AC_ARG_WITH([ssh-agent-path],
++ [AC_HELP_STRING([--with-ssh-agent-path=PATH],
++ [path to ssh-agent])],
++ [SSH_AGENT=$with_ssh_agent_path], [SSH_AGENT=no])
++ AC_ARG_WITH([ssh-add-path],
++ [AC_HELP_STRING([--with-ssh-add-path=PATH],
++ [path to ssh-add])],
++ [SSH_ADD=$with_ssh_add_path], [SSH_ADD=no])
++
+ if test "$SSH_AGENT" = "no" -o "$SSH_ADD" = "no"; then
+ AC_MSG_ERROR([the ssh-agent and ssh-add commands were not found])
+ else
diff --git a/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.28.2.bb b/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.28.2.bb
deleted file mode 100644
index 8dc11c85d0..0000000000
--- a/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_3.28.2.bb
+++ /dev/null
@@ -1,44 +0,0 @@
-SUMMARY = "Password and keyring managing daemon"
-HOMEPAGE = "http://www.gnome.org/"
-BUGTRACKER = "https://bugzilla.gnome.org/"
-SECTION = "x11/gnome"
-
-LICENSE = "GPLv2+ & LGPLv2+ & LGPLv2.1+"
-LIC_FILES_CHKSUM = " \
- file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
-"
-
-inherit distro_features_check gnomebase remove-libtool gettext upstream-version-is-even
-
-DEPENDS = " \
- intltool-native \
- glib-2.0-native \
- gtk+3 \
- gcr \
- libgcrypt \
- ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)} \
-"
-
-SRC_URI[archive.md5sum] = "284580f954f762caf62aed2ae7358177"
-SRC_URI[archive.sha256sum] = "81171b7d07211b216b4c9bb79bf2deb3deca18fe8d56d46dda1c4549b4a2646a"
-SRC_URI += "file://musl.patch"
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-RDEPENDS_${PN} = "libgnome-keyring glib-2.0-utils"
-
-EXTRA_OECONF = "--disable-doc \
- ac_cv_path_SSH_AGENT=${bindir}/ssh-agent \
- ac_cv_path_SSH_ADD=${bindir}/ssh-add"
-
-PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}"
-PACKAGECONFIG[pam] = "--enable-pam --with-pam-dir=${base_libdir}/security, --disable-pam"
-PACKAGECONFIG[ssh-agent] = "--enable-ssh-agent,--disable-ssh-agent,,openssh-misc"
-
-FILES_${PN} += " \
- ${datadir}/dbus-1/services \
- ${datadir}/p11-kit \
- ${base_libdir}/security/*${SOLIBSDEV} \
- ${libdir}/pkcs11/gnome-keyring-pkcs11.so \
-"
diff --git a/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_46.2.bb b/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_46.2.bb
new file mode 100644
index 0000000000..e173199088
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-keyring/gnome-keyring_46.2.bb
@@ -0,0 +1,51 @@
+SUMMARY = "Password and keyring managing daemon"
+HOMEPAGE = "http://www.gnome.org/"
+BUGTRACKER = "https://bugzilla.gnome.org/"
+SECTION = "x11/gnome"
+
+LICENSE = "GPL-2.0-or-later & LGPL-2.0-or-later & LGPL-2.1-or-later"
+LIC_FILES_CHKSUM = " \
+ file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
+"
+
+DEPENDS = " \
+ glib-2.0-native \
+ gtk+3 \
+ gcr3 \
+ libgcrypt \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)} \
+"
+
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase gsettings features_check gettext
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+
+SRC_URI[archive.sha256sum] = "bf26c966b8a8b7f3285ecc8bb3e467b9c20f9535b94dc451c9c559ddcff61925"
+SRC_URI += " \
+ file://0001-Set-paths-to-ssh-agent-and-ssh-add-by-configure-opti.patch \
+ file://musl.patch \
+"
+
+PACKAGECONFIG ??= "ssh-agent"
+PACKAGECONFIG[ssh-agent] = "--enable-ssh-agent --with-ssh-agent-path=${bindir}/ssh-agent --with-ssh-add-path=${bindir}/ssh-add,--disable-ssh-agent,,openssh-misc"
+
+EXTRA_OECONF = " \
+ --disable-doc \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--enable-pam --with-pam-dir=${base_libdir}/security', '--disable-pam', d)} \
+"
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1/services \
+ ${datadir}/p11-kit \
+ ${datadir}/xdg-desktop-portal \
+ ${base_libdir}/security/*${SOLIBSDEV} \
+ ${libdir}/pkcs11/gnome-keyring-pkcs11.so \
+ ${systemd_user_unitdir} \
+"
+# fix | gnome-keyring-daemon: insufficient process capabilities, unsecure memory might get used
+pkg_postinst:${PN} () {
+ setcap cap_ipc_lock+ep $D/${bindir}/gnome-keyring-daemon
+}
+PACKAGE_WRITE_DEPS += "libcap-native"
diff --git a/meta-gnome/recipes-gnome/gnome-keyring/libgnome-keyring_3.12.0.bb b/meta-gnome/recipes-gnome/gnome-keyring/libgnome-keyring_3.12.0.bb
deleted file mode 100644
index ba69e2e0cd..0000000000
--- a/meta-gnome/recipes-gnome/gnome-keyring/libgnome-keyring_3.12.0.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-SUMMARY = "Compatibility library for accessing secrets"
-HOMEPAGE = "http://www.gnome.org/"
-BUGTRACKER = "https://bugzilla.gnome.org/"
-
-LICENSE = "GPLv2 & LGPLv2"
-LIC_FILES_CHKSUM = " \
- file://COPYING;md5=0914b9d3ebaba41ef2e3e0ae16f296cf \
- file://COPYING.GPL;md5=94d55d512a9ba36caa9b7df079bae19f \
-"
-SECTION = "x11/gnome/libs"
-
-inherit gnomebase gtk-doc gobject-introspection
-
-DEPENDS = "dbus libgcrypt glib-2.0 glib-2.0-native intltool-native"
-
-SRC_URI[archive.md5sum] = "6696e4f2e9aed4625cdc3af30bd8c238"
-SRC_URI[archive.sha256sum] = "c4c178fbb05f72acc484d22ddb0568f7532c409b0a13e06513ff54b91e947783"
-
-
-# Fails to build with thumb-1 (qemuarm)
-#| {standard input}: Assembler messages:
-#| {standard input}:823: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r12,r12,ror#3'
-#| {standard input}:823: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r12,r12,ror#13'
-#| {standard input}:824: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r12,r12,ror#29'
-#| {standard input}:824: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r12,r12,ror#19'
-#| {standard input}:825: Error: lo register required -- `orr r10,r10,r10'
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv4 = "arm"
-
diff --git a/meta-gnome/recipes-gnome/gnome-menus/gnome-menus3_3.10.1.bb b/meta-gnome/recipes-gnome/gnome-menus/gnome-menus3_3.10.1.bb
deleted file mode 100644
index 647ae914ff..0000000000
--- a/meta-gnome/recipes-gnome/gnome-menus/gnome-menus3_3.10.1.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "GNOME menus"
-SECTION = "x11/gnome"
-LICENSE = "GPLv2 & LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://COPYING.LIB;md5=5f30f0716dfdd0d91eb439ebec522ec2"
-
-DEPENDS = "python libxml2 gconf popt gtk+3 intltool-native gnome-common-native"
-
-inherit distro_features_check gnomebase pkgconfig python-dir pythonnative gobject-introspection
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-BPN = "gnome-menus"
-
-SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
-SRC_URI = "${GNOME_MIRROR}/${BPN}/${SHRT_VER}/${BPN}-${PV}.tar.xz"
-
-SRC_URI[md5sum] = "6db025e79e2b69f39fc7aa0753f43081"
-SRC_URI[sha256sum] = "46950aba274c1ad58234374fa9b235258650737307f3bc396af48eb983668a71"
-
-FILES_${PN} += "${datadir}/desktop-directories/"
diff --git a/meta-gnome/recipes-gnome/gnome-menus/gnome-menus_3.36.0.bb b/meta-gnome/recipes-gnome/gnome-menus/gnome-menus_3.36.0.bb
new file mode 100644
index 0000000000..47b6733e48
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-menus/gnome-menus_3.36.0.bb
@@ -0,0 +1,15 @@
+SUMMARY = "GNOME menus"
+SECTION = "x11/gnome"
+LICENSE = "GPL-2.0-only & LGPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://COPYING.LIB;md5=5f30f0716dfdd0d91eb439ebec522ec2"
+
+DEPENDS = "glib-2.0"
+
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase gettext pkgconfig gobject-introspection upstream-version-is-even
+
+SRC_URI[archive.md5sum] = "a8fd71fcf31a87fc799d80396a526829"
+SRC_URI[archive.sha256sum] = "d9348f38bde956fc32753b28c1cde19c175bfdbf1f4d5b06003b3aa09153bb1f"
+
+FILES:${PN} += "${datadir}/desktop-directories/"
diff --git a/meta-gnome/recipes-gnome/gnome-online-accounts/gnome-online-accounts_3.50.2.bb b/meta-gnome/recipes-gnome/gnome-online-accounts/gnome-online-accounts_3.50.2.bb
new file mode 100644
index 0000000000..adce70770f
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-online-accounts/gnome-online-accounts_3.50.2.bb
@@ -0,0 +1,28 @@
+SUMMARY = "GNOME Online Accounts - Single sign-on framework for GNOME"
+LICENSE = "LGPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=34c88b124db5fb2762c1676be7dadd36"
+
+GTKIC_VERSION = "4"
+inherit gnomebase gsettings gobject-introspection gtk-icon-cache mime-xdg vala features_check
+REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG', 'goabackend', 'opengl', '', d)}"
+
+DEPENDS += "gdk-pixbuf dbus glib-2.0 gcr"
+
+SRC_URI[archive.sha256sum] = "df16ad975d139c6bfc4ebb2ec8bb8327297a791ef2bf0b977c78076af5faa98e"
+
+PACKAGECONFIG ?= "goabackend kerberos owncloud google windows_live"
+
+PACKAGECONFIG[goabackend] = "-Dgoabackend=true,-Dgoabackend=false,gtk4 libadwaita json-glib libxml2 libsoup rest libsecret webkitgtk"
+PACKAGECONFIG[kerberos] = "-Dkerberos=true, -Dkerberos=false,krb5"
+PACKAGECONFIG[exchange] = "-Dexchange=true, -Dexchange=false"
+PACKAGECONFIG[google] = "-Dgoogle=true, -Dgoogle=false"
+PACKAGECONFIG[owncloud] = "-Downcloud=true, -Downcloud=false"
+PACKAGECONFIG[windows_live] = "-Dwindows_live=true, -Dwindows_live=false"
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${libdir}/goa-1.0/web-extensions/*.so \
+"
+
+# looked into pkg-config file: it is not a bug - they mean it
+FILES:${PN}-dev += "${libdir}/goa-1.0/include"
diff --git a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel_3.47.1.bb b/meta-gnome/recipes-gnome/gnome-panel/gnome-panel_3.47.1.bb
new file mode 100644
index 0000000000..02a8b01b26
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-panel/gnome-panel_3.47.1.bb
@@ -0,0 +1,25 @@
+SUMMARY = "GNOME flashback panel"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase gsettings itstool gnome-help gtk-icon-cache gettext upstream-version-is-even features_check
+
+REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam"
+
+DEPENDS += " \
+ yelp-tools-native \
+ libwnck3 \
+ polkit \
+ dconf \
+ libgweather4 \
+ gnome-menus \
+ gnome-desktop \
+ gdm \
+"
+
+SRC_URI[archive.sha256sum] = "d8f6e2c659668c77df82c3dd95ba04fcef8c40c228e2c22605f9a17a9161ec83"
+
+PACKAGECONFIG[eds] = "--enable-eds,--disable-eds,evolution-data-server"
+
+RDEPENDS:${PN} += "gdm-base"
diff --git a/meta-gnome/recipes-gnome/gnome-photos/gnome-photos_44.0.bb b/meta-gnome/recipes-gnome/gnome-photos/gnome-photos_44.0.bb
new file mode 100644
index 0000000000..4b05e52ca0
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-photos/gnome-photos_44.0.bb
@@ -0,0 +1,59 @@
+SUMMARY = "Access, organize and share your photos on GNOME"
+SECTION = "x11/gnome"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464"
+
+DEPENDS = " \
+ cairo \
+ glib-2.0-native \
+ gdk-pixbuf-native \
+ librsvg-native \
+ gtk+3 \
+ babl \
+ dbus \
+ gegl \
+ geocode-glib \
+ gexiv2 \
+ gnome-online-accounts \
+ gsettings-desktop-schemas \
+ libdazzle \
+ tracker \
+ libhandy \
+ libportal \
+"
+
+RDEPENDS:${PN} = "tracker-miners"
+
+
+inherit gnomebase gettext gnome-help features_check
+
+def gnome_verdir(v):
+ return oe.utils.trim_version(v, 1)
+
+REQUIRED_DISTRO_FEATURES = "x11 opengl gobject-introspection-data"
+
+PACKAGECONFIG ?= ""
+PACKAGECONFIG[doc] = "-Dmanuals=true,-Dmanuals=false,libxslt-native docbook-xsl-stylesheets-native"
+
+SRC_URI[archive.sha256sum] = "e78e210397d3c62809c6cd5521da6eccb4a11ddea5bf2af8632a47f4da5c829e"
+
+do_install:append() {
+ # make gnome-photos available on all desktops
+ sed -i 's:OnlyShowIn=:#OnlyShowIn=:g' ${D}${datadir}/applications/org.gnome.Photos.desktop
+}
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/metainfo \
+ ${datadir}/gnome-shell \
+"
+
+do_compile:append() {
+ # glib-mkenums is embedding full paths into this file. There's no
+ # option to it to use a sysroot style variable. So to avoid QA
+ # errors, we sed WORKDIR out and make its includes relative
+ sed -i "s|${B}||" src/photos-enums.h
+ sed -i "s|${B}||" src/photos-enums.c
+ sed -i "s|${B}||" src/photos-enums-gegl.c
+ sed -i "s|${B}||" src/photos-enums-gegl.h
+}
diff --git a/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot/0001-meson-remove-extraneous-positional-argument.patch b/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot/0001-meson-remove-extraneous-positional-argument.patch
new file mode 100644
index 0000000000..c80fda63a3
--- /dev/null
+++ b/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-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot_41.0.bb b/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot_41.0.bb
new file mode 100644
index 0000000000..4f82492e61
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-screenshot/gnome-screenshot_41.0.bb
@@ -0,0 +1,21 @@
+SUMMARY = "GNOME Screenshot"
+DESCRIPTION = "GNOME Screenshot is a small utility that takes a screenshot \
+of the whole desktop, the currently focused window, or an area of the screen."
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+SECTION = "x11/gnome"
+
+inherit features_check gnomebase gettext upstream-version-is-even pkgconfig
+
+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"
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/metainfo \
+"
diff --git a/meta-gnome/recipes-gnome/gnome-session/gnome-session_46.0.bb b/meta-gnome/recipes-gnome/gnome-session/gnome-session_46.0.bb
new file mode 100644
index 0000000000..94e639456f
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-session/gnome-session_46.0.bb
@@ -0,0 +1,34 @@
+SUMMARY = "GNOME session"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+DEPENDS = " \
+ glib-2.0-native \
+ xtrans \
+ libice \
+ libsm \
+ virtual/libx11 \
+ gtk+3 \
+ gnome-desktop \
+ json-glib \
+ systemd \
+"
+
+
+inherit gnomebase gettext gsettings upstream-version-is-even features_check
+
+REQUIRED_DISTRO_FEATURES = "polkit systemd pam gobject-introspection-data"
+
+SRC_URI[archive.sha256sum] = "c6e1624af6090bc4e1a191fe2268abfa7a8de07831ca7a57f217e679bf7b9a54"
+
+PACKAGECONFIG ??= ""
+
+PACKAGECONFIG[docbook] = "-Ddocbook=true, -Ddocbook=false"
+PACKAGECONFIG[man] = "-Dman=true, -Dman=false,xmlto-native libxslt-native"
+
+FILES:${PN} += " \
+ ${datadir}/xdg-desktop-portal \
+ ${datadir}/xsessions \
+ ${datadir}/wayland-sessions \
+ ${systemd_user_unitdir} \
+"
diff --git a/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_46.0.bb b/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_46.0.bb
new file mode 100644
index 0000000000..d409e77eae
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_46.0.bb
@@ -0,0 +1,50 @@
+SUMMARY = "Window navigation construction toolkit"
+LICENSE = "LGPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+
+inherit gnomebase gsettings gobject-introspection gettext features_check upstream-version-is-even
+
+DEPENDS = " \
+ colord \
+ geocode-glib \
+ gcr \
+ gnome-desktop \
+ libgweather4 \
+ lcms \
+ libcanberra \
+ geoclue \
+ libnotify \
+ upower \
+ libwacom \
+ virtual/libx11 \
+"
+
+# all these are mandatory
+REQUIRED_DISTRO_FEATURES = "x11 polkit pulseaudio systemd gobject-introspection-data"
+GIR_MESON_OPTION = ""
+
+SRC_URI[archive.sha256sum] = "0b9a0f64fa18a8e7e09b4c95a3f754fa033c2cdbd2dc35701f0618572c1cb3d7"
+
+PACKAGECONFIG ??= " \
+ cups nm \
+ alsa gudev \
+ smartcard \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)} \
+"
+PACKAGECONFIG[alsa] = "-Dalsa=true,-Dalsa=false,alsa-lib"
+PACKAGECONFIG[cups] = "-Dcups=true,-Dcups=false,cups"
+PACKAGECONFIG[gudev] = "-Dgudev=true,-Dgudev=false,libgudev"
+PACKAGECONFIG[nm] = "-Dnetwork_manager=true,-Dnetwork_manager=false,networkmanager"
+PACKAGECONFIG[smartcard] = "-Dsmartcard=true,-Dsmartcard=false,nss"
+PACKAGECONFIG[wayland] = "-Dwayland=true,-Dwayland=false,wayland"
+
+def gnome_verdir(v):
+ return oe.utils.trim_version(v, 1)
+
+PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src"
+
+FILES:${PN} += " \
+ ${systemd_user_unitdir} \
+ ${libdir}/gnome-settings-daemon-${@gnome_verdir("${PV}")}/libgsd.so \
+"
diff --git a/meta-gnome/recipes-gnome/gnome-shell/gnome-shell-extensions_46.2.bb b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell-extensions_46.2.bb
new file mode 100644
index 0000000000..5c2ae05936
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell-extensions_46.2.bb
@@ -0,0 +1,23 @@
+SUMMARY = "GNOME Shell Extensions"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4cb3a392cbf81a9e685ec13b88c4c101"
+
+inherit gnomebase gettext gsettings features_check
+
+REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam gobject-introspection-data"
+
+SRC_URI[archive.sha256sum] = "d442e9d26925125ff215a5c134290495655380741daafbb37a3a99d6f0c7d86f"
+
+EXTRA_OEMESON += " \
+ -Dextension_set=all \
+ -Dclassic_mode=true \
+"
+
+RDEPENDS:${PN} += "gnome-shell"
+
+FILES:${PN} += " \
+ ${datadir}/gnome-shell \
+ ${datadir}/gnome-session \
+ ${datadir}/wayland-sessions \
+ ${datadir}/xsessions \
+"
diff --git a/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0001-Introduce-options-gjs_path-to-optionally-set-path-to.patch b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0001-Introduce-options-gjs_path-to-optionally-set-path-to.patch
new file mode 100644
index 0000000000..8ef0da16fe
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell/0001-Introduce-options-gjs_path-to-optionally-set-path-to.patch
@@ -0,0 +1,124 @@
+From e9835f650d70bf22ad0e5d8c2179aa01b2d18955 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
+
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+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 48b7f89..700b590 100644
+--- a/js/dbusServices/meson.build
++++ b/js/dbusServices/meson.build
+@@ -22,7 +22,7 @@ foreach service, dir : dbus_services
+
+ serviceconf = configuration_data()
+ serviceconf.set('service', service)
+- serviceconf.set('gjs', gjs.full_path())
++ serviceconf.set('gjs', gjs)
+ serviceconf.set('pkgdatadir', pkgdatadir)
+
+ configure_file(
+diff --git a/meson.build b/meson.build
+index a6d83b1..2c612a8 100644
+--- a/meson.build
++++ b/meson.build
+@@ -134,7 +134,11 @@ endif
+
+ mutter_typelibdir = mutter_dep.get_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 6e83d92..1bf0ecb 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -45,3 +45,9 @@ option('systemd',
+ value: true,
+ description: 'Enable systemd integration'
+ )
++
++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 c9a67f8..91ae887 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.full_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 45f391b..d581408 100644
+--- a/subprojects/extensions-app/meson.build
++++ b/subprojects/extensions-app/meson.build
+@@ -47,7 +47,12 @@ metainfodir = join_paths(datadir, 'metainfo')
+ schemadir = join_paths(datadir, 'glib-2.0', 'schemas')
+ 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)
+ appstreamcli = find_program('appstreamcli', 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 ca2eb41..2787785 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'
++)
diff --git a/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_46.2.bb b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_46.2.bb
new file mode 100644
index 0000000000..0a52de7a3b
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-shell/gnome-shell_46.2.bb
@@ -0,0 +1,86 @@
+SUMMARY = "GNOME Shell is the graphical shell of the GNOME desktop environment"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+
+DEPENDS = " \
+ libxml2-native \
+ gtk4 \
+ mutter \
+ evolution-data-server \
+ gcr \
+ geocode-glib \
+ gjs \
+ gnome-autoar \
+ gnome-desktop \
+ polkit \
+ pipewire \
+ libsoup-3.0 \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '', 'startup-notification', d)} \
+ ibus \
+ gsettings-desktop-schemas \
+"
+
+inherit gnomebase gsettings gettext gobject-introspection gtk-icon-cache features_check bash-completion
+
+REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam"
+
+GTKIC_VERSION = "4"
+GTKDOC_MESON_OPTION = "gtk_doc"
+GIR_MESON_OPTION = ""
+
+# gobject-introspection is mandatory and cannot be configured
+REQUIRED_DISTRO_FEATURES += "gobject-introspection-data"
+
+SRC_URI[archive.sha256sum] = "6b587101c04bfb364ab09cd38b5d93ebeeb4254754c807cf712fbc8ee3fde238"
+SRC_URI += "file://0001-Introduce-options-gjs_path-to-optionally-set-path-to.patch"
+
+PACKAGECONFIG ??= "bluetooth nm ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
+PACKAGECONFIG[bluetooth] = ",,gnome-bluetooth"
+PACKAGECONFIG[nm] = "-Dnetworkmanager=true, -Dnetworkmanager=false,networkmanager libsecret,networkmanager"
+PACKAGECONFIG[systemd] = "-Dsystemd=true, -Dsystemd=false, systemd"
+
+EXTRA_OEMESON = " \
+ -Dgjs_path=${bindir}/gjs \
+ -Dextensions-app:gjs_path=${bindir}/gjs \
+ -Dtests=false \
+ -Dman=false \
+"
+
+do_install:append() {
+ # fix shebangs
+ for tool in `find ${D}${bindir} -name '*-tool'`; do
+ sed -i 's:#!${PYTHON}:#!${bindir}/python3:' $tool
+ done
+}
+
+GSETTINGS_PACKAGE = "${PN}-gsettings"
+
+FILES:${PN} += " \
+ ${datadir}/metainfo \
+ ${datadir}/dbus-1 \
+ ${datadir}/gnome-control-center \
+ ${datadir}/xdg-desktop-portal \
+ ${systemd_user_unitdir} \
+"
+
+RDEPENDS:${PN} += " \
+ accountsservice \
+ adwaita-icon-theme \
+ adwaita-icon-theme-cursors \
+ gdm-base \
+ gnome-control-center \
+ gnome-backgrounds \
+ gnome-bluetooth \
+ gnome-desktop \
+ gnome-session \
+ gnome-settings-daemon \
+ gnome-shell-gsettings \
+ gsettings-desktop-schemas \
+ librsvg-gtk \
+"
+
+PACKAGES =+ "${PN}-tools ${PN}-gsettings"
+FILES:${PN}-tools = "${bindir}/*-tool"
+RDEPENDS:${PN}-tools = "python3-core"
+
diff --git a/meta-gnome/recipes-gnome/gnome-software/gnome-software_46.2.bb b/meta-gnome/recipes-gnome/gnome-software/gnome-software_46.2.bb
new file mode 100644
index 0000000000..244941786b
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-software/gnome-software_46.2.bb
@@ -0,0 +1,43 @@
+SUMMARY = "GNOME Software allows users to easily find, discover and install apps."
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+GTKDOC_MESON_OPTION ?= "gtk_doc"
+
+inherit gnomebase gsettings itstool gnome-help gtk-icon-cache gtk-doc mime mime-xdg gettext upstream-version-is-even features_check
+
+REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam"
+
+DEPENDS += " \
+ appstream \
+ gdk-pixbuf \
+ glib-2.0 \
+ glib-2.0-native \
+ gsettings-desktop-schemas \
+ gtk4 \
+ iso-codes \
+ json-glib \
+ libadwaita \
+ libgudev \
+ libsoup-3.0 \
+ libxmlb-native \
+ polkit \
+"
+
+RDEPENDS:${PN} = "iso-codes"
+
+EXTRA_OEMESON += "-Dtests=false -Dsoup2=false"
+
+SRC_URI[archive.sha256sum] = "e700cba287764f5e2255514e312e160550fdbf7a5d3fe16358bb6f7b6732b974"
+
+PACKAGECONFIG ?= "flatpak"
+PACKAGECONFIG[flatpak] = "-Dflatpak=true,-Dflatpak=false,flatpak ostree"
+PACKAGECONFIG[snap] = "-Dsnap=true,-Dsnap=false,snapd-glib"
+PACKAGECONFIG[gtk_doc] = "-Dgtk_doc=true,-Dgtk_doc=false,libxslt-native docbook-xsl-stylesheets"
+PACKAGECONFIG[man] = "-Dman=true,-Dman=false,libxslt-native docbook-xsl-stylesheets"
+PACKAGECONFIG[packagekit] = "-Dpackagekit=true,-Dpackagekit=false,gnome-packagekit,gnome-packagekit"
+PACKAGECONFIG[fwupd] = "-Dfwupd=true,-Dfwupd=false,fwupd,fwupd"
+PACKAGECONFIG[malcontent] = "-Dmalcontent=true,-Dmalcontent=false,malcontent"
+
+FILES:${PN} += "${datadir}"
+FILES:${PN}-dev += "${libdir}/gnome-software/libgnomesoftware.so"
diff --git a/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor/0001-Do-not-build-help-we-do-not-have-yelp-yet.patch b/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor/0001-Do-not-build-help-we-do-not-have-yelp-yet.patch
deleted file mode 100644
index f2e720e9e6..0000000000
--- a/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor/0001-Do-not-build-help-we-do-not-have-yelp-yet.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From c6649fdcfb2f44807089741557f8e527ab9751e4 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Sun, 24 Mar 2019 02:46:07 +0100
-Subject: [PATCH] Do not build help - we do not have yelp yet
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: Inappropriate [embedded-specific]
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
----
- meson.build | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index d60ced7..6a0ab4b 100644
---- a/meson.build
-+++ b/meson.build
-@@ -183,7 +183,6 @@ subdir('data')
- subdir('po')
- subdir('scripts')
- subdir('src')
--subdir('help')
-
-
- message('\n'.join(['',
---
-2.20.1
-
diff --git a/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_3.32.0.bb b/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_3.32.0.bb
deleted file mode 100644
index 8930e1222a..0000000000
--- a/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_3.32.0.bb
+++ /dev/null
@@ -1,34 +0,0 @@
-SUMMARY = "Gnome system monitor"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-
-DEPENDS = " \
- itstool-native \
- gnome-common-native \
- libxml2-native \
- glib-2.0-native \
- gtkmm3 \
- libgtop \
- librsvg \
- polkit \
-"
-
-GNOMEBASEBUILDCLASS = "meson"
-
-inherit gnomebase gconf gtk-icon-cache distro_features_check gettext
-
-REQUIRED_DISTRO_FEATURES = "x11 polkit"
-
-SRC_URI[archive.md5sum] = "6c2c5c5bf8f15d3e6985faacbd3055dd"
-SRC_URI[archive.sha256sum] = "af00c4a42dd1db17d9abe88edb11c7751b20982db1a8a2a467bab206fd8a77e3"
-SRC_URI += "file://0001-Do-not-build-help-we-do-not-have-yelp-yet.patch"
-
-PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
-PACKAGECONFIG[systemd] = "-Dsystemd=true, -Dsystemd=false, systemd"
-
-RRECOMMENDS_${PN} = "adwaita-icon-theme"
-
-FILES_${PN} += " \
- ${datadir}/dbus-1 \
- ${datadir}/metainfo \
-"
diff --git a/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_46.0.bb b/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_46.0.bb
new file mode 100644
index 0000000000..eaeaa2cb0f
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_46.0.bb
@@ -0,0 +1,38 @@
+SUMMARY = "Gnome system monitor"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+
+DEPENDS = " \
+ gnome-common-native \
+ libxml2-native \
+ glib-2.0-native \
+ glibmm-2.68 \
+ gtkmm4 \
+ gtk4 \
+ libadwaita \
+ libgtop \
+ librsvg \
+ polkit \
+ libhandy \
+"
+
+
+inherit gnomebase gsettings gnome-help itstool gtk-icon-cache features_check gettext
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+REQUIRED_DISTRO_FEATURES = "polkit"
+
+def gnome_verdir(v):
+ return oe.utils.trim_version(v, 1)
+
+SRC_URI[archive.sha256sum] = "5376248158c686c308255472e8c2a9e4c17255642c149fc7198c6d034e547599"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
+PACKAGECONFIG[systemd] = "-Dsystemd=true, -Dsystemd=false, systemd"
+
+RRECOMMENDS:${PN} = "adwaita-icon-theme"
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/metainfo \
+"
diff --git a/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch b/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
new file mode 100644
index 0000000000..ef722a0e7d
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
@@ -0,0 +1,34 @@
+From f231cecc151930fd5b6309da317a8c5bc6001f38 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+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
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ src/terminal.cc | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+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)))
+
++/* fix for musl */
++#ifndef W_EXITCODE
++#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
++#endif
++
+ /* Wait-for-exit helper */
+
+ typedef struct {
+--
+2.31.1
+
diff --git a/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-meson-add-option-to-set-dbus_interfacedir.patch b/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-meson-add-option-to-set-dbus_interfacedir.patch
new file mode 100644
index 0000000000..9f8475bdd2
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal/0001-meson-add-option-to-set-dbus_interfacedir.patch
@@ -0,0 +1,63 @@
+From 61668e1eb86a316d4ad9a6b9cacf8c8cc74a0c33 Mon Sep 17 00:00:00 2001
+From: Markus Volk <f_l_k@t-online.de>
+Date: Sun, 7 Jan 2024 10:40:31 +0100
+Subject: [PATCH] meson: add an option to set dbus_interface_dir
+
+Add an option that allows to set the dbus_interface_dir path manually.
+This will help to cross-compile gnome-terminal on host systems that
+don't have gnome-shell installed.
+
+Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gnome-terminal/-/issues/8046]
+
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+---
+ meson_options.txt | 7 +++++++
+ src/meson.build | 7 ++++++-
+ 2 files changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/meson_options.txt b/meson_options.txt
+index b555ab66..8fece058 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -13,6 +13,13 @@
+ # You should have received a copy of the GNU General Public License
+ # along with this programme. If not, see <https://www.gnu.org/licenses/>.
+
++option(
++ 'dbus_interface_dir',
++ type: 'string',
++ value: '',
++ description: 'directory for D-Bus session interface files [$datadir/dbus-1/interfaces]',
++)
++
+ option(
+ 'dbg',
+ type: 'boolean',
+diff --git a/src/meson.build b/src/meson.build
+index 27ecd893..420ad45c 100644
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -185,6 +185,11 @@ server_sources = app_sources + client_util_sources + debug_sources + dbus_source
+
+ if get_option('search_provider')
+
++ dbus_interface_dir = get_option('dbus_interface_dir')
++ if dbus_interface_dir == ''
++ dbus_interface_dir = gt_prefix / gt_dbusinterfacedir
++ endif
++
+ server_sources += files(
+ 'terminal-search-provider.cc',
+ 'terminal-search-provider.hh',
+@@ -192,7 +197,7 @@ if get_option('search_provider')
+
+ server_sources += gnome.gdbus_codegen(
+ 'terminal-search-provider-gdbus-generated',
+- gt_prefix / gt_dbusinterfacedir / 'org.gnome.ShellSearchProvider2.xml',
++ dbus_interface_dir / 'org.gnome.ShellSearchProvider2.xml',
+ autocleanup: 'none',
+ install_header: false,
+ interface_prefix: 'org.gnome.Shell',
+--
+2.43.0
+
diff --git a/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.50.1.bb b/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.50.1.bb
new file mode 100644
index 0000000000..3bbfe9ece0
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-terminal/gnome-terminal_3.50.1.bb
@@ -0,0 +1,42 @@
+SUMMARY = "GNOME terminal"
+LICENSE = "GPL-3.0-only & GFDL-1.3"
+LIC_FILES_CHKSUM = " \
+ file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949 \
+ file://COPYING.GFDL;md5=a22d0be1ce2284b67950a4d1673dd1b0 \
+"
+
+inherit gnomebase pkgconfig gsettings gnome-help gettext itstool upstream-version-is-even
+
+DEPENDS = " \
+ glib-2.0 \
+ docbook-xsl-stylesheets-native libxslt-native \
+ desktop-file-utils-native \
+ gtk+3 \
+ gsettings-desktop-schemas \
+ vte \
+ dconf \
+ libhandy \
+ libpcre2 \
+"
+
+SRC_URI = " \
+ git://gitlab.gnome.org/GNOME/gnome-terminal.git;protocol=https;nobranch=1 \
+ file://0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch \
+ file://0001-meson-add-option-to-set-dbus_interfacedir.patch \
+"
+SRCREV = "5ac3b8e4bd6fa02651b3c23cedb0a7e1cd769655"
+S = "${WORKDIR}/git"
+
+PACKAGECONFIG ?= ""
+PACKAGECONFIG[nautilus] = "-Dnautilus_extension=true,-Dnautilus_extension=false,nautilus,nautilus"
+PACKAGECONFIG[search_provider] = "-Dsearch_provider=true -Ddbus_interface_dir=${STAGING_DATADIR}/dbus-1/interfaces,-Dsearch_provider=false,gnome-shell"
+
+PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src"
+
+FILES:${PN} += " \
+ ${datadir} \
+ ${libdir}/nautilus/extensions-4 \
+ ${systemd_user_unitdir} \
+"
+
+RRECOMMENDS:${PN} += "vte-prompt gsettings-desktop-schemas"
diff --git a/meta-gnome/recipes-gnome/gnome-text-editor/gnome-text-editor_46.3.bb b/meta-gnome/recipes-gnome/gnome-text-editor/gnome-text-editor_46.3.bb
new file mode 100644
index 0000000000..1e3268238b
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-text-editor/gnome-text-editor_46.3.bb
@@ -0,0 +1,26 @@
+SUMMARY = "A simple text editor"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a"
+
+
+DEPENDS = " \
+ desktop-file-utils-native \
+ libadwaita \
+ gtk4 \
+ gtksourceview5 \
+ editorconfig-core-c \
+ enchant2 \
+"
+
+GTKIC_VERSION = "4"
+
+inherit gnomebase gtk-icon-cache itstool gnome-help mime-xdg features_check
+
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+SRC_URI[archive.sha256sum] = "005b48104a909be66ae07448d2bc5706c7d113781057a24ff6da55bdf324c73d"
+
+FILES:${PN} += " \
+ ${datadir}/metainfo \
+ ${datadir}/dbus-1 \
+"
diff --git a/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks/0001-Make-python-path-configurable.patch b/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks/0001-Make-python-path-configurable.patch
new file mode 100644
index 0000000000..733249c7e6
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks/0001-Make-python-path-configurable.patch
@@ -0,0 +1,41 @@
+From db94983c93f38bd8494b47d9fa1b3e5368dc9abe Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Wed, 11 Dec 2019 01:34:01 +0100
+Subject: [PATCH] Make python path configurable
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Inappropriate [Configuration]
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ meson.build | 2 +-
+ meson_options.txt | 2 ++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+ create mode 100644 meson_options.txt
+
+diff --git a/meson.build b/meson.build
+index 5b824e9..a673d9c 100644
+--- a/meson.build
++++ b/meson.build
+@@ -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.get_path('purelib'))
++pythondir = get_option('python_site_dir')
+
+ pkgdatadir = join_paths(datadir, meson.project_name())
+
+diff --git a/meson_options.txt b/meson_options.txt
+new file mode 100644
+index 0000000..03455ca
+--- /dev/null
++++ b/meson_options.txt
+@@ -0,0 +1,2 @@
++option('python_site_dir', type: 'string', value: '')
++
+--
+2.21.0
+
diff --git a/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks/0002-meson-fix-invalid-positional-argument.patch b/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks/0002-meson-fix-invalid-positional-argument.patch
new file mode 100644
index 0000000000..d921ff3308
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks/0002-meson-fix-invalid-positional-argument.patch
@@ -0,0 +1,33 @@
+From dc9701e18775c01d0b69fabaa350147f70096da8 Mon Sep 17 00:00:00 2001
+From: Mae Dartmann <hello@maedartmann.name>
+Date: Wed, 16 Feb 2022 06:08:41 +0000
+Subject: [PATCH] meson: fix invalid positional argument
+
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gnome-tweaks/-/commit/dc9701e18775c01d0b69fabaa350147f70096da8]
+---
+ data/meson.build | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/data/meson.build b/data/meson.build
+index fd6d5da..74f7e82 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -1,5 +1,5 @@
+ appdata_file = 'org.gnome.tweaks.appdata.xml'
+-i18n.merge_file(appdata_file,
++i18n.merge_file(
+ input: appdata_file + '.in',
+ output: appdata_file,
+ po_dir: '../po',
+@@ -8,7 +8,7 @@ i18n.merge_file(appdata_file,
+ )
+
+ desktop_file = 'org.gnome.tweaks.desktop'
+-i18n.merge_file(desktop_file,
++i18n.merge_file(
+ input: desktop_file + '.in',
+ output: desktop_file,
+ po_dir: '../po',
+--
+GitLab
+
diff --git a/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_40.0.bb b/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_40.0.bb
new file mode 100644
index 0000000000..a8d6a2ad69
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_40.0.bb
@@ -0,0 +1,33 @@
+SUMMARY = "GNOME tweaks: Advanced options for GNOME 3 session"
+LICENSE = "GPL-3.0-only & CC0-1.0"
+LIC_FILES_CHKSUM = " \
+ file://LICENSES/CC0-1.0;md5=65d3616852dbf7b1a6d4b53b00626032 \
+ file://LICENSES/GPL-3.0;md5=9eef91148a9b14ec7f9df333daebc746 \
+"
+
+DEPENDS = "libhandy"
+
+
+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"
+GIR_MESON_OPTION = ""
+
+SRC_URI[archive.sha256sum] = "f95f3fe031b0b01c02f79a1659f889152d3772ae3e44df8403d1460ba5eec36a"
+SRC_URI += " \
+ file://0001-Make-python-path-configurable.patch \
+ file://0002-meson-fix-invalid-positional-argument.patch \
+"
+
+EXTRA_OEMESON = "-Dpython_site_dir=${PYTHON_SITEPACKAGES_DIR}"
+
+FILES:${PN} += " \
+ ${datadir}/metainfo \
+ ${PYTHON_SITEPACKAGES_DIR} \
+"
+
+RDEPENDS:${PN} += "gnome-shell python3-core python3-logging libhandy"
diff --git a/meta-gnome/recipes-gnome/gnome-user-share/gnome-user-share_43.0.bb b/meta-gnome/recipes-gnome/gnome-user-share/gnome-user-share_43.0.bb
new file mode 100644
index 0000000000..6fc78dd296
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gnome-user-share/gnome-user-share_43.0.bb
@@ -0,0 +1,24 @@
+SUMMARY = "This is gnome-user-share 43.0, a system for easy sharing of user files."
+LICENSE="GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+
+DEPENDS = " \
+ glib-2.0-native \
+ glib-2.0 \
+ systemd \
+"
+
+inherit gnomebase gsettings features_check
+
+REQUIRED_DISTRO_FEATURES = "systemd"
+
+SRC_URI = "git://gitlab.gnome.org/GNOME/gnome-user-share.git;protocol=https;branch=master"
+SRCREV = "a0e790aa9494db9d1b1f48b4fc0d2f78e112044d"
+S = "${WORKDIR}/git"
+
+PACKAGECONFIG ??= "modules"
+PACKAGECONFIG[httpd] = "-Dhttpd=${sbindir}/httpd,,,apache2 mod-dnssd"
+PACKAGECONFIG[modules] = "-Dmodules_path=${libexecdir}/apache2/modules"
+
+FILES:${PN} += "${systemd_user_unitdir}"
diff --git a/meta-gnome/recipes-gnome/grilo/grilo-plugins/0001-Avoid-running-trackertestutils.patch b/meta-gnome/recipes-gnome/grilo/grilo-plugins/0001-Avoid-running-trackertestutils.patch
new file mode 100644
index 0000000000..6e565e60d5
--- /dev/null
+++ b/meta-gnome/recipes-gnome/grilo/grilo-plugins/0001-Avoid-running-trackertestutils.patch
@@ -0,0 +1,32 @@
+From a76c5c40f95b2961bed8f6427080f0fcf6ec00d6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Sat, 15 May 2021 23:25:09 +0200
+Subject: [PATCH] Avoid running trackertestutils
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+It breaks configuration:
+| ../grilo-plugins-0.3.13/tests/tracker3/meson.build:5:0: ERROR: Program '/usr/lib/tracker-3.0/trackertestutils/tracker-sandbox' not found
+
+Upstream-Status: Inappropriate [OE-Specific]
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index fca5f98..3c1aa06 100644
+--- a/meson.build
++++ b/meson.build
+@@ -98,7 +98,7 @@ totem_plparser_dep = dependency('totem-plparser', version: '>= 3.4.1', required:
+ totem_plparser_mini_dep = dependency('totem-plparser-mini', version: '>= 3.4.1', required: false)
+ tracker_sparql_dep = dependency('tracker-sparql-2.0', version: '>= 2.3.0', required: false)
+ tracker3_dep = dependency('tracker-sparql-3.0', required: false)
+-tracker3_testutils_dep = dependency('tracker-testutils-3.0', required: false)
++tracker3_testutils_dep = dependency('tracker-testutils-3.0-avoid-find', required: false)
+
+ lua_pkg = [
+ 'lua',
diff --git a/meta-gnome/recipes-gnome/grilo/grilo-plugins_0.3.16.bb b/meta-gnome/recipes-gnome/grilo/grilo-plugins_0.3.16.bb
new file mode 100644
index 0000000000..40603993f3
--- /dev/null
+++ b/meta-gnome/recipes-gnome/grilo/grilo-plugins_0.3.16.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Grilo is a framework forsearching media content from various sources"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+
+DEPENDS = " \
+ glib-2.0-native \
+ gperf-native \
+ itstool-native \
+ grilo \
+ lua \
+ liboauth \
+"
+
+
+inherit gnomebase gnome-help vala
+
+SRC_URI += "file://0001-Avoid-running-trackertestutils.patch"
+SRC_URI[archive.sha256sum] = "fe6f4dbe586c6b8ba2406394e202f22d009d642a96eb3a54f32f6a21d084cdcb"
+
+PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'gobject-introspection-data', 'tracker', '', d)}"
+PACKAGECONFIG[tracker] = "-Denable-tracker3=yes,-Denable-tracker3=no,tracker"
+
+FILES:${PN} += "${libdir}/grilo-0.3"
diff --git a/meta-gnome/recipes-gnome/grilo/grilo_0.3.16.bb b/meta-gnome/recipes-gnome/grilo/grilo_0.3.16.bb
new file mode 100644
index 0000000000..b6ac75dd8a
--- /dev/null
+++ b/meta-gnome/recipes-gnome/grilo/grilo_0.3.16.bb
@@ -0,0 +1,39 @@
+SUMMARY = "Grilo is a framework forsearching media content from various sources"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+
+DEPENDS = " \
+ libxml2 \
+ glib-2.0 \
+"
+
+
+inherit gnomebase gobject-introspection gtk-doc gettext vala
+
+SRC_URI[archive.sha256sum] = "884580e8c5ece280df23aa63ff5234b7d48988a404df7d6bfccd1e77b473bd96"
+
+GIR_MESON_OPTION = "enable-introspection"
+GTKDOC_MESON_OPTION = "enable-gtk-doc"
+
+# Note: removing 'net' from PACKAGECONFIG causes
+# | bindings/vala/meson.build:15:0: ERROR: Unknown variable "grlnet_gir".
+PACKAGECONFIG ??= "net"
+
+PACKAGECONFIG[net] = "-Denable-grl-net=true, -Denable-grl-net=false, libsoup-3.0"
+PACKAGECONFIG[test-ui] = "-Denable-test-ui=true, -Denable-test-ui=false, gtk+3 liboauth"
+
+# Once we have a recipe for 'totem-plparser' this can turn into a PACKAGECONFIG
+EXTRA_OEMESON = "-Denable-grl-pls=false"
+
+do_compile:append() {
+ # grl-type-builtins.* are generated by glib-mkenums which leave full paths
+ # in comment and #include directives. Rewrite those before *-src packaging.
+
+ # Path can be relative to B or WORKDIR in devtool modify
+ for base in ${B} ${WORKDIR} ; do
+ relpath="$(realpath --relative-to="$base" "${S}")"
+ sed -i -e "s,$base/$relpath/src/,," \
+ ${B}/src/grl-type-builtins.h \
+ ${B}/src/grl-type-builtins.c
+ done
+}
diff --git a/meta-gnome/recipes-gnome/gsound/gsound_1.0.3.bb b/meta-gnome/recipes-gnome/gsound/gsound_1.0.3.bb
new file mode 100644
index 0000000000..6a50c22c73
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gsound/gsound_1.0.3.bb
@@ -0,0 +1,15 @@
+SUMMARY = "Small gobject library for playing system sounds"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=447b837ae57f08b7060593ac6256163f"
+
+DEPENDS = " \
+ glib-2.0 \
+ libcanberra \
+"
+
+
+VALA_MESON_OPTION = "enable_vala"
+
+inherit gnomebase gettext gobject-introspection vala
+
+SRC_URI[archive.sha256sum] = "ca2d039e1ebd148647017a7f548862350bc9af01986d39f10cfdc8e95f07881a"
diff --git a/meta-gnome/recipes-gnome/gspell/gspell_1.12.2.bb b/meta-gnome/recipes-gnome/gspell/gspell_1.12.2.bb
new file mode 100644
index 0000000000..2668fc009f
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gspell/gspell_1.12.2.bb
@@ -0,0 +1,11 @@
+SUMMARY = "gspell adds spell-checking to a GTK+ applications"
+HOMEPAGE = "https://wiki.gnome.org/Projects/gspell"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8c2e1ec1540fb3e0beb68361344cba7e"
+
+DEPENDS = "gtk+3 icu enchant2"
+
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase gettext gobject-introspection vala gtk-doc
+
+SRC_URI[archive.sha256sum] = "b4e993bd827e4ceb6a770b1b5e8950fce3be9c8b2b0cbeb22fdf992808dd2139"
diff --git a/meta-gnome/recipes-gnome/gspell/gspell_1.8.1.bb b/meta-gnome/recipes-gnome/gspell/gspell_1.8.1.bb
deleted file mode 100644
index 9de298c418..0000000000
--- a/meta-gnome/recipes-gnome/gspell/gspell_1.8.1.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-SUMMARY = "spell adds spell-checking to a GTK+ applications"
-HOMEPAGE = "https://wiki.gnome.org/Projects/gspell"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=8c2e1ec1540fb3e0beb68361344cba7e"
-
-DEPENDS = "gtk+3 iso-codes enchant2"
-
-inherit gnomebase gettext gobject-introspection
-
-SRC_URI[archive.md5sum] = "8269918ea5ff798e49943e7daf6a32b9"
-SRC_URI[archive.sha256sum] = "819a1d23c7603000e73f5e738bdd284342e0cd345fb0c7650999c31ec741bbe5"
diff --git a/meta-gnome/recipes-gnome/gthumb/gthumb_3.12.4.bb b/meta-gnome/recipes-gnome/gthumb/gthumb_3.12.4.bb
new file mode 100644
index 0000000000..79db8b7d75
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gthumb/gthumb_3.12.4.bb
@@ -0,0 +1,30 @@
+SUMMARY = "Image viewer and browser"
+LICENSE="GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+
+REQUIRED_DISTRO_FEATURES = "polkit gobject-introspection-data"
+
+DEPENDS = " \
+ glib-2.0-native \
+ bison-native \
+ yelp-tools-native \
+ gtk+3 \
+ gsettings-desktop-schemas \
+ zlib \
+ jpeg \
+ exiv2 \
+ colord \
+ lcms \
+ libraw \
+ librsvg \
+ libsoup \
+ json-glib \
+ libsecret \
+"
+
+inherit features_check gnomebase gnome-help gsettings itstool mime-xdg
+
+SRC_URI[archive.sha256sum] = "add693ac0aeb9a30d829ba03a06208289d3f6868dc3b02573549e88190c794e8"
+
+FILES:${PN} += "${datadir}/metainfo"
diff --git a/meta-gnome/recipes-gnome/gtksourceview/files/0001-remove-pointless-check.patch b/meta-gnome/recipes-gnome/gtksourceview/files/0001-remove-pointless-check.patch
new file mode 100644
index 0000000000..8230bbbd16
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gtksourceview/files/0001-remove-pointless-check.patch
@@ -0,0 +1,38 @@
+From 397751846130f79d5fbe8d617b788f3bcbb36816 Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@arm.com>
+Date: Tue, 9 Jan 2024 22:20:03 +0000
+Subject: [PATCH] meson: remove pointless gtk-doc check
+
+There's no point explicitly checking for gtk-doc, for two reasons:
+
+1) In cross-compiled environments this looks for a target gtk-doc, not a
+ native gtk-doc, so it should set native:true.
+
+2) The gnome.gtkdoc() function checks for gtk-doc itself.
+
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gtksourceview/-/merge_requests/351]
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+---
+ meson.build | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index ba07da70..1109daea 100644
+--- a/meson.build
++++ b/meson.build
+@@ -107,12 +107,6 @@ else
+ vapigen_dep = []
+ endif
+
+-if build_gtk_doc
+- gtk_doc_dep = dependency('gtk-doc', version: gtk_doc_req)
+-else
+- gtk_doc_dep = []
+-endif
+-
+ # Look for the libxml2 library manually on Visual Studio if
+ # its pkg-config file could not be found, as the NMake
+ # Makefiles of libxml2 do not generate the pkg-config files
+--
+2.34.1
+
diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb
index 7dabd1e392..9d46b43c42 100644
--- a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb
+++ b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb
@@ -1,24 +1,22 @@
DESCRIPTION = "Gtksourceview Classic-Light theme"
-LICENSE = "LGPLv2.1"
+LICENSE = "LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://classic-light.xml;beginline=6;endline=23;md5=2b4f75364fad00a4d752214dcbd7d7c3"
inherit allarch
SRC_URI = "file://classic-light.xml"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
- install -d ${D}${datadir}/gtksourceview-2.0/styles
- install -m 0644 ${WORKDIR}/classic-light.xml ${D}${datadir}/gtksourceview-2.0/styles/
install -d ${D}${datadir}/gtksourceview-3.0/styles
- install -m 0644 ${WORKDIR}/classic-light.xml ${D}${datadir}/gtksourceview-3.0/styles/
+ install -m 0644 ${UNPACKDIR}/classic-light.xml ${D}${datadir}/gtksourceview-3.0/styles/
install -d ${D}${datadir}/gtksourceview-4/styles
- install -m 0644 ${WORKDIR}/classic-light.xml ${D}${datadir}/gtksourceview-4/styles/
+ install -m 0644 ${UNPACKDIR}/classic-light.xml ${D}${datadir}/gtksourceview-4/styles/
}
-FILES_${PN} = " \
- ${datadir}/gtksourceview-2.0/styles \
+FILES:${PN} = " \
${datadir}/gtksourceview-3.0/styles \
${datadir}/gtksourceview-4/styles \
"
diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/0001-test-widget.c-fix-non-literal-format-string-issues.patch b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/0001-test-widget.c-fix-non-literal-format-string-issues.patch
deleted file mode 100644
index 6118b679a5..0000000000
--- a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/0001-test-widget.c-fix-non-literal-format-string-issues.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 0781b218beb8ba160ea223ff3d74a4fa2abf86fa Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 13 Apr 2017 16:21:14 -0700
-Subject: [PATCH] test-widget.c: fix non-literal format string issues
-
-clang errors out when using -Werror=format-nonliteral
-since the definition of g_strdup_vprintf() from glib-2.0
-is using va_list and clang seems to still warn where as
-gcc doesn't do that for va_list arguments
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- tests/test-widget.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tests/test-widget.c b/tests/test-widget.c
-index 46f5f4e..3f2e60f 100644
---- a/tests/test-widget.c
-+++ b/tests/test-widget.c
-@@ -260,7 +260,7 @@ static const gchar *buffer_ui_description =
-
- /* File loading code ----------------------------------------------------------------- */
-
--static void
-+static void G_GNUC_PRINTF (2, 0)
- error_dialog (GtkWindow *parent, const gchar *msg, ...)
- {
- va_list ap;
---
-2.12.2
-
diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/acinclude.m4 b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/acinclude.m4
deleted file mode 100644
index 53518fb2eb..0000000000
--- a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/acinclude.m4
+++ /dev/null
@@ -1,90 +0,0 @@
-## this one is commonly used with AM_PATH_PYTHONDIR ...
-dnl AM_CHECK_PYMOD(MODNAME [,SYMBOL [,ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]]])
-dnl Check if a module containing a given symbol is visible to python.
-AC_DEFUN(AM_CHECK_PYMOD,
-[AC_REQUIRE([AM_PATH_PYTHON])
-py_mod_var=`echo $1['_']$2 | sed 'y%./+-%__p_%'`
-AC_MSG_CHECKING(for ifelse([$2],[],,[$2 in ])python module $1)
-AC_CACHE_VAL(py_cv_mod_$py_mod_var, [
-ifelse([$2],[], [prog="
-import sys
-try:
- import $1
-except ImportError:
- sys.exit(1)
-except:
- sys.exit(0)
-sys.exit(0)"], [prog="
-import $1
-$1.$2"])
-if $PYTHON -c "$prog" 1>&AC_FD_CC 2>&AC_FD_CC
- then
- eval "py_cv_mod_$py_mod_var=yes"
- else
- eval "py_cv_mod_$py_mod_var=no"
- fi
-])
-py_val=`eval "echo \`echo '$py_cv_mod_'$py_mod_var\`"`
-if test "x$py_val" != xno; then
- AC_MSG_RESULT(yes)
- ifelse([$3], [],, [$3
-])dnl
-else
- AC_MSG_RESULT(no)
- ifelse([$4], [],, [$4
-])dnl
-fi
-])
-
-dnl a macro to check for ability to create python extensions
-dnl AM_CHECK_PYTHON_HEADERS([ACTION-IF-POSSIBLE], [ACTION-IF-NOT-POSSIBLE])
-dnl function also defines PYTHON_INCLUDES
-AC_DEFUN([AM_CHECK_PYTHON_HEADERS],
-[AC_REQUIRE([AM_PATH_PYTHON])
-AC_MSG_CHECKING(for headers required to compile python extensions)
-dnl deduce PYTHON_INCLUDES
-AC_ARG_WITH(python-includes,
- [ --with-python-includes=DIR path to Python includes], py_exec_prefix=$withval)
-if test x$py_exec_prefix != x; then
-PYTHON_INCLUDES="-I${py_exec_prefix}/include/python${PYTHON_VERSION}"
-else
-py_prefix=`$PYTHON -c "import sys; print sys.prefix"`
-py_exec_prefix=`$PYTHON -c "import sys; print sys.exec_prefix"`
-PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION}"
-if test "$py_prefix" != "$py_exec_prefix"; then
- PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}"
-fi
-fi
-AC_SUBST(PYTHON_INCLUDES)
-dnl check if the headers exist:
-save_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $PYTHON_INCLUDES"
-AC_TRY_CPP([#include <Python.h>],dnl
-[AC_MSG_RESULT(found)
-$1],dnl
-[AC_MSG_RESULT(not found)
-$2])
-CPPFLAGS="$save_CPPFLAGS"
-])
-
-dnl
-dnl JH_ADD_CFLAG(FLAG)
-dnl checks whether the C compiler supports the given flag, and if so, adds
-dnl it to $CFLAGS. If the flag is already present in the list, then the
-dnl check is not performed.
-AC_DEFUN([JH_ADD_CFLAG],
-[
-case " $CFLAGS " in
-*@<:@\ \ @:>@$1@<:@\ \ @:>@*)
- ;;
-*)
- save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS $1"
- AC_MSG_CHECKING([whether [$]CC understands $1])
- AC_TRY_COMPILE([], [], [jh_has_option=yes], [jh_has_option=no])
- AC_MSG_RESULT($jh_has_option)
- if test $jh_has_option = no; then
- CFLAGS="$save_CFLAGS"
- fi
- ;;
-esac])
diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/gtk-doc.m4 b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/gtk-doc.m4
deleted file mode 100644
index 3ec41666b2..0000000000
--- a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/gtk-doc.m4
+++ /dev/null
@@ -1,53 +0,0 @@
-dnl -*- mode: autoconf -*-
-
-# serial 1
-
-dnl Usage:
-dnl GTK_DOC_CHECK([minimum-gtk-doc-version])
-AC_DEFUN([GTK_DOC_CHECK],
-[
- AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
- AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
- dnl for overriding the documentation installation directory
- AC_ARG_WITH(html-dir,
- AC_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),,
- [with_html_dir='${datadir}/gtk-doc/html'])
- HTML_DIR="$with_html_dir"
- AC_SUBST(HTML_DIR)
-
- dnl enable/disable documentation building
- AC_ARG_ENABLE(gtk-doc,
- AC_HELP_STRING([--enable-gtk-doc],
- [use gtk-doc to build documentation [default=no]]),,
- enable_gtk_doc=no)
-
- have_gtk_doc=no
- if test -z "$PKG_CONFIG"; then
- AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
- fi
- if test "$PKG_CONFIG" != "no" && $PKG_CONFIG --exists gtk-doc; then
- have_gtk_doc=yes
- fi
-
- dnl do we want to do a version check?
-ifelse([$1],[],,
- [gtk_doc_min_version=$1
- if test "$have_gtk_doc" = yes; then
- AC_MSG_CHECKING([gtk-doc version >= $gtk_doc_min_version])
- if $PKG_CONFIG --atleast-version $gtk_doc_min_version gtk-doc; then
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- have_gtk_doc=no
- fi
- fi
-])
- if test x$enable_gtk_doc = xyes; then
- if test "$have_gtk_doc" != yes; then
- enable_gtk_doc=no
- fi
- fi
-
- AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes)
- AM_CONDITIONAL(GTK_DOC_USE_LIBTOOL, test -n "$LIBTOOL")
-])
diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/gtk-doc.make b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/gtk-doc.make
deleted file mode 100644
index 354ffb7c66..0000000000
--- a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/gtk-doc.make
+++ /dev/null
@@ -1,173 +0,0 @@
-# -*- mode: makefile -*-
-
-####################################
-# Everything below here is generic #
-####################################
-
-if GTK_DOC_USE_LIBTOOL
-GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
-else
-GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
-endif
-
-# We set GPATH here; this gives us semantics for GNU make
-# which are more like other make's VPATH, when it comes to
-# whether a source that is a target of one rule is then
-# searched for in VPATH/GPATH.
-#
-GPATH = $(srcdir)
-
-TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
-
-EXTRA_DIST = \
- $(content_files) \
- $(HTML_IMAGES) \
- $(DOC_MAIN_SGML_FILE) \
- $(DOC_MODULE)-sections.txt \
- $(DOC_MODULE)-overrides.txt
-
-DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \
- $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
-
-SCANOBJ_FILES = \
- $(DOC_MODULE).args \
- $(DOC_MODULE).hierarchy \
- $(DOC_MODULE).interfaces \
- $(DOC_MODULE).prerequisites \
- $(DOC_MODULE).signals
-
-REPORT_FILES = \
- $(DOC_MODULE)-undocumented.txt \
- $(DOC_MODULE)-undeclared.txt \
- $(DOC_MODULE)-unused.txt
-
-CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS)
-
-if ENABLE_GTK_DOC
-all-local: html-build.stamp
-else
-all-local:
-endif
-
-docs: html-build.stamp
-
-#### scan ####
-
-scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB)
- @echo 'gtk-doc: Scanning header files'
- @-chmod -R u+w $(srcdir)
- cd $(srcdir) && \
- gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
- if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \
- CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \
- else \
- cd $(srcdir) ; \
- for i in $(SCANOBJ_FILES) ; do \
- test -f $$i || touch $$i ; \
- done \
- fi
- touch scan-build.stamp
-
-$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp
- @true
-
-#### templates ####
-
-tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
- @echo 'gtk-doc: Rebuilding template files'
- @-chmod -R u+w $(srcdir)
- cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS)
- touch tmpl-build.stamp
-
-tmpl.stamp: tmpl-build.stamp
- @true
-
-tmpl/*.sgml:
- @true
-
-
-#### xml ####
-
-sgml-build.stamp: tmpl.stamp $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files)
- @echo 'gtk-doc: Building XML'
- @-chmod -R u+w $(srcdir)
- cd $(srcdir) && \
- gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS)
- touch sgml-build.stamp
-
-sgml.stamp: sgml-build.stamp
- @true
-
-#### html ####
-
-html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
- @echo 'gtk-doc: Building HTML'
- @-chmod -R u+w $(srcdir)
- rm -rf $(srcdir)/html
- mkdir $(srcdir)/html
- cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
- test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
- @echo 'gtk-doc: Fixing cross-references'
- cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
- touch html-build.stamp
-
-##############
-
-clean-local:
- rm -f *~ *.bak
- rm -rf .libs
-
-distclean-local:
- cd $(srcdir) && \
- rm -rf xml $(REPORT_FILES) \
- $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
-
-maintainer-clean-local: clean
- cd $(srcdir) && rm -rf xml html
-
-install-data-local:
- -installfiles=`echo $(srcdir)/html/*`; \
- if test "$$installfiles" = '$(srcdir)/html/*'; \
- then echo '-- Nothing to install' ; \
- else \
- $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR); \
- for i in $$installfiles; do \
- echo '-- Installing '$$i ; \
- $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
- done; \
- echo '-- Installing $(srcdir)/html/index.sgml' ; \
- $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR) || :; \
- which gtkdoc-rebase >/dev/null && \
- gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$(DESTDIR)$(TARGET_DIR) ; \
- fi
-
-
-uninstall-local:
- rm -f $(DESTDIR)$(TARGET_DIR)/*
-
-#
-# Require gtk-doc when making dist
-#
-if ENABLE_GTK_DOC
-dist-check-gtkdoc:
-else
-dist-check-gtkdoc:
- @echo "*** gtk-doc must be installed and enabled in order to make dist"
- @false
-endif
-
-dist-hook: dist-check-gtkdoc dist-hook-local
- mkdir $(distdir)/tmpl
- mkdir $(distdir)/xml
- mkdir $(distdir)/html
- -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
- -cp $(srcdir)/xml/*.xml $(distdir)/xml
- cp $(srcdir)/html/* $(distdir)/html
- -cp $(srcdir)/$(DOC_MODULE).types $(distdir)/
- -cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/
- cd $(distdir) && rm -f $(DISTCLEANFILES)
- -gtkdoc-rebase --online --relative --html-dir=$(distdir)/html
-
-.PHONY : dist-hook-local docs
diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/suppress-string-format-literal-warning.patch b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/suppress-string-format-literal-warning.patch
deleted file mode 100644
index f9ae077631..0000000000
--- a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2/suppress-string-format-literal-warning.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-Fix build error with gcc6:
-../../gtksourceview-2.10.5/gtksourceview/gtksourceprintcompositor.c: In function 'strdup_strftime':
-../../gtksourceview-2.10.5/gtksourceview/gtksourceprintcompositor.c:1951:3: error: format not a string literal, format string not checked [-Werror=format-nonliteral]
- tmplen = strftime (tmpbuf, tmpbufsize, locale_format, tm);
- ^~~~~~
-
-Patch Reference:
-https://git.gnome.org/browse/glib/commit/?id=0817af40e8c74c721c30f6ef482b1f53d12044c7
-https://git.gnome.org/browse/glib/commit/?id=8cdbc7fb2c8c876902e457abe46ee18a0b134486
-
-Upstream-Status: Pending
-Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
-
-diff -Nurp gtksourceview-2.10.5.orig/gtksourceview/gtksourceprintcompositor.c gtksourceview-2.10.5/gtksourceview/gtksourceprintcompositor.c
---- gtksourceview-2.10.5.orig/gtksourceview/gtksourceprintcompositor.c 2016-07-01 13:11:43.631173762 +0800
-+++ gtksourceview-2.10.5/gtksourceview/gtksourceprintcompositor.c 2016-07-04 13:54:18.223726343 +0800
-@@ -1913,6 +1913,8 @@ setup_pango_layouts (GtkSourcePrintCompo
- * GLIB - Library of useful routines for C programming
- * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald */
-
-+#pragma GCC diagnostic push
-+#pragma GCC diagnostic ignored "-Wformat-nonliteral"
- static gchar *
- strdup_strftime (const gchar *format, const struct tm *tm)
- {
-@@ -1982,6 +1984,7 @@ strdup_strftime (const gchar *format, co
-
- return convbuf;
- }
-+#pragma GCC diagnostic pop
-
- static gchar *
- evaluate_format_string (GtkSourcePrintCompositor *compositor,
diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2_2.10.5.bb b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2_2.10.5.bb
deleted file mode 100644
index 012f8e3bc0..0000000000
--- a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview2_2.10.5.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-SUMMARY = "Portable C library for multiline text editing"
-HOMEPAGE = "http://projects.gnome.org/gtksourceview/"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-DEPENDS = "gtk+ libxml2 intltool-native gnome-common-native glib-2.0-native"
-
-PNAME = "gtksourceview"
-
-S = "${WORKDIR}/${PNAME}-${PV}"
-
-inherit gnomebase lib_package gettext distro_features_check
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-# overrule SRC_URI from gnome.conf
-SRC_URI = "${GNOME_MIRROR}/${PNAME}/${@gnome_verdir("${PV}")}/${PNAME}-${PV}.tar.bz2;name=archive \
- file://gtk-doc.make \
- file://suppress-string-format-literal-warning.patch \
- file://0001-test-widget.c-fix-non-literal-format-string-issues.patch \
- "
-SRC_URI[archive.md5sum] = "1219ad1694df136f126507466aeb41aa"
-SRC_URI[archive.sha256sum] = "c585773743b1df8a04b1be7f7d90eecdf22681490d6810be54c81a7ae152191e"
-
-do_configure_prepend() {
- cp ${WORKDIR}/gtk-doc.make ${S}/
- sed -i -e s:docs::g ${S}/Makefile.am
- echo "EXTRA_DIST = version.xml" > gnome-doc-utils.make
-}
-
-FILES_${PN} += " ${datadir}/gtksourceview-2.0"
diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview3_3.24.11.bb b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview3_3.24.11.bb
index f7884930c0..0ab9b14692 100644
--- a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview3_3.24.11.bb
+++ b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview3_3.24.11.bb
@@ -1,21 +1,25 @@
SUMMARY = "Portable C library for multiline text editing"
HOMEPAGE = "http://projects.gnome.org/gtksourceview/"
-LICENSE = "LGPLv2.1"
+LICENSE = "LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
-DEPENDS = "gtk+3 libxml2 intltool-native gnome-common-native glib-2.0-native"
+DEPENDS = "gtk+3 libxml2 glib-2.0-native"
PNAME = "gtksourceview"
S = "${WORKDIR}/${PNAME}-${PV}"
-inherit gnomebase lib_package gettext distro_features_check gtk-doc gobject-introspection upstream-version-is-even
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase lib_package gettext features_check gtk-doc gobject-introspection upstream-version-is-even
REQUIRED_DISTRO_FEATURES = "x11"
+EXTRA_OECONF += "--disable-glade-catalog --disable-gtk-doc --disable-Werror"
+
+CFLAGS += "-Wno-error=incompatible-pointer-types"
SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtksourceview/3.24/${PNAME}-${PV}.tar.xz"
SRC_URI[md5sum] = "b748da426a7d64e1304f0c532b0f2a67"
SRC_URI[sha256sum] = "691b074a37b2a307f7f48edc5b8c7afa7301709be56378ccf9cc9735909077fd"
-FILES_${PN} += " ${datadir}/gtksourceview-3.0"
+FILES:${PN} += " ${datadir}/gtksourceview-3.0"
diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.2.0.bb b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.2.0.bb
deleted file mode 100644
index 10deaffb8a..0000000000
--- a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.2.0.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-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 = "gtk+3 libxml2 intltool-native gnome-common-native glib-2.0-native"
-
-PNAME = "gtksourceview"
-
-S = "${WORKDIR}/${PNAME}-${PV}"
-
-inherit gnomebase lib_package gettext distro_features_check gtk-doc gobject-introspection
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtksourceview/4.2/${PNAME}-${PV}.tar.xz"
-SRC_URI[md5sum] = "c9e6913c2fd30ca2fcdd71482faf8b99"
-SRC_URI[sha256sum] = "c431eb234dc83c7819e58f77dd2af973252c7750da1c9d125ddc94268f94f675"
-
-FILES_${PN} += "${datadir}/gtksourceview-4"
diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.8.4.bb b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.8.4.bb
new file mode 100644
index 0000000000..38ca4a39e6
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.8.4.bb
@@ -0,0 +1,24 @@
+SUMMARY = "Portable C library for multiline text editing"
+HOMEPAGE = "http://projects.gnome.org/gtksourceview/"
+
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+
+DEPENDS = "gtk+3 libxml2 glib-2.0-native"
+
+PNAME = "gtksourceview"
+
+S = "${WORKDIR}/${PNAME}-${PV}"
+
+inherit gnomebase lib_package gettext features_check gtk-doc gobject-introspection vala
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+
+SRC_URI = "https://download.gnome.org/sources/gtksourceview/4.8/${PNAME}-${PV}.tar.xz \
+ file://0001-remove-pointless-check.patch"
+SRC_URI[sha256sum] = "7ec9d18fb283d1f84a3a3eff3b7a72b09a10c9c006597b3fbabbb5958420a87d"
+
+GIR_MESON_OPTION = 'gir'
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+FILES:${PN} += "${datadir}/gtksourceview-4"
diff --git a/meta-gnome/recipes-gnome/gtksourceview/gtksourceview5_5.12.0.bb b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview5_5.12.0.bb
new file mode 100644
index 0000000000..f3267acbeb
--- /dev/null
+++ b/meta-gnome/recipes-gnome/gtksourceview/gtksourceview5_5.12.0.bb
@@ -0,0 +1,36 @@
+SUMMARY = "Portable C library for multiline text editing"
+HOMEPAGE = "http://projects.gnome.org/gtksourceview/"
+
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+
+DEPENDS = " \
+ fribidi \
+ glib-2.0-native \
+ fontconfig \
+ gtk4 \
+ libxml2 \
+ libpcre2 \
+ pango \
+"
+
+PNAME = "gtksourceview"
+
+S = "${WORKDIR}/${PNAME}-${PV}"
+
+
+inherit gnomebase lib_package gettext features_check gi-docgen gtk-icon-cache gobject-introspection vala
+
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+SRC_URI = "https://download.gnome.org/sources/gtksourceview/5.12/${PNAME}-${PV}.tar.xz"
+SRC_URI[sha256sum] = "daf32ff5d3150d6385917d3503a85b9e047ba158b2b03079314c9c00813fa01f"
+
+GIR_MESON_ENABLE_FLAG = 'enabled'
+GIR_MESON_DISABLE_FLAG = 'disabled'
+GIDOCGEN_MESON_OPTION = "documentation"
+
+PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'vulkan', d)}"
+PACKAGECONFIG[vulkan] = ",,vulkan-loader vulkan-headers"
+
+FILES:${PN} += "${datadir}/gtksourceview-5"
diff --git a/meta-gnome/recipes-gnome/gvfs/gvfs_1.41.2.bb b/meta-gnome/recipes-gnome/gvfs/gvfs_1.54.0.bb
index 27e3f92ccb..6549b1900f 100644
--- a/meta-gnome/recipes-gnome/gvfs/gvfs_1.41.2.bb
+++ b/meta-gnome/recipes-gnome/gvfs/gvfs_1.54.0.bb
@@ -1,28 +1,35 @@
DESCRIPTION = "gvfs is a userspace virtual filesystem"
-LICENSE = "LGPLv2"
+LICENSE = "LGPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=05df38dd77c35ec8431f212410a3329e"
-GNOMEBASEBUILDCLASS = "meson"
-inherit gnomebase bash-completion gettext upstream-version-is-even
+inherit gnomebase gsettings bash-completion gettext upstream-version-is-even features_check
+
+DEPENDS += "\
+ dbus \
+ glib-2.0 \
+ glib-2.0-native \
+ gsettings-desktop-schemas \
+ libgudev \
+ libsecret \
+ libxml2 \
+ shadow-native \
+"
-DEPENDS += "libsecret glib-2.0 glib-2.0-native gconf libgudev shadow-native"
+RDEPENDS:${PN} += "gsettings-desktop-schemas"
SRC_URI = "https://download.gnome.org/sources/${BPN}/${@gnome_verdir("${PV}")}/${BPN}-${PV}.tar.xz;name=archive"
-SRC_URI[archive.md5sum] = "9a9a97a63bb9e87258d48086a6bdacaa"
-SRC_URI[archive.sha256sum] = "f311b7c5f855ebe259960c00c7d03c812e040928ecb0ec093b50a4f16b3bcf26"
+SRC_URI[archive.sha256sum] = "f53d81df86c2e86cdd25182c2d8a669a22371e83623ded1b9d5416dcfc6de366"
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
EXTRA_OEMESON = " \
-Dbluray=false \
- -Dgoa=false \
- -Dgoogle=false \
- -Dnfs=false \
"
PACKAGES =+ "gvfsd-ftp gvfsd-sftp gvfsd-trash"
-FILES_${PN} += " \
+FILES:${PN} += " \
${datadir}/glib-2.0 \
${datadir}/GConf \
${datadir}/dbus-1/services \
@@ -31,14 +38,14 @@ FILES_${PN} += " \
${systemd_user_unitdir} \
"
-FILES_${PN}-dbg += "${libdir}/gio/modules/.debug/*"
-FILES_${PN}-dev += "${libdir}/gio/modules/*.la"
+FILES:${PN}-dbg += "${libdir}/gio/modules/.debug/*"
+FILES:${PN}-dev += "${libdir}/gio/modules/*.la"
-FILES_gvfsd-ftp = "${libexecdir}/gvfsd-ftp ${datadir}/gvfs/mounts/ftp.mount"
-FILES_gvfsd-sftp = "${libexecdir}/gvfsd-sftp ${datadir}/gvfs/mounts/sftp.mount"
-FILES_gvfsd-trash = "${libexecdir}/gvfsd-trash ${datadir}/gvfs/mounts/trash.mount"
+FILES:gvfsd-ftp = "${libexecdir}/gvfsd-ftp ${datadir}/gvfs/mounts/ftp.mount"
+FILES:gvfsd-sftp = "${libexecdir}/gvfsd-sftp ${datadir}/gvfs/mounts/sftp.mount"
+FILES:gvfsd-trash = "${libexecdir}/gvfsd-trash ${datadir}/gvfs/mounts/trash.mount"
-RRECOMMENDS_gvfsd-ftp += "openssh-sftp openssh-ssh"
+RRECOMMENDS:gvfsd-ftp += "openssh-sftp openssh-ssh"
PACKAGECONFIG ?= "libgphoto2 \
${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
@@ -52,26 +59,25 @@ PACKAGECONFIG[afc] = "-Dafc=true, -Dafc=false, libimobiledevice libplist"
PACKAGECONFIG[archive] = "-Darchive=true, -Darchive=false, libarchive"
PACKAGECONFIG[dnssd] = "-Ddnssd=true, -Ddnssd=false, avahi"
PACKAGECONFIG[gcr] = "-Dgcr=true, -Dgcr=false, gcr"
-PACKAGECONFIG[http] = "-Dhttp=true, -Dhttp=false, libsoup-2.4"
+PACKAGECONFIG[gcrypt] = "-Dgcrypt=true, -Dgcrypt=false, libgcrypt"
+PACKAGECONFIG[goa] = "-Dgoa=true, -Dgoa=false, gnome-online-accounts"
+PACKAGECONFIG[google] = "-Dgoogle=true, -Dgoogle=false, libgdata"
+PACKAGECONFIG[http] = "-Dhttp=true, -Dhttp=false, libsoup-3.0"
PACKAGECONFIG[libmtp] = "-Dmtp=true, -Dmtp=false, libmtp"
PACKAGECONFIG[logind] = "-Dlogind=true, -Dlogind=false, systemd"
PACKAGECONFIG[libgphoto2] = "-Dgphoto2=true, -Dgphoto2=false, libgphoto2"
+PACKAGECONFIG[nfs] = "-Dnfs=true, -Dnfs=false,libnfs"
+PACKAGECONFIG[onedrive] = "-Donedrive=true, -Donedrive=false, msgraph"
PACKAGECONFIG[samba] = "-Dsmb=true, -Dsmb=false, samba"
PACKAGECONFIG[systemd] = "-Dsystemduserunitdir=${systemd_user_unitdir} -Dtmpfilesdir=${libdir}/tmpfiles.d, -Dsystemduserunitdir=no -Dtmpfilesdir=no, systemd"
# needs meta-filesystems
-PACKAGECONFIG[fuse] = "-Dfuse=true, -Dfuse=false, fuse"
+PACKAGECONFIG[fuse] = "-Dfuse=true, -Dfuse=false, fuse3"
# libcdio-paranoia recipe doesn't exist yet
PACKAGECONFIG[cdda] = "-Dcdda=true, -Dcdda=false, libcdio-paranoia"
-do_install_append() {
- if ${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'true', 'false', d)}; then
- # Fix up permissions on polkit rules.d to work with rpm4 constraints
- chmod 700 ${D}/${datadir}/polkit-1/rules.d
- chown polkitd:root ${D}/${datadir}/polkit-1/rules.d
- fi
-
+do_install:append() {
# After rebuilds (not from scracth) it can happen that the executables in
# libexec ar missing executable permission flag. Not sure but it came up
# during transition to meson. Looked into build files and logs but could
diff --git a/meta-gnome/recipes-gnome/libchamplain/libchamplain_0.12.21.bb b/meta-gnome/recipes-gnome/libchamplain/libchamplain_0.12.21.bb
new file mode 100644
index 0000000000..a89ab8cc74
--- /dev/null
+++ b/meta-gnome/recipes-gnome/libchamplain/libchamplain_0.12.21.bb
@@ -0,0 +1,14 @@
+SUMMARY = "libchamplain is a Gtk widget displaying zoomable and pannable maps"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
+DEPENDS = "glib-2.0 gtk+3 clutter-1.0 clutter-gtk-1.0 libsoup-3.0 cairo sqlite3"
+
+inherit features_check gobject-introspection meson pkgconfig vala
+
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+SRCREV = "941560af497148588783db991e8135f52a82574d"
+SRC_URI = "git://github.com/gnome/libchamplain.git;branch=master;protocol=https"
+
+S = "${WORKDIR}/git"
+
diff --git a/meta-gnome/recipes-gnome/libgdata/libgdata_0.17.10.bb b/meta-gnome/recipes-gnome/libgdata/libgdata_0.18.1.bb
index 7bedd87ad0..a65fc61feb 100644
--- a/meta-gnome/recipes-gnome/libgdata/libgdata_0.17.10.bb
+++ b/meta-gnome/recipes-gnome/libgdata/libgdata_0.18.1.bb
@@ -2,23 +2,26 @@ SUMMARY = "GLib-based library for accessing online service APIs using the GData
HOMEPAGE = "http://live.gnome.org/libgdata"
BUGTRACKER = "https://bugzilla.gnome.org/"
-LICENSE = "LGPLv2.1"
+LICENSE = "LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24 \
file://gdata/gdata.h;endline=20;md5=079a554efcf65d46f96a515806e7e99a \
file://gdata/gdata-types.h;endline=20;md5=7399b111aac8718da13888fc634be6ef"
-DEPENDS = "libxml2 glib-2.0 libsoup-2.4 intltool-native liboauth gcr json-glib"
+DEPENDS = "libxml2 glib-2.0 libsoup-2.4 intltool-native liboauth gcr3 json-glib"
GTKDOC_MESON_OPTION = "gtk_doc"
-GNOMEBASEBUILDCLASS = "meson"
-inherit gnomebase pkgconfig gettext gtk-doc vala gobject-introspection manpages
+inherit gnomebase pkgconfig gettext gtk-doc vala gobject-introspection manpages features_check
-do_compile_prepend() {
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG', 'goa', 'opengl', '', d)}"
+
+do_compile:prepend() {
export GIR_EXTRA_LIBS_PATH="${B}/gdata/.libs"
}
-PACKAGECONFIG ??= ""
+# goa is required for gnome-photos
+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"
@@ -26,5 +29,4 @@ PACKAGECONFIG[vala] = "-Dvapi=true,-Dvapi=false"
EXTRA_OEMESON = "-Dalways_build_tests=false"
-SRC_URI[archive.md5sum] = "d858d411ad394c275643b14993dfeed4"
-SRC_URI[archive.sha256sum] = "c1d3d1f303f6a0416a0dac355a195276c31157a74bb1d040772d46d1cb15b012"
+SRC_URI[archive.sha256sum] = "dd8592eeb6512ad0a8cf5c8be8c72e76f74bfe6b23e4dd93f0756ee0716804c7"
diff --git a/meta-gnome/recipes-gnome/libgnome/libgnomekbd_3.26.1.bb b/meta-gnome/recipes-gnome/libgnome/libgnomekbd_3.26.1.bb
deleted file mode 100644
index d9f6431069..0000000000
--- a/meta-gnome/recipes-gnome/libgnome/libgnomekbd_3.26.1.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-SUMMARY = "GNOME keyboard library"
-LICENSE = "LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=6e29c688d912da12b66b73e32b03d812"
-
-SECTION = "x11/gnome/libs"
-
-DEPENDS = "gconf glib-2.0 libxklavier gtk+3 intltool-native"
-
-inherit distro_features_check gnomebase gobject-introspection gettext
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI[archive.md5sum] = "98040022484406e7ebe25f82cef93344"
-SRC_URI[archive.sha256sum] = "f7ca02631576e9b88aee1b1bae37ac1488b80ee7975f20a97f29e761a7172679"
-
-EXTRA_OECONF_remove = "--disable-schemas-install"
-
diff --git a/meta-gnome/recipes-gnome/libgsf/libgsf/0001-Compilation-attempt-fixes-for-libxml-2.13.patch b/meta-gnome/recipes-gnome/libgsf/libgsf/0001-Compilation-attempt-fixes-for-libxml-2.13.patch
new file mode 100644
index 0000000000..08ff51205a
--- /dev/null
+++ b/meta-gnome/recipes-gnome/libgsf/libgsf/0001-Compilation-attempt-fixes-for-libxml-2.13.patch
@@ -0,0 +1,105 @@
+From 4a84e9857d83f684bf53d616942a393ce558a328 Mon Sep 17 00:00:00 2001
+From: Morten Welinder <terra@gnome.org>
+Date: Wed, 3 Jul 2024 19:18:15 -0400
+Subject: [PATCH] Compilation: attempt fixes for libxml 2.13
+
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/libgsf/-/commit/5d4bb55095d3d6ef793c1908a88504183e28644c]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 1 +
+ gsf/gsf-input-http.c | 19 +++++++++++++++++++
+ 2 files changed, 20 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index fceb776..7c2f946 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -238,6 +238,7 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <glib/gstdio.h>]], [[(void)g_chown("/
+ AC_MSG_RESULT(yes)],
+ [AC_MSG_RESULT(no)])
+ AC_CHECK_FUNCS(g_date_time_new_from_iso8601 g_date_time_format_iso8601)
++AC_CHECK_FUNCS(xmlNanoHTTPOpen xmlNanoHTTPClose)
+ CFLAGS=$SAVE_CFLAGS
+ LIBS=$SAVE_LIBS
+
+diff --git a/gsf/gsf-input-http.c b/gsf/gsf-input-http.c
+index bdde3c8..03f4045 100644
+--- a/gsf/gsf-input-http.c
++++ b/gsf/gsf-input-http.c
+@@ -23,7 +23,10 @@
+ #include <gsf/gsf-input-http.h>
+ #include <gsf/gsf.h>
+
++#ifdef HAVE_XMLNANOHTTPOPEN
++// It's going away, so make it conditional
+ #include <libxml/nanohttp.h>
++#endif
+
+ struct _GsfInputHTTP {
+ GsfInput input;
+@@ -74,7 +77,9 @@ gsf_input_http_finalize (GObject *obj_input)
+ input->content_type = NULL;
+
+ if (input->ctx) {
++#ifdef HAVE_XMLNANOHTTPCLOSE
+ xmlNanoHTTPClose ((gpointer) input->ctx);
++#endif
+ input->ctx = NULL;
+ }
+
+@@ -215,6 +220,7 @@ gsf_input_http_get_content_type (GsfInputHTTP *input)
+ return content_type;
+ }
+
++#ifdef HAVE_XMLNANOHTTPOPEN
+ static GsfInput *
+ make_local_copy (gpointer *ctx)
+ {
+@@ -254,6 +260,7 @@ make_local_copy (gpointer *ctx)
+
+ return copy;
+ }
++#endif
+
+ /**
+ * gsf_input_http_new:
+@@ -265,6 +272,7 @@ make_local_copy (gpointer *ctx)
+ GsfInput *
+ gsf_input_http_new (gchar const * url, GError **error G_GNUC_UNUSED)
+ {
++#ifdef HAVE_XMLNANOHTTPOPEN
+ GObject *obj;
+ GsfInput *input;
+ gpointer ctx;
+@@ -293,6 +301,10 @@ gsf_input_http_new (gchar const * url, GError **error G_GNUC_UNUSED)
+ GSF_INPUT_HTTP (obj)->ctx = ctx;
+
+ return GSF_INPUT (obj);
++#else
++ g_return_val_if_fail(url != NULL, NULL);
++ return NULL;
++#endif
+ }
+
+ static GsfInput *
+@@ -304,6 +316,7 @@ gsf_input_http_dup (GsfInput *src, GError **err)
+ static guint8 const *
+ gsf_input_http_read (GsfInput *input, size_t num_bytes, guint8 *buffer)
+ {
++#ifdef HAVE_XMLNANOHTTPOPEN
+ int nread;
+ size_t total_read;
+ gpointer ctx = GSF_INPUT_HTTP (input)->ctx;
+@@ -324,6 +337,12 @@ gsf_input_http_read (GsfInput *input, size_t num_bytes, guint8 *buffer)
+ return NULL;
+ }
+ return buffer;
++#else
++ (void)input;
++ (void)num_bytes;
++ (void)buffer;
++ return NULL;
++#endif
+ }
+
+ static gboolean
diff --git a/meta-gnome/recipes-gnome/libgsf/files/0001-configure.ac-drop-a-copy-paste-of-introspection.m4-m.patch b/meta-gnome/recipes-gnome/libgsf/libgsf/0001-configure.ac-drop-a-copy-paste-of-introspection.m4-m.patch
index bc0090e17b..bc0090e17b 100644
--- a/meta-gnome/recipes-gnome/libgsf/files/0001-configure.ac-drop-a-copy-paste-of-introspection.m4-m.patch
+++ b/meta-gnome/recipes-gnome/libgsf/libgsf/0001-configure.ac-drop-a-copy-paste-of-introspection.m4-m.patch
diff --git a/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.45.bb b/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.45.bb
deleted file mode 100644
index ac36ceb046..0000000000
--- a/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.45.bb
+++ /dev/null
@@ -1,27 +0,0 @@
-SUMMARY = "GNOME Structured File Library"
-LICENSE = "GPLv2 & LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=dc7371b50816c96e145fa0f8ade8e24d \
- file://COPYING.LIB;md5=61464cfe342798eeced82efe9ae55f63"
-
-SECTION = "libs"
-
-DEPENDS= "libxml2 bzip2 glib-2.0 zlib intltool-native gnome-common-native"
-
-inherit autotools pkgconfig gnomebase gobject-introspection
-
-SRC_URI += "file://0001-configure.ac-drop-a-copy-paste-of-introspection.m4-m.patch"
-
-SRC_URI[archive.md5sum] = "e45cc8aa9c49516d540b7d7307f755f1"
-SRC_URI[archive.sha256sum] = "5cbc2c0f1dc44d202fa0c6e3a51e9f17b0c2deb8711ba650432bfde3180b69fa"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[gdk-pixbuf] = "--with-gdk-pixbuf,--without-gdk-pixbuf,gdk-pixbuf"
-
-EXTRA_OECONF = "\
- --disable-gtk-doc \
- --with-bz2 \
-"
-
-RDEPENDS_${PN} = "gconf"
-
-FILES_${PN} += "${datadir}/thumbnailers"
diff --git a/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.52.bb b/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.52.bb
new file mode 100644
index 0000000000..97cbbe450c
--- /dev/null
+++ b/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.52.bb
@@ -0,0 +1,23 @@
+SUMMARY = "GNOME Structured File Library"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=61464cfe342798eeced82efe9ae55f63"
+
+SECTION = "libs"
+
+DEPENDS= "libxml2 bzip2 glib-2.0 zlib"
+
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase gobject-introspection gettext gtk-doc
+
+SRC_URI[archive.sha256sum] = "9181c914b9fac0e05d6bcaa34c7b552fe5fc0961d3c9f8c01ccc381fb084bcf0"
+SRC_URI += "file://0001-configure.ac-drop-a-copy-paste-of-introspection.m4-m.patch \
+ file://0001-Compilation-attempt-fixes-for-libxml-2.13.patch"
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[gdk-pixbuf] = "--with-gdk-pixbuf,--without-gdk-pixbuf,gdk-pixbuf"
+
+EXTRA_OECONF = "\
+ --with-bz2 \
+"
+
+FILES:${PN} += "${datadir}/thumbnailers"
diff --git a/meta-gnome/recipes-gnome/libgtkstylus/files/gtkstylus.sh b/meta-gnome/recipes-gnome/libgtkstylus/files/gtkstylus.sh
deleted file mode 100644
index b1302ede0e..0000000000
--- a/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-gnome/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb b/meta-gnome/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb
deleted file mode 100644
index a7c8a6fce1..0000000000
--- a/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 distro_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-gnome/recipes-gnome/libgtop/libgtop/0001-netload-Include-libc-net-headers-unconditionally.patch b/meta-gnome/recipes-gnome/libgtop/libgtop/0001-netload-Include-libc-net-headers-unconditionally.patch
deleted file mode 100644
index c4f7da4bf6..0000000000
--- a/meta-gnome/recipes-gnome/libgtop/libgtop/0001-netload-Include-libc-net-headers-unconditionally.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 3c6f70e50cb586ac4add4dea627c316242691040 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 13 Jul 2017 09:17:29 -0700
-Subject: [PATCH] netload: Include libc net headers unconditionally
-
-This fixes compile with musl, and this conditional
-is not needed now a days if we are still using glibc < 1.0
-we have other bigger problems
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- sysdeps/linux/netload.c | 11 -----------
- 1 file changed, 11 deletions(-)
-
-diff --git a/sysdeps/linux/netload.c b/sysdeps/linux/netload.c
-index c275db2..446bddd 100644
---- a/sysdeps/linux/netload.c
-+++ b/sysdeps/linux/netload.c
-@@ -34,8 +34,6 @@
- #include <sys/socket.h>
- #include <sys/ioctl.h>
-
--#if !defined (_LIBC) && defined (__GNU_LIBRARY__) && __GNU_LIBRARY__ > 1
--/* GNU LibC */
- #include <net/if.h>
- #include <netinet/ip_icmp.h>
- #include <netinet/in.h>
-@@ -43,15 +41,6 @@
- #include <netinet/tcp.h>
- #include <netinet/udp.h>
- #include <net/if.h>
--#else /* Libc 5 */
--#include <linux/if.h>
--#include <linux/in.h>
--#include <linux/ip.h>
--#include <linux/icmp.h>
--#include <linux/tcp.h>
--#include <linux/udp.h>
--#endif
--
-
- #ifdef HAVE_IFADDRS_H
- /* needed for IPV6 support */
---
-2.13.2
-
diff --git a/meta-gnome/recipes-gnome/libgtop/libgtop_2.40.0.bb b/meta-gnome/recipes-gnome/libgtop/libgtop_2.40.0.bb
deleted file mode 100644
index b594198a4a..0000000000
--- a/meta-gnome/recipes-gnome/libgtop/libgtop_2.40.0.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "LibGTop2"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-
-inherit gnomebase lib_package gtk-doc gobject-introspection gettext upstream-version-is-even
-
-# depends on libxau
-inherit distro_features_check
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI[archive.md5sum] = "c6d67325cd97b2208b41e07e6cc7b947"
-SRC_URI[archive.sha256sum] = "78f3274c0c79c434c03655c1b35edf7b95ec0421430897fb1345a98a265ed2d4"
-
-DEPENDS = "glib-2.0 libxau"
-
-EXTRA_OEMAKE += "LIBGTOP_LIBS="
diff --git a/meta-gnome/recipes-gnome/libgtop/libgtop_2.41.3.bb b/meta-gnome/recipes-gnome/libgtop/libgtop_2.41.3.bb
new file mode 100644
index 0000000000..5587baa0f7
--- /dev/null
+++ b/meta-gnome/recipes-gnome/libgtop/libgtop_2.41.3.bb
@@ -0,0 +1,12 @@
+SUMMARY = "A library for collecting system monitoring data"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase lib_package gtk-doc gobject-introspection gettext upstream-version-is-even features_check
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+
+SRC_URI[archive.sha256sum] = "775676df958e2ea2452f7568f28b2ea581063d312773dd5c0b7624c1b9b2da8c"
+
+DEPENDS = "glib-2.0 libxau"
diff --git a/meta-gnome/recipes-gnome/libgweather/libgweather4/0001-Allow-building-gir-in-cross-environments.patch b/meta-gnome/recipes-gnome/libgweather/libgweather4/0001-Allow-building-gir-in-cross-environments.patch
new file mode 100644
index 0000000000..3a075de651
--- /dev/null
+++ b/meta-gnome/recipes-gnome/libgweather/libgweather4/0001-Allow-building-gir-in-cross-environments.patch
@@ -0,0 +1,26 @@
+From 179102310e9a3729fb5b00f2a7bf24b12f4a7a83 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Sat, 16 Apr 2022 20:04:14 +0200
+Subject: [PATCH] Allow building gir in cross environments
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+For us this works perfectly fine
+
+Upstream-Status: Inappropriate [OE-specific]
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+
+--- a/meson.build 2022-09-18 14:48:53.000000000 +0200
++++ b/meson.build 2022-11-26 14:05:13.302487232 +0100
+@@ -51,7 +51,7 @@
+ gen_locations_variant = find_program('build-aux/meson/gen_locations_variant.py')
+
+ g_ir_scanner = find_program('g-ir-scanner', required: get_option('introspection'))
+-build_gir = get_option('introspection') and g_ir_scanner.found() and not meson.is_cross_build()
++build_gir = get_option('introspection') and g_ir_scanner.found()
+ build_docs = get_option('gtk_doc') and build_gir
+
+ schemas_srcdir = meson.project_source_root() / 'schemas'
diff --git a/meta-gnome/recipes-gnome/libgweather/libgweather4_4.4.2.bb b/meta-gnome/recipes-gnome/libgweather/libgweather4_4.4.2.bb
new file mode 100644
index 0000000000..e0c8724a31
--- /dev/null
+++ b/meta-gnome/recipes-gnome/libgweather/libgweather4_4.4.2.bb
@@ -0,0 +1,34 @@
+SUMMARY = "A library to access weather information from online services"
+
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+GNOMEBN = "libgweather"
+S = "${WORKDIR}/${GNOMEBN}-${PV}"
+
+inherit gnomebase gsettings gobject-introspection gettext gi-docgen vala features_check
+
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+SRC_URI += "file://0001-Allow-building-gir-in-cross-environments.patch"
+SRC_URI[archive.sha256sum] = "a6e427b4770ada48945f3aa906af710fc833cff0d42df91f1828302740d794ec"
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+VALA_MESON_OPTION = "enable_vala"
+
+DEPENDS = " \
+ geocode-glib \
+ gtk4 \
+ json-glib \
+ libsoup-3.0 \
+ python3-pygobject-native \
+"
+
+FILES:${PN} += " \
+ ${datadir}/libgweather-4 \
+ ${libdir}/libgweather-4 \
+"
+
+do_configure:prepend() {
+ cp -f ${STAGING_LIBDIR}/girepository-1.0/GLib*typelib ${STAGING_LIBDIR_NATIVE}/girepository-1.0/
+}
diff --git a/meta-gnome/recipes-gnome/libspelling/libspelling_0.2.1.bb b/meta-gnome/recipes-gnome/libspelling/libspelling_0.2.1.bb
new file mode 100644
index 0000000000..f5f8a3321e
--- /dev/null
+++ b/meta-gnome/recipes-gnome/libspelling/libspelling_0.2.1.bb
@@ -0,0 +1,13 @@
+SUMMARY = "A spellcheck library for GTK 4"
+HOMEPAGE = "https://gitlab.gnome.org/GNOME/libspelling"
+LICENSE = "LGPL-2.1-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS = "enchant2 gtk4 gtksourceview5 icu"
+
+inherit gnomebase pkgconfig gettext gi-docgen vala gobject-introspection
+
+GIR_MESON_OPTION = ''
+GIDOCGEN_MESON_OPTION = 'docs'
+
+SRC_URI[archive.sha256sum] = "7a787b467bd493f6baffb44138dbc4bef78aaab60efb76a7db88b243bf0f6343"
diff --git a/meta-gnome/recipes-gnome/libtimezonemap/libtimezonemap_0.4.6.bb b/meta-gnome/recipes-gnome/libtimezonemap/libtimezonemap_0.4.6.bb
index 7f52c42cd0..bafe7af040 100644
--- a/meta-gnome/recipes-gnome/libtimezonemap/libtimezonemap_0.4.6.bb
+++ b/meta-gnome/recipes-gnome/libtimezonemap/libtimezonemap_0.4.6.bb
@@ -1,21 +1,20 @@
DESCRIPTION = "Time zone map widget for Gtk+"
HOMEPAGE = "https://launchpad.net/timezonemap"
SECTION = "devel/lib"
-LICENSE = "GPLv3"
+LICENSE = "GPL-3.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-SRC_URI = "http://archive.ubuntu.com/ubuntu/pool/main/libt/${BPN}/${BPN}_${PV}.tar.gz"
-SRC_URI[md5sum] = "f85a21994a397fb1ff2d3ec404bdd592"
+SRC_URI = "${DEBIAN_MIRROR}/main/libt/${BPN}/${BPN}_${PV}.orig.tar.gz;downloadfilename=${BP}.tar.gz"
SRC_URI[sha256sum] = "0d634cc2476d8f57d1ee1864bd4f442180ae4bf040a9ae4bf73b66bbd85d7195"
DEPENDS = "gtk+3 gdk-pixbuf libsoup-2.4 json-glib gnome-common-native"
B = "${S}"
-inherit distro_features_check autotools pkgconfig gobject-introspection
+inherit features_check autotools pkgconfig gobject-introspection
REQUIRED_DISTRO_FEATURES = "x11"
-do_configure_prepend() {
+do_configure:prepend() {
(cd ${S}; NOCONFIGURE="yes" . ${S}/autogen.sh)
}
diff --git a/meta-gnome/recipes-gnome/libwnck/libwnck3_3.32.0.bb b/meta-gnome/recipes-gnome/libwnck/libwnck3_3.32.0.bb
deleted file mode 100644
index e4829ea8c4..0000000000
--- a/meta-gnome/recipes-gnome/libwnck/libwnck3_3.32.0.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-SUMMARY = "Window navigation construction toolkit"
-LICENSE = "LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2"
-
-BPN = "libwnck"
-
-SECTION = "x11/libs"
-DEPENDS = "intltool-native gnome-common-native gtk+3 gdk-pixbuf-native libxres"
-
-PACKAGECONFIG ??= "startup-notification"
-PACKAGECONFIG[startup-notification] = "-Dstartup_notification=enabled,-Dstartup_notification=disabled,startup-notification"
-
-GNOMEBASEBUILDCLASS = "meson"
-GTKDOC_MESON_OPTION = "gtk_doc"
-GIR_MESON_ENABLE_FLAG = 'enabled'
-GIR_MESON_DISABLE_FLAG = 'disabled'
-
-inherit gnomebase gobject-introspection gtk-doc gettext distro_features_check
-
-SRC_URI[archive.md5sum] = "89dbe5a1843fd3745b8b64b34a2ef55d"
-SRC_URI[archive.sha256sum] = "9595835cf28d0fc6af5526a18f77f2fcf3ca8c09e36741bb33915b6e69b8e3ca"
-
-# libxres means x11 only
-REQUIRED_DISTRO_FEATURES = "x11"
diff --git a/meta-gnome/recipes-gnome/libwnck/libwnck3_43.0.bb b/meta-gnome/recipes-gnome/libwnck/libwnck3_43.0.bb
new file mode 100644
index 0000000000..c7f7989115
--- /dev/null
+++ b/meta-gnome/recipes-gnome/libwnck/libwnck3_43.0.bb
@@ -0,0 +1,26 @@
+SUMMARY = "Window navigation construction toolkit"
+LICENSE = "LGPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2"
+
+BPN = "libwnck"
+
+SECTION = "x11/libs"
+DEPENDS = "cairo glib-2.0 gtk+3"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
+PACKAGECONFIG[x11] = "-Dstartup_notification=enabled,-Dstartup_notification=disabled,startup-notification libxres"
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+GIR_MESON_ENABLE_FLAG = 'enabled'
+GIR_MESON_DISABLE_FLAG = 'disabled'
+
+inherit gnomebase gobject-introspection gtk-doc gettext features_check
+
+def gnome_verdir(v):
+ return oe.utils.trim_version(v, 1)
+
+SRC_URI[archive.sha256sum] = "905bcdb85847d6b8f8861e56b30cd6dc61eae67ecef4cd994a9f925a26a2c1fe"
+
+# gtk+3 and libepoxy need to be built with x11 PACKAGECONFIG.
+# cairo would at least needed to be built with xlib.
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
diff --git a/meta-gnome/recipes-gnome/libwnck/libwnck_2.31.0.bb b/meta-gnome/recipes-gnome/libwnck/libwnck_2.31.0.bb
index f50b9ceb93..d7f47002f8 100644
--- a/meta-gnome/recipes-gnome/libwnck/libwnck_2.31.0.bb
+++ b/meta-gnome/recipes-gnome/libwnck/libwnck_2.31.0.bb
@@ -1,5 +1,5 @@
SUMMARY = "Window navigation construction toolkit"
-LICENSE = "LGPLv2"
+LICENSE = "LGPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2"
SECTION = "x11/libs"
@@ -8,13 +8,14 @@ DEPENDS = "intltool-native gnome-common-native gtk+ gdk-pixbuf-native libxres"
PACKAGECONFIG ??= "startup-notification"
PACKAGECONFIG[startup-notification] = "--enable-startup-notification,--disable-startup-notification,startup-notification"
-inherit gnomebase gobject-introspection distro_features_check
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase gobject-introspection features_check gtk-doc
REQUIRED_DISTRO_FEATURES = "x11"
SRC_URI[archive.md5sum] = "f03e1139296e2a3a92e3b65a3080cd32"
SRC_URI[archive.sha256sum] = "83f732d20781fc88b22cdc6aaf2d4f388db6d3d4ff28d1a8fd45be9fb7743a9e"
-do_install_append() {
+do_install:append() {
# to avoid conflicts with libwnck3 remove cmdline tools
# if the tools are requrired add libwnck3 to your image
rm ${D}${bindir}/wnckprop
diff --git a/meta-gnome/recipes-gnome/libxklavier/libxklavier/fix-do_installe-failure.patch b/meta-gnome/recipes-gnome/libxklavier/libxklavier/fix-do_installe-failure.patch
index 29eeef3d50..6c32bfa14f 100644
--- a/meta-gnome/recipes-gnome/libxklavier/libxklavier/fix-do_installe-failure.patch
+++ b/meta-gnome/recipes-gnome/libxklavier/libxklavier/fix-do_installe-failure.patch
@@ -12,7 +12,7 @@ libxklavier.vapi': No such file or directory
| 21 make[3]: *** [install-vapiDATA] Error 1
| 22 make[3]: *** Waiting for unfinished jobs....
-Upstream-Stauts: Pending
+Upstream-Status: Pending
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
diff --git a/meta-gnome/recipes-gnome/libxklavier/libxklavier_5.4.bb b/meta-gnome/recipes-gnome/libxklavier/libxklavier_5.4.bb
index 501a449725..f52c210ed4 100644
--- a/meta-gnome/recipes-gnome/libxklavier/libxklavier_5.4.bb
+++ b/meta-gnome/recipes-gnome/libxklavier/libxklavier_5.4.bb
@@ -1,14 +1,14 @@
SUMMARY = "Helper lib for keyboard management"
-LICENSE = "LGPLv2"
+LICENSE = "LGPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=6e29c688d912da12b66b73e32b03d812"
DEPENDS = "xkbcomp gtk+ iso-codes libxi libxml2"
-inherit autotools pkgconfig gettext gobject-introspection distro_features_check
+inherit autotools pkgconfig gettext gobject-introspection features_check gtk-doc
REQUIRED_DISTRO_FEATURES = "x11"
-RDEPENDS_${PN} += "iso-codes xkbcomp"
+RDEPENDS:${PN} += "iso-codes xkbcomp"
SRC_URI = " \
http://pkgs.fedoraproject.org/repo/pkgs/${BPN}/${BPN}-${PV}.tar.bz2/13af74dcb6011ecedf1e3ed122bd31fa/${BPN}-${PV}.tar.bz2 \
@@ -18,16 +18,16 @@ SRC_URI = " \
SRC_URI[md5sum] = "13af74dcb6011ecedf1e3ed122bd31fa"
SRC_URI[sha256sum] = "17a34194df5cbcd3b7bfd0f561d95d1f723aa1c87fca56bc2c209514460a9320"
-FILES_${PN} += "${datadir}/*"
+FILES:${PN} += "${datadir}/*"
EXTRA_OECONF = "--with-xkb-bin-base=${bindir}"
-do_configure_append() {
+do_configure:append() {
find ${B} -name Makefile | xargs sed -i s:'-I$(includedir)':'-I.':g
find ${B} -name Makefile | xargs sed -i s:'-I/usr/include':'-I${STAGING_INCDIR}':g
}
-do_compile_append() {
+do_compile:append() {
sed -i -e s:${STAGING_DIR_TARGET}::g \
-e s:/${TARGET_SYS}::g \
libxklavier.pc
diff --git a/meta-gnome/recipes-gnome/metacity/metacity/0001-drop-zenity-detection.patch b/meta-gnome/recipes-gnome/metacity/metacity/0001-drop-zenity-detection.patch
index 3493e511be..cd46824c39 100644
--- a/meta-gnome/recipes-gnome/metacity/metacity/0001-drop-zenity-detection.patch
+++ b/meta-gnome/recipes-gnome/metacity/metacity/0001-drop-zenity-detection.patch
@@ -1,11 +1,11 @@
-From ec0e52b49c9b6869413c9544c2ed44710ab91141 Mon Sep 17 00:00:00 2001
+From d36e65f3e31c882f62d5cfeb7b0e1441d5fdc821 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Sat, 14 Apr 2018 16:15:59 +0800
Subject: [PATCH] drop zenity detection
OE does not support zenity
-Upstream-Status: inappropriate [OE specific]
+Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
@@ -13,10 +13,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
1 file changed, 5 deletions(-)
diff --git a/configure.ac b/configure.ac
-index 5f9e7e9..80b32c7 100644
+index bbb4db8..2010d78 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -359,11 +359,6 @@ fi
+@@ -336,11 +336,6 @@ fi
AM_CONDITIONAL(HAVE_SM, test "$found_sm" = "yes")
@@ -25,9 +25,6 @@ index 5f9e7e9..80b32c7 100644
- AC_MSG_ERROR([zenity not found in your path - needed for dialogs])
-fi
-
- dnl **************************************************************************
- dnl Check for Vulkan support
- dnl **************************************************************************
---
-1.8.3.1
-
+ AC_SEARCH_LIBS([dlsym], [dl], [], [
+ AC_MSG_ERROR([unable to find the dlsym() function])
+ ])
diff --git a/meta-gnome/recipes-gnome/metacity/metacity_3.32.0.bb b/meta-gnome/recipes-gnome/metacity/metacity_3.32.0.bb
deleted file mode 100644
index ef6ea7946a..0000000000
--- a/meta-gnome/recipes-gnome/metacity/metacity_3.32.0.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-SECTION = "x11/wm"
-SUMMARY = "Metacity is the boring window manager for the adult in you"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b4cce53560b8e619ffa7c830fb8761aa \
- file://src/include/main.h;endline=24;md5=72148ede07a6dadd01de6a882d20a9ad"
-
-PE = "1"
-
-DEPENDS = "gsettings-desktop-schemas startup-notification \
- gnome-doc-utils gdk-pixbuf-native \
- gtk+3 glib-2.0 libcanberra libgtop intltool-native"
-
-inherit autotools gettext gnomebase distro_features_check
-# depends on startup-notification which depends on virtual/libx11
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI = "git://github.com/GNOME/metacity.git;branch=master \
- file://0001-drop-zenity-detection.patch \
-"
-
-S = "${WORKDIR}/git"
-SRCREV = "bf1bfbadf47eff97703df17e95b15168e2034222"
-
-EXTRA_OECONF += "--disable-xinerama"
-
-PACKAGECONFIG ?= ""
-
-# enable as neccessary until new warnings are dealt with
-PACKAGECONFIG[werror] = "--enable-Werror,--disable-Werror,,"
-
-do_configure_prepend() {
- cd ${S}
- aclocal --install || exit 1
- autoreconf --verbose --force --install -Wno-portability || exit 1
- cd -
-
-}
-
-FILES_${PN} += "${datadir}/themes ${datadir}/gnome-control-center ${datadir}/gnome"
-RDEPENDS_${PN} += "gsettings-desktop-schemas"
-
diff --git a/meta-gnome/recipes-gnome/metacity/metacity_3.52.0.bb b/meta-gnome/recipes-gnome/metacity/metacity_3.52.0.bb
new file mode 100644
index 0000000000..32f0801706
--- /dev/null
+++ b/meta-gnome/recipes-gnome/metacity/metacity_3.52.0.bb
@@ -0,0 +1,40 @@
+SECTION = "x11/wm"
+SUMMARY = "Metacity is the boring window manager for the adult in you"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b4cce53560b8e619ffa7c830fb8761aa \
+ file://src/include/main.h;endline=24;md5=72148ede07a6dadd01de6a882d20a9ad"
+
+PE = "1"
+
+DEPENDS = " \
+ gdk-pixbuf-native \
+ gtk+3 \
+ gsettings-desktop-schemas \
+ startup-notification \
+ libcanberra \
+ libgtop \
+ libxres \
+ libxpresent \
+"
+
+
+# depends on startup-notification which depends on virtual/libx11
+REQUIRED_DISTRO_FEATURES = "x11"
+
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase gsettings gettext upstream-version-is-even features_check
+
+SRC_URI[archive.sha256sum] = "a72438ace6d5903ae79338c6098b1b35ab91c8a97c4323701d3bef1f3eeb191c"
+SRC_URI += "file://0001-drop-zenity-detection.patch"
+
+PACKAGECONFIG[xinerama] = "--enable-xinerama,--disable-xinerama,libxinerama"
+# enable as neccessary until new warnings are dealt with
+PACKAGECONFIG[werror] = "--enable-Werror,--disable-Werror,,"
+
+FILES:${PN} += " \
+ ${datadir}/themes \
+ ${datadir}/gnome-control-center \
+ ${datadir}/gnome\
+"
+
+RDEPENDS:${PN} += "gsettings-desktop-schemas"
diff --git a/meta-gnome/recipes-gnome/msgraph/msgraph_0.2.3.bb b/meta-gnome/recipes-gnome/msgraph/msgraph_0.2.3.bb
new file mode 100644
index 0000000000..f3f66c3dcf
--- /dev/null
+++ b/meta-gnome/recipes-gnome/msgraph/msgraph_0.2.3.bb
@@ -0,0 +1,19 @@
+SUMMARY = "libmsgraph is a GLib-based library for accessing online serive APIs using MS Graph protocol."
+LICENSE = "LGPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3000208d539ec061b899bce1d9ce9404"
+
+inherit gnomebase gobject-introspection gi-docgen features_check
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+SRC_URI[archive.sha256sum] = "ed42e800cb7f0a07477cd9e3e744cdc1a240a6ad7ab96b8a875806267a9fddb0"
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+EXTRA_OEMESON = "-Dtests=false"
+
+DEPENDS = " \
+ glib-2.0\
+ json-glib \
+ rest \
+ gnome-online-accounts \
+"
diff --git a/meta-gnome/recipes-gnome/mutter/mutter_46.4.bb b/meta-gnome/recipes-gnome/mutter/mutter_46.4.bb
new file mode 100644
index 0000000000..c91744cf66
--- /dev/null
+++ b/meta-gnome/recipes-gnome/mutter/mutter_46.4.bb
@@ -0,0 +1,109 @@
+SUMMARY = "Window and compositing manager based on Clutter"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+DEPENDS = " \
+ xserver-xorg-cvt-native \
+ wayland-native \
+ virtual/libx11 \
+ colord \
+ graphene \
+ gtk4 \
+ gdk-pixbuf \
+ cairo \
+ pango \
+ gsettings-desktop-schemas \
+ json-glib \
+ libei \
+ libxtst \
+ libxkbfile \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xinerama', '', d)} \
+ xwayland \
+"
+
+
+inherit gnomebase gsettings gobject-introspection gettext features_check
+
+SRC_URI[archive.sha256sum] = "611bd9cf982adb56597ce2b34224272fda619bb3bb912a684d75c6f2c37502e4"
+
+# x11 is still manadatory - see meson.build
+REQUIRED_DISTRO_FEATURES = "wayland x11 polkit"
+
+# systemd can be replaced by libelogind (not available atow - make systemd
+# mandatory distro feature)
+LOGIND ?= "systemd"
+REQUIRED_DISTRO_FEATURES += "systemd"
+
+# profiler requires sysprof 3.34 which is not willing to build atow
+PACKAGECONFIG ??= " \
+ native-backend \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl glx', '', d)} \
+ sm \
+ startup-notification \
+ gnome-desktop \
+"
+
+EXTRA_OEMESON += " \
+ -Dtests=false \
+ -Dnative_tests=false \
+ -Dxwayland_path=${bindir}/Xwayland \
+"
+
+# combi-config - see meson_options.txt for more details
+PACKAGECONFIG[native-backend] = "-Dnative_backend=true -Dudev=true, -Dnative_backend=false -Dudev=false, libdrm virtual/libgbm libinput ${LOGIND} virtual/egl virtual/libgles2 udev"
+PACKAGECONFIG[opengl] = "-Dopengl=true, -Dopengl=true, virtual/libgl"
+PACKAGECONFIG[glx] = "-Dglx=true, -Dglx=false"
+PACKAGECONFIG[libdisplay-info] = "-Dlibdisplay_info=true, -Dlibdisplay_info=false, libdisplay-info"
+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"
+PACKAGECONFIG[gnome-desktop] = "-Dlibgnome_desktop=true, -Dlibgnome_desktop=false, gnome-desktop gnome-settings-daemon"
+PACKAGECONFIG[sm] = "-Dsm=true, -Dsm=false, libsm"
+PACKAGECONFIG[sound-player] = "-Dsound_player=true, -Dsound_player=false, libcanberra"
+PACKAGECONFIG[profiler] = "-Dprofiler=true,-Dprofiler=false,sysprof"
+PACKAGECONFIG[startup-notification] = "-Dstartup_notification=true, -Dstartup_notification=false, startup-notification, startup-notification"
+
+MUTTER_API_NAME = "mutter-14"
+
+do_install:prepend() {
+ sed -i -e 's|${B}/||g' ${B}/cogl/cogl/cogl-enum-types.c
+ sed -i -e 's|${B}/||g' ${B}/clutter/clutter/clutter-enum-types.c
+ sed -i -e 's|${B}/||g' ${B}/src/meta-private-enum-types.c
+ sed -i -e 's|${B}/||g' ${B}/src/meta/meta-enum-types.c
+}
+
+do_install:append() {
+ # Add gir links in standard paths. That makes dependents life much easier
+ # to find them
+ install -d ${D}${datadir}/gir-1.0
+ for gir_full in `find ${D}${libdir}/${MUTTER_API_NAME} -name '*.gir'`; do
+ gir=`basename "$gir_full"`
+ ln -sr "${D}${libdir}/${MUTTER_API_NAME}/$gir" "${D}${datadir}/gir-1.0/$gir"
+ done
+}
+
+GSETTINGS_PACKAGE = "${PN}-gsettings"
+
+PACKAGES =+ "${PN}-tests ${PN}-gsettings"
+
+FILES:${PN} += " \
+ ${datadir}/gnome-control-center \
+ ${datadir}/gir-1.0 \
+ ${libdir}/${MUTTER_API_NAME}/lib*${SOLIBS} \
+ ${libdir}/${MUTTER_API_NAME}/*.typelib \
+ ${libdir}/${MUTTER_API_NAME}/plugins \
+"
+
+FILES:${PN}-tests += " \
+ ${datadir}/installed-tests \
+ ${datadir}/${MUTTER_API_NAME}/tests \
+ ${libexecdir}/installed-tests/${MUTTER_API_NAME} \
+"
+
+FILES:${PN}-dev += " \
+ ${libdir}/${MUTTER_API_NAME}/*.gir \
+ ${libdir}/${MUTTER_API_NAME}/lib*.so \
+"
+
+RDEPENDS:${PN} += "${PN}-gsettings gsettings-desktop-schemas"
+
diff --git a/meta-gnome/recipes-gnome/nautilus/nautilus/0001-nautilus-drop-gnome-desktop-thumbnail-API-with-new-g.patch b/meta-gnome/recipes-gnome/nautilus/nautilus/0001-nautilus-drop-gnome-desktop-thumbnail-API-with-new-g.patch
deleted file mode 100644
index f19eb49798..0000000000
--- a/meta-gnome/recipes-gnome/nautilus/nautilus/0001-nautilus-drop-gnome-desktop-thumbnail-API-with-new-g.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From a4ed38e95cbe07f02028249b8b315565a5ac1e43 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 5 May 2018 22:32:45 -0700
-Subject: [PATCH] nautilus: drop gnome-desktop thumbnail API with new
- gdk-pixbuf
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-If gdk-pixbuf >= 2.36.5 is available, its scaling API can do what we
-want, so we don’t need to use the deprecated gnome-desktop one.
-
-Also fixes compile errors seen on master
-nautilus-properties-window.c:5101: undefined reference to `gnome_desktop_thumbnail_scale_down_pixbuf'
-
-Upstream-Status: Backport
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/nautilus-properties-window.c | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/src/nautilus-properties-window.c b/src/nautilus-properties-window.c
-index dea8b0f..fad9bd1 100644
---- a/src/nautilus-properties-window.c
-+++ b/src/nautilus-properties-window.c
-@@ -5098,10 +5098,11 @@ update_preview_callback (GtkFileChooser *icon_chooser,
- scale = (double)gdk_pixbuf_get_height (pixbuf) /
- gdk_pixbuf_get_width (pixbuf);
-
-- scaled_pixbuf = gnome_desktop_thumbnail_scale_down_pixbuf
-+ scaled_pixbuf = gdk_pixbuf_scale_simple
- (pixbuf,
- PREVIEW_IMAGE_WIDTH,
-- scale * PREVIEW_IMAGE_WIDTH);
-+ scale * PREVIEW_IMAGE_WIDTH,
-+ GDK_INTERP_HYPER);
- g_object_unref (pixbuf);
- pixbuf = scaled_pixbuf;
- }
diff --git a/meta-gnome/recipes-gnome/nautilus/nautilus_3.18.5.bb b/meta-gnome/recipes-gnome/nautilus/nautilus_3.18.5.bb
deleted file mode 100644
index bdb2f3c884..0000000000
--- a/meta-gnome/recipes-gnome/nautilus/nautilus_3.18.5.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-SUMMARY = "File manager for GNOME"
-SECTION = "x11/gnome"
-
-LICENSE="GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=36cf660aea2b8beffba7945f44a7e748 \
- file://COPYING.EXTENSIONS;md5=7579d6678402a1868631bf82c93ff0d4 \
- file://COPYING.LIB;md5=f30a9716ef3762e3467a2f62bf790f0a"
-
-inherit distro_features_check autotools pkgconfig gobject-introspection
-
-MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
-SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/nautilus/${MAJ_VER}/nautilus-${PV}.tar.xz \
- file://0001-nautilus-drop-gnome-desktop-thumbnail-API-with-new-g.patch \
- "
-
-SRC_URI[md5sum] = "0f578bda5655c0ce204befafca5803d7"
-SRC_URI[sha256sum] = "60a927c0522b4cced9d8f62baed2ee5e2fd4305be4523eb5bc44805971a6cc15"
-
-DEPENDS = "gtk+3 gnome-desktop3 gsettings-desktop-schemas glib-2.0-native intltool-native pango"
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-EXTRA_OECONF = " \
- --disable-gtk-doc \
- --disable-update-mimedb \
- --disable-nst-extension \
- --enable-tracker=no \
- --disable-schemas-compile \
- --enable-xmp=no \
- --enable-libexif=no \
-"
-
-FILES_${PN} += "${datadir}/*"
diff --git a/meta-gnome/recipes-gnome/nautilus/nautilus_46.2.bb b/meta-gnome/recipes-gnome/nautilus/nautilus_46.2.bb
new file mode 100644
index 0000000000..30e0681ae4
--- /dev/null
+++ b/meta-gnome/recipes-gnome/nautilus/nautilus_46.2.bb
@@ -0,0 +1,54 @@
+SUMMARY = "File manager for GNOME"
+SECTION = "x11/gnome"
+
+LICENSE="GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d32239bcb673463ab874e80d47fae504"
+
+
+DEPENDS = " \
+ appstream-glib-native \
+ desktop-file-utils-native \
+ glib-2.0 \
+ gnome-autoar \
+ gnome-desktop \
+ gtk4 \
+ libadwaita \
+ libcloudproviders \
+ libhandy \
+ libportal \
+ libxml2 \
+ tracker \
+"
+
+inherit gnomebase gsettings gobject-introspection gi-docgen gettext features_check mime-xdg gtk-icon-cache
+
+SRC_URI[archive.sha256sum] = "6ee8c99019b9e3447f6918d68232a20deca89e5525c05805432b7d8840ca71fa"
+
+REQUIRED_DISTRO_FEATURES = "x11 opengl gobject-introspection-data"
+
+GIDOCGEN_MESON_OPTION = "docs"
+GIDOCGEN_MESON_ENABLE_FLAG = 'true'
+GIDOCGEN_MESON_DISABLE_FLAG = 'false'
+
+EXTRA_OEMESON += " \
+ -Dtests=none \
+"
+
+PACKAGECONFIG = "extensions"
+PACKAGECONFIG[extensions] = "-Dextensions=true,-Dextensions=false, gexiv2 gstreamer1.0-plugins-base gdk-pixbuf"
+PACKAGECONFIG[packagekit] = "-Dpackagekit=true,-Dpackagekit=false,packagekit"
+
+do_install:prepend() {
+ sed -i -e 's|${B}/||g' ${B}/src/nautilus-enum-types.c
+}
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/metainfo \
+ ${datadir}/gnome-shell \
+ ${datadir}/tracker3 \
+"
+
+# mandatory - not checked during configuration:
+# | (org.gnome.Nautilus:863): GLib-GIO-ERROR **: 21:03:52.326: Settings schema 'org.freedesktop.Tracker.Miner.Files' is not installed
+RDEPENDS:${PN} += "tracker-miners bubblewrap"
diff --git a/meta-gnome/recipes-gnome/rest/librest_0.8.1.bb b/meta-gnome/recipes-gnome/rest/librest_0.8.1.bb
new file mode 100644
index 0000000000..63372afa5d
--- /dev/null
+++ b/meta-gnome/recipes-gnome/rest/librest_0.8.1.bb
@@ -0,0 +1,33 @@
+SUMMARY = "library to access web services that claim to be "RESTful""
+HOMEPAGE = "https://wiki.gnome.org/Projects/Librest"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
+
+DEPENDS = " \
+ glib-2.0 \
+ glib-2.0-native \
+ libsoup-2.4 \
+ libxml2 \
+"
+
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase gobject-introspection vala pkgconfig gtk-doc
+
+GNOMEBN = "rest"
+
+SRC_URI[archive.sha256sum] = "0513aad38e5d3cedd4ae3c551634e3be1b9baaa79775e53b2dba9456f15b01c9"
+
+S = "${WORKDIR}/${GNOMEBN}-${PV}"
+# * gnome environment requires libsoup build with in gnome PACKAGECONFIG
+# * libsoup-gnome support was removed upstream three years ago [1]
+# [1] https://gitlab.gnome.org/GNOME/librest/commit/8f904a8e2bb38a7bf72245cdf2f1ecad17e9a720
+EXTRA_OECONF = "--without-gnome"
+
+do_configure:prepend() {
+ # rest expects introspection.m4 at custom location (see aclocal.m4).
+ cp -f ${STAGING_DIR_TARGET}/${datadir}/aclocal/introspection.m4 ${S}/build
+}
+
+do_compile:prepend() {
+ export GIR_EXTRA_LIBS_PATH="${B}/rest/.libs"
+}
diff --git a/meta-gnome/recipes-gnome/rest/rest_0.9.1.bb b/meta-gnome/recipes-gnome/rest/rest_0.9.1.bb
new file mode 100644
index 0000000000..3b22fdfea2
--- /dev/null
+++ b/meta-gnome/recipes-gnome/rest/rest_0.9.1.bb
@@ -0,0 +1,24 @@
+SUMMARY = "library to access web services that claim to be "RESTful""
+HOMEPAGE = "https://wiki.gnome.org/Projects/Librest"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
+
+
+DEPENDS = " \
+ glib-2.0 \
+ glib-2.0-native \
+ gtksourceview5 \
+ json-glib \
+ libadwaita \
+ libsoup-3.0 \
+ libxml2-native \
+"
+
+inherit gnomebase gobject-introspection vala pkgconfig gi-docgen features_check
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+PACKAGECONFIG ?= ""
+PACKAGECONFIG[examples] = "-Dexamples=true,-Dexamples=false"
+PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false"
+
+SRC_URI[archive.sha256sum] = "9266a5c10ece383e193dfb7ffb07b509cc1f51521ab8dad76af96ed14212c2e3"
diff --git a/meta-gnome/recipes-gnome/sysprof/sysprof/0001-libsysprof-Check-for-unw_set_caching_policy-before-u.patch b/meta-gnome/recipes-gnome/sysprof/sysprof/0001-libsysprof-Check-for-unw_set_caching_policy-before-u.patch
new file mode 100644
index 0000000000..2dca95dac5
--- /dev/null
+++ b/meta-gnome/recipes-gnome/sysprof/sysprof/0001-libsysprof-Check-for-unw_set_caching_policy-before-u.patch
@@ -0,0 +1,27 @@
+From a3316e607db2a64e030df8551455c5700b5ddfcf Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 25 Jul 2024 20:18:17 -0700
+Subject: [PATCH] libsysprof: Check for unw_set_caching_policy before using
+
+llvm libunwind does not implement unw_cache_* functions yet
+
+Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/sysprof/-/merge_requests/95]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/libsysprof/preload/backtrace-helper.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/libsysprof/preload/backtrace-helper.h b/src/libsysprof/preload/backtrace-helper.h
+index 88dc194..5c23ad3 100644
+--- a/src/libsysprof/preload/backtrace-helper.h
++++ b/src/libsysprof/preload/backtrace-helper.h
+@@ -32,7 +32,9 @@ static void
+ backtrace_init (void)
+ {
+ #ifdef ENABLE_LIBUNWIND
++# ifdef UNW_CACHE_PER_THREAD
+ unw_set_caching_policy (unw_local_addr_space, UNW_CACHE_PER_THREAD);
++# endif
+ # ifdef HAVE_UNW_SET_CACHE_SIZE
+ unw_set_cache_size (unw_local_addr_space, 1024, 0);
+ #endif
diff --git a/meta-gnome/recipes-gnome/sysprof/sysprof/0001-meson-Check-for-libunwind-instead-of-libunwind-gener.patch b/meta-gnome/recipes-gnome/sysprof/sysprof/0001-meson-Check-for-libunwind-instead-of-libunwind-gener.patch
new file mode 100644
index 0000000000..ea9bdb2eb5
--- /dev/null
+++ b/meta-gnome/recipes-gnome/sysprof/sysprof/0001-meson-Check-for-libunwind-instead-of-libunwind-gener.patch
@@ -0,0 +1,30 @@
+From 19188367bee87b0084ab34869455155da5cb1731 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 13 Apr 2022 08:47:39 -0700
+Subject: [PATCH] meson: Check for libunwind instead of libunwind-generic
+
+This helps it to use llvm unwinder since libunwind-generic is specific
+to nongnu libunwind.
+
+Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/sysprof/-/merge_requests/95]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 3d3d8b5..4a1963d 100644
+--- a/meson.build
++++ b/meson.build
+@@ -96,7 +96,7 @@ config_h.set10('HAVE_POLKIT', polkit_dep.found())
+ if get_option('libunwind')
+ # Force libunwind usage if it's specified to avoid back compiles
+ # and backtrace() showing up in builds
+- libunwind_dep = dependency('libunwind-generic', required: true)
++ libunwind_dep = dependency('libunwind', required: true)
+ config_h.set('ENABLE_LIBUNWIND', libunwind_dep.found())
+ config_h.set('HAVE_UNW_SET_CACHE_SIZE', libunwind_dep.found() and cc.has_header_symbol('libunwind.h', 'unw_set_cache_size', dependencies: [libunwind_dep]))
+ endif
+--
+2.35.2
+
diff --git a/meta-gnome/recipes-gnome/sysprof/sysprof/0002-meson-Do-not-invoke-the-commands-to-update-the-icon-.patch b/meta-gnome/recipes-gnome/sysprof/sysprof/0002-meson-Do-not-invoke-the-commands-to-update-the-icon-.patch
new file mode 100644
index 0000000000..998c20c657
--- /dev/null
+++ b/meta-gnome/recipes-gnome/sysprof/sysprof/0002-meson-Do-not-invoke-the-commands-to-update-the-icon-.patch
@@ -0,0 +1,32 @@
+From 9ad120283f4b61b97da67f18a95bb3b4f1e8a3b9 Mon Sep 17 00:00:00 2001
+From: Carlos Alberto Lopez Perez <clopez@igalia.com>
+Date: Wed, 24 Jul 2024 15:51:05 +0100
+Subject: [PATCH] meson: Do not invoke the commands to update the icon caches
+ when cross-building
+
+This does not have any useful efect when cross-building and it requires
+the cross-builder environment to have gtk4-native built in order to invoke
+gtk-update-icon-cache program.
+
+Upstream-Status: Pending
+Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com>
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 3d3d8b5..da622f1 100644
+--- a/meson.build
++++ b/meson.build
+@@ -250,7 +250,7 @@ configure_file(
+ configuration: config_h
+ )
+
+-if get_option('gtk') and gnome.found()
++if get_option('gtk') and gnome.found() and not meson.is_cross_build()
+ gnome.post_install(
+ gtk_update_icon_cache: true,
+ update_desktop_database: true
+--
+2.39.2
+
diff --git a/meta-gnome/recipes-gnome/sysprof/sysprof_3.48.0.bb b/meta-gnome/recipes-gnome/sysprof/sysprof_3.48.0.bb
new file mode 100644
index 0000000000..fccca1d8ff
--- /dev/null
+++ b/meta-gnome/recipes-gnome/sysprof/sysprof_3.48.0.bb
@@ -0,0 +1,50 @@
+SUMMARY = "System-wide Performance Profiler for Linux"
+HOMEPAGE = "http://www.sysprof.com"
+LICENSE = "GPL-3.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
+ file://src/sysprof/sysprof-application.c;endline=17;md5=a3de8df3b0f8876dd01e1388d2d4b607"
+
+inherit gnomebase gnome-help gettext systemd upstream-version-is-even gsettings mime mime-xdg
+
+DEPENDS += " \
+ glib-2.0-native \
+ yelp-tools-native \
+ libxml2-native \
+ glib-2.0 \
+ json-glib \
+"
+
+SRC_URI += "file://0001-meson-Check-for-libunwind-instead-of-libunwind-gener.patch \
+ file://0002-meson-Do-not-invoke-the-commands-to-update-the-icon-.patch \
+ file://0001-libsysprof-Check-for-unw_set_caching_policy-before-u.patch \
+ "
+SRC_URI[archive.sha256sum] = "07d9081a66cf2fb52753f48ff2b85ada75c60ff1bc1af1bd14d8aeb627972168"
+
+PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'sysprofd', '', d)} \
+ ${@bb.utils.contains_any('DISTRO_FEATURES', '${GTK3DISTROFEATURES}', 'gtk', '', d)} \
+ agent \
+ libsysprof \
+ libunwind \
+ "
+# nongnu libunwind needs porting to RV32
+PACKAGECONFIG:remove:riscv32 = "libunwind"
+
+PACKAGECONFIG[gtk] = "-Dgtk=true,-Dgtk=false,gtk4 libadwaita"
+PACKAGECONFIG[sysprofd] = "-Dsysprofd=bundled,-Dsysprofd=none,polkit"
+PACKAGECONFIG[libsysprof] = "-Dlibsysprof=true,-Dlibsysprof=false,json-glib"
+PACKAGECONFIG[libunwind] = "-Dlibunwind=true,-Dlibunwind=false,libunwind"
+PACKAGECONFIG[agent] = "-Dagent=true,-Dagent=false,"
+
+EXTRA_OEMESON += "-Dsystemdunitdir=${systemd_unitdir}/system"
+
+SOLIBS = ".so"
+FILES_SOLIBSDEV = ""
+
+SYSTEMD_SERVICE:${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'sysprofd', 'sysprof2.service sysprof3.service', '', d)}"
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1/system-services \
+ ${datadir}/dbus-1/system.d \
+ ${datadir}/dbus-1/interfaces \
+ ${datadir}/metainfo \
+"
diff --git a/meta-gnome/recipes-gnome/tecla/tecla_46.0.bb b/meta-gnome/recipes-gnome/tecla/tecla_46.0.bb
new file mode 100644
index 0000000000..62b3aa3e3e
--- /dev/null
+++ b/meta-gnome/recipes-gnome/tecla/tecla_46.0.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Tecla is a keyboard layout viewer that uses GTK/Libadwaita for UI, and libxkbcommon to deal with keyboard maps."
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=75859989545e37968a99b631ef42722e"
+
+DEPENDS = " \
+ libxkbcommon \
+ libadwaita \
+ wayland \
+ gtk4 \
+"
+
+REQUIRED_DISTRO_FEATURES = "wayland"
+
+inherit gnomebase pkgconfig features_check
+
+SRC_URI[archive.sha256sum] = "4a081eab867a5a8b09758991cad7645920f323aabca954408290fb6f44591b0f"
diff --git a/meta-gnome/recipes-gnome/tepl/tepl_6.8.0.bb b/meta-gnome/recipes-gnome/tepl/tepl_6.8.0.bb
new file mode 100644
index 0000000000..6c9c36f3ed
--- /dev/null
+++ b/meta-gnome/recipes-gnome/tepl/tepl_6.8.0.bb
@@ -0,0 +1,31 @@
+SUMMARY = "Tepl library eases the development of GtkSourceView-based projects"
+LICENSE = "LGPL-3.0-or-later"
+LIC_FILES_CHKSUM = "file://LICENSES/LGPL-3.0-or-later.txt;md5=c51d3eef3be114124d11349ca0d7e117"
+
+DEPENDS = " \
+ gsettings-desktop-schemas \
+ glib-2.0 \
+ gtk+3 \
+ libgedit-amtk \
+ libgedit-gtksourceview \
+ libxml2 \
+ uchardet \
+ gtk-doc-native \
+ libxslt-native \
+ docbook-xsl-stylesheets-native \
+ python3-pygments-native \
+"
+
+inherit meson gobject-introspection gettext features_check pkgconfig
+
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+SRC_URI = "git://gitlab.gnome.org/swilmet/tepl;protocol=https;branch=main"
+SRCREV = "16ab2567257a053bd957699f89080fafd0999035"
+S = "${WORKDIR}/git"
+
+# gobject-introspection is mandatory and cannot be configured
+REQUIRED_DISTRO_FEATURES += "gobject-introspection-data"
+GIR_MESON_OPTION = ""
+
+GTKDOC_MESON_OPTION = "gtk_doc"
diff --git a/meta-gnome/recipes-gnome/tracker/tracker-miners/0001-Set-header-file-to-a-fixed-path-instead-of-a-host-pa.patch b/meta-gnome/recipes-gnome/tracker/tracker-miners/0001-Set-header-file-to-a-fixed-path-instead-of-a-host-pa.patch
new file mode 100644
index 0000000000..36dd4a5881
--- /dev/null
+++ b/meta-gnome/recipes-gnome/tracker/tracker-miners/0001-Set-header-file-to-a-fixed-path-instead-of-a-host-pa.patch
@@ -0,0 +1,28 @@
+From 6f6d7e3995c370b8121206a7f9cc0d234553bbfe Mon Sep 17 00:00:00 2001
+From: Lei Maohui <leimaohui@fujitsu.com>
+Date: Thu, 15 Sep 2022 16:35:39 +0900
+Subject: [PATCH] Set header file to a fixed path instead of a host path.
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Lei Maohui <leimaohui@fujitsu.com>
+---
+ .../tracker-miners-enum-types.c.template | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/libtracker-miners-common/tracker-miners-enum-types.c.template b/src/libtracker-miners-common/tracker-miners-enum-types.c.template
+index 4db7ef1..7c44c13 100644
+--- a/src/libtracker-miners-common/tracker-miners-enum-types.c.template
++++ b/src/libtracker-miners-common/tracker-miners-enum-types.c.template
+@@ -7,7 +7,7 @@
+
+ /*** BEGIN file-production ***/
+ /* enumerations from "@basename@" */
+-#include "@filename@"
++#include "tracker-enums.h"
+ /*** END file-production ***/
+
+
+--
+2.34.1
+
diff --git a/meta-gnome/recipes-gnome/tracker/tracker-miners/0001-fix-reproducibility.patch b/meta-gnome/recipes-gnome/tracker/tracker-miners/0001-fix-reproducibility.patch
new file mode 100644
index 0000000000..0812e88a9e
--- /dev/null
+++ b/meta-gnome/recipes-gnome/tracker/tracker-miners/0001-fix-reproducibility.patch
@@ -0,0 +1,117 @@
+From 1b7a34b7de9eb2ae776f7cf4dc6221f49b2395ee Mon Sep 17 00:00:00 2001
+From: Markus Volk <f_l_k@t-online.de>
+Date: Tue, 12 Sep 2023 17:00:41 +0200
+Subject: [PATCH] meson: fix reproducibility
+
+Tracker's design seems to be strictly for non-cross builds and leaks buildpaths into the
+binaries at various places. Avoid this to improve binary reproducibility.
+
+todo: Some of these paths may need to be adjusted to make the test environment work
+
+Upstream-Status: Inappropriate [oe-specific]
+
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+---
+ meson.build | 8 ++++----
+ src/libtracker-miners-common/tracker-landlock.c | 4 ++--
+ src/miners/fs/meson.build | 4 ++--
+ src/tracker-extract/meson.build | 2 +-
+ tests/tracker-miner-fs/meson.build | 2 +-
+ 5 files changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 37f5148..18f4bfa 100644
+--- a/meson.build
++++ b/meson.build
+@@ -393,7 +393,7 @@ conf.set('PACKAGE_VERSION', '"@0@"'.format(meson.project_version()))
+ conf.set('TRACKER_VERSION', '"@0@"'.format(meson.project_version()))
+
+ # Config that goes in some other generated files (.desktop, .pc, etc)
+-conf.set('abs_top_builddir', meson.current_build_dir())
++conf.set('abs_top_builddir', '')
+ conf.set('exec_prefix', get_option('prefix'))
+ conf.set('bindir', join_paths(get_option('prefix'), get_option('bindir')))
+ conf.set('datadir', datadir)
+@@ -422,7 +422,7 @@ tracker_c_args = [
+ configinc = include_directories('./')
+ srcinc = include_directories('src/')
+
+-build_root = meson.current_build_dir()
++build_root = ''
+
+ # We use tracker-miners-3.0 rather than tracker3-miners inside the lib64
+ # directory, following the existing convention in that directory.
+@@ -451,8 +451,8 @@ subdir('data')
+ subdir('docs')
+
+ test_c_args = tracker_c_args + [
+- '-DTOP_BUILDDIR="@0@/"'.format(meson.build_root()),
+- '-DTOP_SRCDIR="@0@/"'.format(meson.source_root()),
++ '-DTOP_BUILDDIR="@0@/"'.format(''),
++ '-DTOP_SRCDIR="@0@/"'.format('/usr/src/debug/tracker'),
+ ]
+
+ if get_option('tests_tap_protocol')
+diff --git a/src/libtracker-miners-common/tracker-landlock.c b/src/libtracker-miners-common/tracker-landlock.c
+index 6d4510b..189d2fb 100644
+--- a/src/libtracker-miners-common/tracker-landlock.c
++++ b/src/libtracker-miners-common/tracker-landlock.c
+@@ -282,7 +282,7 @@ tracker_landlock_init (const gchar * const *indexed_folders)
+ LANDLOCK_ACCESS_FS_READ_DIR);
+ }
+ }
+-
++#if 0
+ current_dir = g_get_current_dir ();
+
+ /* Detect running in-tree */
+@@ -302,7 +302,7 @@ tracker_landlock_init (const gchar * const *indexed_folders)
+ in_tree_rules[i].flags);
+ }
+ }
+-
++#endif
+ /* Add user cache for readonly databases */
+ #ifdef MINER_FS_CACHE_LOCATION
+ add_rule (landlock_fd, MINER_FS_CACHE_LOCATION,
+diff --git a/src/miners/fs/meson.build b/src/miners/fs/meson.build
+index 6e58832..04750f8 100644
+--- a/src/miners/fs/meson.build
++++ b/src/miners/fs/meson.build
+@@ -67,8 +67,8 @@ executable('tracker-miner-fs-@0@'.format(tracker_api_major),
+ dependencies: tracker_miner_fs_deps,
+ c_args: [
+ tracker_c_args,
+- '-DBUILDROOT="@0@"'.format(meson.global_build_root()),
+- '-DBUILD_EXTRACTDIR="@0@"'.format(meson.build_root() / 'src' / 'tracker-extract'),
++ '-DBUILDROOT="@0@"'.format(get_option('prefix') / 'src'),
++ '-DBUILD_EXTRACTDIR="@0@"'.format(get_option('prefix') / 'src' / 'tracker-extract'),
+ '-DLIBEXECDIR="@0@"'.format(get_option('prefix') / get_option('libexecdir')),
+ ],
+ install: true,
+diff --git a/src/tracker-extract/meson.build b/src/tracker-extract/meson.build
+index 2e4f61d..b47581c 100644
+--- a/src/tracker-extract/meson.build
++++ b/src/tracker-extract/meson.build
+@@ -158,7 +158,7 @@ endif
+ executable('tracker-extract-@0@'.format(tracker_api_major),
+ tracker_extract_sources,
+ # Manually add the root dir to work around https://github.com/mesonbuild/meson/issues/1387
+- c_args: tracker_c_args + ['-I' + meson.build_root()],
++ c_args: tracker_c_args,
+ export_dynamic: true,
+ dependencies: tracker_extract_dependencies,
+ install: true,
+diff --git a/tests/tracker-miner-fs/meson.build b/tests/tracker-miner-fs/meson.build
+index 8c081fd..9792082 100644
+--- a/tests/tracker-miner-fs/meson.build
++++ b/tests/tracker-miner-fs/meson.build
+@@ -18,7 +18,7 @@ libtracker_miner_test_c_args = [
+ ]
+
+ libtracker_miner_test_environment = environment()
+-libtracker_miner_test_environment.set('GSETTINGS_SCHEMA_DIR', join_paths(meson.build_root(), 'data'))
++libtracker_miner_test_environment.set('GSETTINGS_SCHEMA_DIR', '/usr/src/debug/tracker-miners/data')
+
+ libtracker_miner_test_deps = [tracker_miners_common_dep, tracker_miner_dep, tracker_sparql]
+
diff --git a/meta-gnome/recipes-gnome/tracker/tracker-miners_3.7.3.bb b/meta-gnome/recipes-gnome/tracker/tracker-miners_3.7.3.bb
new file mode 100644
index 0000000000..2b2dc7c4b6
--- /dev/null
+++ b/meta-gnome/recipes-gnome/tracker/tracker-miners_3.7.3.bb
@@ -0,0 +1,86 @@
+SUMMARY = "Tracker miners and metadata extractors"
+LICENSE = "GPL-2.0-only & LGPL-2.1-only"
+LIC_FILES_CHKSUM = " \
+ file://COPYING.GPL;md5=ee31012bf90e7b8c108c69f197f3e3a4 \
+ file://COPYING.LGPL;md5=2d5025d4aa3495befef8f17206a5b0a1 \
+"
+
+DEPENDS = " \
+ intltool-native \
+ tracker \
+ zlib \
+"
+
+
+inherit gnomebase gsettings gobject-introspection vala bash-completion features_check
+
+SRC_URI:append = " \
+ file://0001-fix-reproducibility.patch \
+ file://0001-Set-header-file-to-a-fixed-path-instead-of-a-host-pa.patch \
+"
+SRC_URI[archive.sha256sum] = "e74388154b5c197b4b7ee42f0dce8c5fbbddd4d361093ef88d4fb303e33da5fe"
+
+# gobject-introspection is mandatory and cannot be configured
+REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
+GIR_MESON_OPTION = ""
+VALA_MESON_OPTION = ""
+
+PACKAGECONFIG ??= " \
+ ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "ffmpeg", "", d)} \
+ gexiv2 \
+ gstreamer \
+ icu \
+ libexif \
+ libgsf \
+ jpeg \
+ pdf \
+ png \
+ tiff \
+ raw \
+ xml \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'seccomp', d)} \
+ battery \
+ networkmanager \
+"
+# Needs tgkill API which musl does not support
+# see https://www.openwall.com/lists/musl/2019/08/02/1
+PACKAGECONFIG:remove:libc-musl = "seccomp"
+
+PACKAGECONFIG[battery] = "-Dbattery_detection=upower,-Dbattery_detection=none,upower"
+PACKAGECONFIG[cue] = "-Dcue=enabled,-Dcue=disabled,libcue"
+PACKAGECONFIG[ffmpeg] = "-Dgeneric_media_extractor=libav,,ffmpeg"
+PACKAGECONFIG[gexiv2] = ",,gexiv2"
+PACKAGECONFIG[gstreamer] = "-Dgeneric_media_extractor=gstreamer,,gstreamer1.0 gstreamer1.0-plugins-base"
+PACKAGECONFIG[gupnp] = "-Dgstreamer_backend=gupnp,,gupnp-dlna"
+PACKAGECONFIG[gif] = "-Dgif=enabled,-Dgif=disabled,giflib"
+PACKAGECONFIG[icu] = "-Dcharset_detection=icu,,icu"
+PACKAGECONFIG[iso] = "-Diso=enabled,-Diso=disabled,libosinfo"
+PACKAGECONFIG[jpeg] = "-Djpeg=enabled,-Djpeg=disabled,jpeg"
+PACKAGECONFIG[libexif] = "-Dexif=enabled,-Dexif=disabled,libexif"
+PACKAGECONFIG[libgsf] = "-Dgsf=enabled,-Dgsf=disabled,libgsf"
+PACKAGECONFIG[pdf] = "-Dpdf=enabled,-Dpdf=disabled,poppler"
+PACKAGECONFIG[png] = "-Dpng=enabled,-Dpng=disabled,libpng"
+PACKAGECONFIG[tiff] = "-Dtiff=enabled,-Dtiff=disabled,tiff"
+PACKAGECONFIG[raw] = "-Draw=enabled,-Draw=disabled,libraw"
+PACKAGECONFIG[xml] = "-Dxml=enabled,-Dxml=disabled,libxml2"
+PACKAGECONFIG[networkmanager] = "-Dnetwork_manager=enabled,-Dnetwork_manager=disabled,networkmanager"
+PACKAGECONFIG[landlock] = "-Dlandlock=enabled,-Dlandlock=disabled"
+
+# For security reasons it is strongly recommended to set add meta-security in
+# your layers and 'libseccomp' to PACKAGECONFIG".
+PACKAGECONFIG[seccomp] = "-Dseccomp=true,-Dseccomp=false,libseccomp"
+# not yet in meta-gnome
+PACKAGECONFIG[rss] = "-Dminer_rss=true,-Dminer_rss=false,libgrss"
+
+EXTRA_OEMESON += " \
+ -Dman=false \
+ -Dsystemd_user_services=${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)} \
+ -Dsystemd_user_services_dir=${systemd_user_unitdir} \
+"
+
+
+FILES:${PN} += " \
+ ${datadir} \
+ ${libdir}/tracker-miners-3.0 \
+ ${systemd_user_unitdir} \
+"
diff --git a/meta-gnome/recipes-gnome/tracker/tracker/0001-fix-reproducibility.patch b/meta-gnome/recipes-gnome/tracker/tracker/0001-fix-reproducibility.patch
new file mode 100644
index 0000000000..4527f9efa3
--- /dev/null
+++ b/meta-gnome/recipes-gnome/tracker/tracker/0001-fix-reproducibility.patch
@@ -0,0 +1,77 @@
+From ae34fb111e1f2498f37b21c0c32ace6c9928ad66 Mon Sep 17 00:00:00 2001
+From: Markus Volk <f_l_k@t-online.de>
+Date: Mon, 18 Sep 2023 02:47:55 +0200
+Subject: [PATCH] tracker: fix reproducibility issue
+
+Tracker's design seems to be strictly for non-cross builds and leaks buildpaths into the
+binaries at various places. Avoid this to improve binary reproducibility.
+
+todo: Some of these paths may need to be adjusted to make the test environment work
+
+Upstream-Status: Inappropriate [oe-specific]
+
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+---
+ meson.build | 6 +++---
+ src/libtracker-common/meson.build | 4 ++--
+ src/libtracker-sparql/meson.build | 4 ++--
+ 3 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index bc9f93a..6c86e5a 100644
+--- a/meson.build
++++ b/meson.build
+@@ -357,7 +357,7 @@ have_rtld_noload = cc.has_header_symbol('dlfcn.h', 'RTLD_NOLOAD')
+ conf.set('HAVE_RTLD_NOLOAD', have_rtld_noload)
+
+ # Config that goes in some other generated files (.desktop, .service, etc)
+-conf.set('abs_top_builddir', meson.current_build_dir())
++conf.set('abs_top_builddir', '/usr/src/debug/tracker')
+ conf.set('libexecdir', join_paths(get_option('prefix'), get_option('libexecdir')))
+
+ configure_file(input: 'config.h.meson.in',
+@@ -396,8 +396,8 @@ subdir('docs')
+ subdir('utils')
+
+ test_c_args = tracker_c_args + [
+- '-DTOP_BUILDDIR="@0@"'.format(build_root),
+- '-DTOP_SRCDIR="@0@"'.format(source_root),
++ '-DTOP_BUILDDIR="@0@/"'.format('/usr/src/debug/tracker'),
++ '-DTOP_SRCDIR="@0@/"'.format('/usr/src/debug/tracker'),
+ ]
+
+ tracker_uninstalled_cli_dir = join_paths(meson.current_build_dir(), 'src', 'tracker')
+diff --git a/src/libtracker-common/meson.build b/src/libtracker-common/meson.build
+index 9355d1c..cdbc05f 100644
+--- a/src/libtracker-common/meson.build
++++ b/src/libtracker-common/meson.build
+@@ -51,10 +51,10 @@ libtracker_common = static_library('tracker-common',
+ dependencies: [tracker_common_dependencies, gmodule],
+ c_args: [
+ '-DPRIVATE_LIBDIR="@0@"'.format(tracker_internal_libs_dir),
+- '-DBUILD_LIBDIR="@0@"'.format(meson.current_build_dir()),
++ '-DBUILD_LIBDIR="@0@"'.format('/usr/src/debug/tracker'),
+ # Global build root is required to detect noinst situations (tests/introspection),
+ # event when built as a subproject
+- '-DBUILDROOT="@0@"'.format(meson.global_build_root()),
++ '-DBUILDROOT="@0@"'.format('/usr/src/debug/tracker'),
+ ] + tracker_c_args,
+ include_directories: [configinc, srcinc],
+ gnu_symbol_visibility: 'hidden',
+diff --git a/src/libtracker-sparql/meson.build b/src/libtracker-sparql/meson.build
+index 4143eac..b73f1c9 100644
+--- a/src/libtracker-sparql/meson.build
++++ b/src/libtracker-sparql/meson.build
+@@ -98,10 +98,10 @@ libtracker_sparql_private = static_library('tracker-sparql-private',
+ c_args: [
+ '-include', 'libtracker-sparql/tracker-private.h',
+ '-DPRIVATE_LIBDIR="@0@"'.format(tracker_internal_libs_dir),
+- '-DBUILD_LIBDIR="@0@"'.format(meson.current_build_dir()),
++ '-DBUILD_LIBDIR="@0@"'.format('/usr/src/debug/tracker'),
+ # Global build root is required to detect noinst situations (tests/introspection),
+ # event when built as a subproject
+- '-DBUILDROOT="@0@"'.format(meson.global_build_root()),
++ '-DBUILDROOT="@0@"'.format('/usr/src/debug/tracker'),
+ ] + tracker_c_args,
+
+ dependencies: [libtracker_sparql_dependencies, gvdb_dep],
diff --git a/meta-gnome/recipes-gnome/tracker/tracker_3.7.3.bb b/meta-gnome/recipes-gnome/tracker/tracker_3.7.3.bb
new file mode 100644
index 0000000000..885f3515da
--- /dev/null
+++ b/meta-gnome/recipes-gnome/tracker/tracker_3.7.3.bb
@@ -0,0 +1,59 @@
+SUMMARY = "Tracker is a file search engine"
+LICENSE = "GPL-2.0-only & LGPL-2.1-only"
+LIC_FILES_CHKSUM = " \
+ file://COPYING.GPL;md5=ee31012bf90e7b8c108c69f197f3e3a4 \
+ file://COPYING.LGPL;md5=2d5025d4aa3495befef8f17206a5b0a1 \
+"
+
+DEPENDS = " \
+ dbus-native \
+ python3-pygobject-native \
+ glib-2.0 \
+ sqlite3 \
+ libarchive \
+ dbus \
+ icu \
+ json-glib \
+ libsoup-3.0 \
+ libstemmer \
+"
+
+
+inherit gettext gnomebase gobject-introspection vala gtk-doc bash-completion python3native
+
+SRC_URI += "file://0001-fix-reproducibility.patch"
+SRC_URI[archive.sha256sum] = "ab3d4a50937e04c5ed7846f6dbb999e2909819402f389ca592ee6b77dd28d1f9"
+
+# text search is not an option anymore and requires sqlite3 build with
+# PACKAGECONFIG[fts5] set (default)
+
+# set required cross property sqlite3_has_fts5
+do_write_config[vardeps] += "PACKAGECONFIG"
+do_write_config:append() {
+ echo "[properties]" > ${WORKDIR}/meson-tracker.cross
+ echo "sqlite3_has_fts5 = 'true'" >> ${WORKDIR}/meson-tracker.cross
+}
+
+EXTRA_OEMESON = " \
+ --cross-file ${WORKDIR}/meson-tracker.cross \
+ -Dman=false \
+ -Dsystemd_user_services=${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)} \
+ -Dsystemd_user_services_dir=${systemd_user_unitdir} \
+ -Dsoup=soup3 \
+ ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-Dvapi=enabled', '-Dvapi=disabled', d)} \
+"
+
+do_install:prepend() {
+ sed -i -e 's|${B}/../${PN}-${PV}|${TARGET_DBGSRC_DIR}|g' ${B}/src/libtracker-sparql/tracker-sparql-enum-types.c
+ sed -i -e 's|${B}/../${PN}-${PV}|${TARGET_DBGSRC_DIR}|g' ${B}/src/libtracker-sparql/core/tracker-data-enum-types.c
+}
+
+GIR_MESON_ENABLE_FLAG = 'enabled'
+GIR_MESON_DISABLE_FLAG = 'disabled'
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/tracker3 \
+ ${libdir}/tracker-3.0 \
+ ${systemd_user_unitdir} \
+"
diff --git a/meta-gnome/recipes-gnome/yelp/yelp-tools_42.1.bb b/meta-gnome/recipes-gnome/yelp/yelp-tools_42.1.bb
new file mode 100644
index 0000000000..f3e1efeaa1
--- /dev/null
+++ b/meta-gnome/recipes-gnome/yelp/yelp-tools_42.1.bb
@@ -0,0 +1,21 @@
+SUMMARY = "Collection of scripts and build utilities for documentation"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = " \
+ file://COPYING;md5=d67c6f9f1515506abfea4f0d920c0774 \
+ file://COPYING.GPL;md5=eb723b61539feef013de476e68b5c50a \
+"
+
+inherit gnomebase itstool
+
+DEPENDS += " \
+ libxslt-native \
+ libxml2-native \
+ python3-lxml-native \
+ yelp-xsl \
+"
+
+SRC_URI[archive.sha256sum] = "3e496a4020d4145b99fd508a25fa09336a503a4e8900028421e72c6a4b11f905"
+
+RDEPENDS:${PN} += "python3-core yelp-xsl"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-gnome/recipes-gnome/yelp/yelp-xsl_42.1.bb b/meta-gnome/recipes-gnome/yelp/yelp-xsl_42.1.bb
new file mode 100644
index 0000000000..5a8089e013
--- /dev/null
+++ b/meta-gnome/recipes-gnome/yelp/yelp-xsl_42.1.bb
@@ -0,0 +1,21 @@
+SUMMARY = "XSL stylesheets for the yelp help browser"
+LICENSE = "LGPL-2.1-only & GPL-2.0-only & BSD-3-Clause"
+LIC_FILES_CHKSUM = " \
+ file://COPYING;md5=8ca13a5a6972ac1620a1e42a3dacd774 \
+ file://COPYING.GPL;md5=eb723b61539feef013de476e68b5c50a \
+ file://COPYING.LGPL;md5=a6f89e2100d9b6cdffcea4f398e37343 \
+"
+
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase gettext itstool
+
+DEPENDS += "libxml2"
+
+SRC_URI[archive.sha256sum] = "238be150b1653080ce139971330fd36d3a26595e0d6a040a2c030bf3d2005bcd"
+
+RDEPENDS:${PN}:append:class-target = " libxml2 itstool"
+
+# ensure our native consumers are forced to inherit itstool
+RDEPENDS:${PN}:append:class-native = " libxml2-native"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-gnome/recipes-gnome/yelp/yelp_42.2.bb b/meta-gnome/recipes-gnome/yelp/yelp_42.2.bb
new file mode 100644
index 0000000000..14986f2650
--- /dev/null
+++ b/meta-gnome/recipes-gnome/yelp/yelp_42.2.bb
@@ -0,0 +1,43 @@
+SUMMARY = "Help browser for the GNOME desktop"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = " \
+ file://COPYING;md5=6e1b9cb787e76d7e6946887a65caa754 \
+"
+GNOMEBASEBUILDCLASS = "autotools"
+inherit gnomebase itstool autotools-brokensep gsettings gettext gtk-doc features_check mime-xdg
+
+# for webkitgtk
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI[archive.sha256sum] = "a2c5fd0787a9089c722cc66bd0f85cdf7088d870e7b6cc85799f8e5bff9eac4b"
+
+DEPENDS += " \
+ libxml2-native \
+ glib-2.0-native \
+ gtk+3 \
+ appstream-glib \
+ libxslt \
+ sqlite3 \
+ libhandy \
+ webkitgtk3 \
+ yelp-xsl \
+"
+PACKAGECONFIG_SOUP ?= "soup3"
+PACKAGECONFIG ??= "${PACKAGECONFIG_SOUP}"
+
+PACKAGECONFIG[soup2] = "--with-webkit2gtk-4-0,,"
+PACKAGECONFIG[soup3] = ",--with-webkit2gtk-4-0,"
+
+
+do_configure:prepend() {
+ export ITSTOOL=${STAGING_BINDIR_NATIVE}/itstool
+}
+
+FILES:${PN} += " \
+ ${datadir}/metainfo \
+ ${datadir}/yelp-xsl \
+"
+
+RDEPENDS:${PN} += "yelp-xsl"
+
+CVE_STATUS[CVE-2008-3533] = "cpe-incorrect: The current version (42.2) is not affected. Fixed in 2.24."
diff --git a/meta-gnome/recipes-gnome/zenity/zenity/0001-build-don-t-generate-manual.patch b/meta-gnome/recipes-gnome/zenity/zenity/0001-build-don-t-generate-manual.patch
deleted file mode 100644
index 4885486673..0000000000
--- a/meta-gnome/recipes-gnome/zenity/zenity/0001-build-don-t-generate-manual.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 38eeb345fdfca0298b11427aa942b68e627ba10e Mon Sep 17 00:00:00 2001
-From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
-Date: Thu, 12 Sep 2019 13:14:55 +0200
-Subject: [PATCH] build: don't generate manual
-
-We don't have yelp in yocto and even if we did it would pull in
-webkitgtk just to generate help. Just remove the manual generation
-altogether.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
----
- Makefile.am | 3 +--
- configure.ac | 5 -----
- 2 files changed, 1 insertion(+), 7 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 81ae6a7..bd073dd 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -4,8 +4,7 @@ AM_CPPFLAGS = src
- SUBDIRS = \
- src \
- po \
-- data \
-- help
-+ data
-
- EXTRA_DIST = \
- autogen.sh \
-diff --git a/configure.ac b/configure.ac
-index 5dccdb0..f88b2c0 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -115,11 +115,6 @@ GETTEXT_PACKAGE=zenity
- AC_SUBST([GETTEXT_PACKAGE])
- AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext domain])
-
--# *******************************
--# User manual
--# *******************************
--YELP_HELP_INIT
--
- # *******************************
-
- AC_SUBST([AM_CPPFLAGS])
---
-2.21.0
-
diff --git a/meta-gnome/recipes-gnome/zenity/zenity_3.32.0.bb b/meta-gnome/recipes-gnome/zenity/zenity_3.32.0.bb
deleted file mode 100644
index 295288bfbc..0000000000
--- a/meta-gnome/recipes-gnome/zenity/zenity_3.32.0.bb
+++ /dev/null
@@ -1,24 +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 distro_features_check gnomebase gettext
-
-DEPENDS = "gtk+3"
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \
- file://0001-build-don-t-generate-manual.patch \
-"
-
-SRC_URI[archive.md5sum] = "ba2b2a13248773b4ec0fd323d95e6d5a"
-SRC_URI[archive.sha256sum] = "e786e733569c97372c3ef1776e71be7e7599ebe87e11e8ad67dcc2e63a82cd95"
-GNOME_COMPRESS_TYPE="xz"
-
-do_install_append() {
- # Remove gdialog compatibility helper - we don't want to pull in perl
- rm ${D}${bindir}/gdialog
-}
diff --git a/meta-gnome/recipes-gnome/zenity/zenity_4.0.2.bb b/meta-gnome/recipes-gnome/zenity/zenity_4.0.2.bb
new file mode 100644
index 0000000000..801eaae8e0
--- /dev/null
+++ b/meta-gnome/recipes-gnome/zenity/zenity_4.0.2.bb
@@ -0,0 +1,26 @@
+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"
+
+inherit gnomebase pkgconfig itstool gtk-icon-cache features_check gettext
+
+DEPENDS = " \
+ desktop-file-utils-native \
+ help2man-native \
+ hicolor-icon-theme \
+ gtk4 \
+ gtk4-native \
+ libadwaita \
+"
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+REQUIRED_DISTRO_FEATURES = "opengl"
+GTKIC_VERSION = "4"
+
+SRC_URI[archive.sha256sum] = "c16dcae46e29e22c2fa0b95e80e06c96b2aec93840161369c95c85ed9f093153"
+
+PACKAGECONFIG ?= "webkitgtk"
+PACKAGECONFIG[webkitgtk] = "-Dwebkitgtk=true,-Dwebkitgtk=false,webkitgtk"
+
+FILES:${PN}-doc = "${datadir}/man ${datadir}/help"
diff --git a/meta-gnome/recipes-graphics/clutter/clutter-1.0.inc b/meta-gnome/recipes-graphics/clutter/clutter-1.0.inc
new file mode 100644
index 0000000000..ce6b8a0f49
--- /dev/null
+++ b/meta-gnome/recipes-graphics/clutter/clutter-1.0.inc
@@ -0,0 +1,49 @@
+SUMMARY = "Graphics library for creating hardware-accelerated user interfaces"
+DESCRIPTION = "Clutter is an Open GL based interactive canvas library, \
+designed for creating fast, mainly 2D single window applications such as media \
+box UIs, presentations, kiosk style applications and so on."
+HOMEPAGE = "http://www.clutter-project.org/"
+LICENSE = "LGPL-2.1-or-later"
+
+inherit clutter ptest-gnome features_check upstream-version-is-even gobject-introspection
+# depends on cogl-1.0 which needs opengl
+REQUIRED_DISTRO_FEATURES ?= "opengl"
+
+DEPENDS = "pango glib-2.0 json-glib atk udev cogl-1.0"
+PACKAGE_BEFORE_PN += "${PN}-examples"
+AUTOTOOLS_AUXDIR = "${S}/build-aux"
+
+EDEPENDS_X11 = "virtual/libx11 libxi libxfixes"
+EDEPENDS_GLX = "virtual/libgl"
+EDEPENDS_EGL = "virtual/egl"
+EDEPENDS_WAYLAND = "wayland libxkbcommon gdk-pixbuf"
+
+EDEPENDS_EVDEV = "libxkbcommon"
+ERDEPENDS_EVDEV = "xkeyboard-config"
+
+# Disable pretty much everything, override in platform specific set up
+EXTRA_OECONF += "--disable-quartz-backend \
+ --disable-win32-backend \
+ --disable-cex100-backend \
+ --disable-tslib-input \
+ "
+
+PACKAGECONFIG[gdk] = "--enable-gdk-backend,--disable-gdk-backend,gtk+3"
+PACKAGECONFIG[x11] = "--enable-x11-backend,--disable-x11-backend,${EDEPENDS_X11}"
+PACKAGECONFIG[glx] = ",,${EDEPENDS_X11} ${EDEPENDS_GLX}"
+PACKAGECONFIG[egl] = "--enable-egl-backend,--disable-egl-backend,${EDEPENDS_EGL}"
+PACKAGECONFIG[evdev] = "--enable-evdev-input,--disable-evdev-input,${EDEPENDS_EVDEV},${ERDEPENDS_EVDEV}"
+PACKAGECONFIG[wayland] = "--enable-wayland-backend,--disable-wayland-backend,${EDEPENDS_WAYLAND}"
+PACKAGECONFIG[wayland-compositor] = "--enable-wayland-compositor,--disable-wayland-compositor,wayland"
+
+# Default configuration, distros might want to override
+PACKAGECONFIG ??= "egl gdk \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glx x11', '', d)}"
+
+FILES:${PN}-examples = "${libdir}/clutter/examples"
+
+do_configure:prepend() {
+ # see https://bugzilla.gnome.org/show_bug.cgi?id=661128 for this
+ touch -t 200001010000 ${S}/po/clutter-1.0.pot
+}
diff --git a/meta-gnome/recipes-graphics/clutter/clutter-1.0/0001-Remove-clutter.types-as-it-is-build-configuration-sp.patch b/meta-gnome/recipes-graphics/clutter/clutter-1.0/0001-Remove-clutter.types-as-it-is-build-configuration-sp.patch
new file mode 100644
index 0000000000..7b3c1980b6
--- /dev/null
+++ b/meta-gnome/recipes-graphics/clutter/clutter-1.0/0001-Remove-clutter.types-as-it-is-build-configuration-sp.patch
@@ -0,0 +1,143 @@
+From 3a0404dfbc65c6a864e01d1200a48074e19d5def Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Fri, 2 Sep 2016 14:28:38 +0300
+Subject: [PATCH] Remove clutter.types as it is build configuration-specific.
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ doc/reference/clutter.types | 122 --------------------------------------------
+ 1 file changed, 122 deletions(-)
+ delete mode 100644 doc/reference/clutter.types
+
+diff --git a/doc/reference/clutter.types b/doc/reference/clutter.types
+deleted file mode 100644
+index 0037acc..0000000
+--- a/doc/reference/clutter.types
++++ /dev/null
+@@ -1,122 +0,0 @@
+-cally_actor_get_type
+-cally_clone_get_type
+-cally_group_get_type
+-cally_rectangle_get_type
+-cally_root_get_type
+-cally_stage_get_type
+-cally_text_get_type
+-cally_texture_get_type
+-cally_util_get_type
+-clutter_action_get_type
+-clutter_actor_box_get_type
+-clutter_actor_get_type
+-clutter_actor_meta_get_type
+-clutter_align_constraint_get_type
+-clutter_alpha_get_type
+-clutter_animatable_get_type
+-clutter_animation_get_type
+-clutter_animator_get_type
+-clutter_animator_key_get_type
+-clutter_backend_get_type
+-clutter_behaviour_depth_get_type
+-clutter_behaviour_ellipse_get_type
+-clutter_behaviour_get_type
+-clutter_behaviour_opacity_get_type
+-clutter_behaviour_path_get_type
+-clutter_behaviour_rotate_get_type
+-clutter_behaviour_scale_get_type
+-clutter_bin_layout_get_type
+-clutter_bind_constraint_get_type
+-clutter_binding_pool_get_type
+-clutter_blur_effect_get_type
+-clutter_box_get_type
+-clutter_box_layout_get_type
+-clutter_brightness_contrast_effect_get_type
+-clutter_cairo_texture_get_type
+-clutter_canvas_get_type
+-clutter_child_meta_get_type
+-clutter_click_action_get_type
+-clutter_clip_node_get_type
+-clutter_clone_get_type
+-clutter_color_get_type
+-clutter_color_node_get_type
+-clutter_colorize_effect_get_type
+-clutter_constraint_get_type
+-clutter_container_get_type
+-clutter_content_get_type
+-clutter_deform_effect_get_type
+-clutter_desaturate_effect_get_type
+-clutter_device_manager_get_type
+-clutter_drag_action_get_type
+-clutter_drop_action_get_type
+-clutter_effect_get_type
+-clutter_event_get_type
+-clutter_event_sequence_get_type
+-clutter_fixed_layout_get_type
+-clutter_flow_layout_get_type
+-clutter_fog_get_type
+-clutter_geometry_get_type
+-clutter_gesture_action_get_type
+-clutter_glx_texture_pixmap_get_type
+-clutter_grid_layout_get_type
+-clutter_group_get_type
+-clutter_image_get_type
+-clutter_input_device_get_type
+-clutter_interval_get_type
+-clutter_keyframe_transition_get_type
+-clutter_knot_get_type
+-clutter_layout_manager_get_type
+-clutter_layout_meta_get_type
+-clutter_list_model_get_type
+-clutter_margin_get_type
+-clutter_media_get_type
+-clutter_model_get_type
+-clutter_model_iter_get_type
+-clutter_offscreen_effect_get_type
+-clutter_page_turn_effect_get_type
+-clutter_paint_node_get_type
+-clutter_paint_volume_get_type
+-clutter_pan_action_get_type
+-clutter_param_color_get_type
+-clutter_param_fixed_get_type
+-clutter_param_units_get_type
+-clutter_path_constraint_get_type
+-clutter_path_get_type
+-clutter_path_node_get_type
+-clutter_perspective_get_type
+-clutter_pipeline_node_get_type
+-clutter_point_get_type
+-clutter_property_transition_get_type
+-clutter_rect_get_type
+-clutter_rectangle_get_type
+-clutter_rotate_action_get_type
+-clutter_score_get_type
+-clutter_script_get_type
+-clutter_scriptable_get_type
+-clutter_scroll_actor_get_type
+-clutter_settings_get_type
+-clutter_shader_effect_get_type
+-clutter_shader_float_get_type
+-clutter_shader_get_type
+-clutter_shader_int_get_type
+-clutter_shader_matrix_get_type
+-clutter_size_get_type
+-clutter_snap_constraint_get_type
+-clutter_stage_get_type
+-clutter_stage_manager_get_type
+-clutter_state_get_type
+-clutter_state_key_get_type
+-clutter_swipe_action_get_type
+-clutter_table_layout_get_type
+-clutter_tap_action_get_type
+-clutter_text_buffer_get_type
+-clutter_text_get_type
+-clutter_text_node_get_type
+-clutter_texture_get_type
+-clutter_texture_node_get_type
+-clutter_timeline_get_type
+-clutter_transition_get_type
+-clutter_transition_group_get_type
+-clutter_units_get_type
+-clutter_vertex_get_type
+-clutter_zoom_action_get_type
+--
+2.9.3
+
diff --git a/meta-gnome/recipes-graphics/clutter/clutter-1.0/install-examples.patch b/meta-gnome/recipes-graphics/clutter/clutter-1.0/install-examples.patch
new file mode 100644
index 0000000000..ce9ab3a248
--- /dev/null
+++ b/meta-gnome/recipes-graphics/clutter/clutter-1.0/install-examples.patch
@@ -0,0 +1,19 @@
+Install the examples to $libdir/clutter/.
+
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+Upstream-Status: Inappropriate
+
+Index: clutter-1.26.2/examples/Makefile.am
+===================================================================
+--- clutter-1.26.2.orig/examples/Makefile.am
++++ clutter-1.26.2/examples/Makefile.am
+@@ -33,7 +33,8 @@ AM_CPPFLAGS = \
+ -I$(top_srcdir)/clutter \
+ -I$(top_builddir)/clutter
+
+-noinst_PROGRAMS = $(all_examples)
++exampledir = $(pkglibdir)/examples
++example_PROGRAMS = $(all_examples)
+
+ EXTRA_DIST = redhand.png
+
diff --git a/meta-gnome/recipes-graphics/clutter/clutter-1.0/run-installed-tests-with-tap-output.patch b/meta-gnome/recipes-graphics/clutter/clutter-1.0/run-installed-tests-with-tap-output.patch
new file mode 100644
index 0000000000..fef82eaf92
--- /dev/null
+++ b/meta-gnome/recipes-graphics/clutter/clutter-1.0/run-installed-tests-with-tap-output.patch
@@ -0,0 +1,30 @@
+From d6ceb5a44b28e0e50ede22b84984d8516897de4b Mon Sep 17 00:00:00 2001
+From: Jussi Kukkonen <jussi.kukkonen@intel.com>
+Date: Mon, 27 Apr 2015 20:12:33 +0300
+Subject: [PATCH] Run installed tests with tap output
+
+Configure output from installed-tests to be TAP compliant such that
+gnome-desktop-testing-runner properly interprets the results.
+
+Upstream-Status: Pending
+
+Signed-off-by: Tim Orling <TicoTimo@gmail.com>
+
+---
+ build-aux/autotools/glib-tap.mk | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/build-aux/autotools/glib-tap.mk b/build-aux/autotools/glib-tap.mk
+index a4f0dad..51cfa31 100644
+--- a/build-aux/autotools/glib-tap.mk
++++ b/build-aux/autotools/glib-tap.mk
+@@ -127,7 +127,8 @@ installed_test_meta_DATA = $(installed_testcases:=.test)
+ %.test: %$(EXEEXT) Makefile
+ $(AM_V_GEN) (echo '[Test]' > $@.tmp; \
+ echo 'Type=session' >> $@.tmp; \
+- echo 'Exec=env G_ENABLE_DIAGNOSTIC=0 CLUTTER_ENABLE_DIAGNOSTIC=0 $(installed_testdir)/$<' >> $@.tmp; \
++ echo 'Exec=env G_ENABLE_DIAGNOSTIC=0 CLUTTER_ENABLE_DIAGNOSTIC=0 $(installed_testdir)/$< --tap' >> $@.tmp; \
++ echo 'Output=TAP' >> $@.tmp; \
+ mv $@.tmp $@)
+
+ CLEANFILES += $(installed_test_meta_DATA)
diff --git a/meta-gnome/recipes-graphics/clutter/clutter-1.0/run-ptest b/meta-gnome/recipes-graphics/clutter/clutter-1.0/run-ptest
new file mode 100644
index 0000000000..98877e5226
--- /dev/null
+++ b/meta-gnome/recipes-graphics/clutter/clutter-1.0/run-ptest
@@ -0,0 +1,3 @@
+#! /bin/sh
+
+gnome-desktop-testing-runner clutter
diff --git a/meta-gnome/recipes-graphics/clutter/clutter-1.0_1.26.4.bb b/meta-gnome/recipes-graphics/clutter/clutter-1.0_1.26.4.bb
new file mode 100644
index 0000000000..ee549fbdd5
--- /dev/null
+++ b/meta-gnome/recipes-graphics/clutter/clutter-1.0_1.26.4.bb
@@ -0,0 +1,10 @@
+require clutter-1.0.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+SRC_URI[archive.md5sum] = "624dd776a5159de0267587b1df6b97b2"
+SRC_URI[archive.sha256sum] = "8b48fac159843f556d0a6be3dbfc6b083fc6d9c58a20a49a6b4919ab4263c4e6"
+SRC_URI += "file://install-examples.patch \
+ file://run-installed-tests-with-tap-output.patch \
+ file://0001-Remove-clutter.types-as-it-is-build-configuration-sp.patch \
+ file://run-ptest"
diff --git a/meta-gnome/recipes-graphics/clutter/clutter-gst-3.0.inc b/meta-gnome/recipes-graphics/clutter/clutter-gst-3.0.inc
new file mode 100644
index 0000000000..7880021755
--- /dev/null
+++ b/meta-gnome/recipes-graphics/clutter/clutter-gst-3.0.inc
@@ -0,0 +1,23 @@
+SUMMARY = "GStreamer integration library for Clutter"
+DESCRIPTION = "Clutter-Gst is an integration library for using GStreamer with Clutter. \
+It provides a GStreamer sink to upload frames to GL and an actor that \
+implements the ClutterGstPlayer interface using playbin."
+HOMEPAGE = "http://www.clutter-project.org/"
+BUGTRACKER = "https://gitlab.gnome.org/GNOME/clutter-gst/-/issues"
+LICENSE = "LGPL-2.0-or-later"
+
+inherit clutter features_check upstream-version-is-even gobject-introspection
+# depends on clutter-1.0 which depends on cogl-1.0
+REQUIRED_DISTRO_FEATURES ?= "opengl"
+
+export GST_PLUGIN_SCANNER_1_0="${S}/gst-plugin-scanner-dummy"
+
+SRC_URI += "file://0001-Install-example-binary-needed-for-core-image-clutter.patch"
+
+DEPENDS = "gstreamer1.0-plugins-base gstreamer1.0-plugins-bad clutter-1.0 libgudev"
+RDEPENDS:${PN} += "gstreamer1.0-meta-base"
+PACKAGES =+ "${PN}-examples"
+
+FILES:${PN} += "${libdir}/gstreamer-1.0/lib*.so"
+FILES:${PN}-dev += "${libdir}/gstreamer-1.0/*.la"
+FILES:${PN}-examples = "${bindir}/video-player ${bindir}/video-sink"
diff --git a/meta-gnome/recipes-graphics/clutter/clutter-gst-3.0/0001-Install-example-binary-needed-for-core-image-clutter.patch b/meta-gnome/recipes-graphics/clutter/clutter-gst-3.0/0001-Install-example-binary-needed-for-core-image-clutter.patch
new file mode 100644
index 0000000000..0b26b990d7
--- /dev/null
+++ b/meta-gnome/recipes-graphics/clutter/clutter-gst-3.0/0001-Install-example-binary-needed-for-core-image-clutter.patch
@@ -0,0 +1,33 @@
+From d77c711277bf075ce0545c19b322f040c49c778a Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Thu, 30 Apr 2015 12:19:13 +0300
+Subject: [PATCH] Install example binary needed for core-image-clutter
+
+Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
+
+Upstream-Status: Inappropriate [configuration]
+
+Imported from clutter-gst-1.8 package, git://git.openembedded.org/openembedded,
+commit ae28ee3f7a060b9e0d13154a84f2444a98490b5b, updated for clutter-gst 3.0
+
+Signed-off-by: Tomas Frydrych <tomas@sleepfive.com>
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ examples/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/examples/Makefile.am b/examples/Makefile.am
+index bfbc1b5..09655e3 100644
+--- a/examples/Makefile.am
++++ b/examples/Makefile.am
+@@ -1,6 +1,6 @@
+ NULL = #
+
+-noinst_PROGRAMS = camera-player video-player video-sink video-sink-navigation video-content
++bin_PROGRAMS = camera-player video-player video-sink video-sink-navigation video-content
+
+ AM_CPPFLAGS = -I$(top_srcdir) \
+ $(MAINTAINER_CFLAGS) \
+--
+2.1.4
+
diff --git a/meta-gnome/recipes-graphics/clutter/clutter-gst-3.0_3.0.27.bb b/meta-gnome/recipes-graphics/clutter/clutter-gst-3.0_3.0.27.bb
new file mode 100644
index 0000000000..35382453c2
--- /dev/null
+++ b/meta-gnome/recipes-graphics/clutter/clutter-gst-3.0_3.0.27.bb
@@ -0,0 +1,7 @@
+require clutter-gst-3.0.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
+ file://clutter-gst/clutter-gst.h;beginline=1;endline=24;md5=95baacba194e814c110ea3bdf25ddbf4"
+
+SRC_URI[archive.md5sum] = "2bf9d7ca146c9d71e86c45cd00e9a28e"
+SRC_URI[archive.sha256sum] = "fe69bd6c659d24ab30da3f091eb91cd1970026d431179b0724f13791e8ad9f9d"
diff --git a/meta-gnome/recipes-graphics/clutter/clutter-gtk-1.0.inc b/meta-gnome/recipes-graphics/clutter/clutter-gtk-1.0.inc
new file mode 100644
index 0000000000..025e95b5d4
--- /dev/null
+++ b/meta-gnome/recipes-graphics/clutter/clutter-gtk-1.0.inc
@@ -0,0 +1,23 @@
+SUMMARY = "Library for embedding a Clutter canvas in a GTK+ application"
+DESCRIPTION = "Clutter-GTK is a library providing facilities to integrate Clutter into GTK+ \
+applications and vice versa. It provides a GTK+ widget, GtkClutterEmbed, for embedding the \
+a Clutter stage into any GtkContainer; and GtkClutterActor, a Clutter \
+actor for embedding any GtkWidget inside a Clutter stage."
+HOMEPAGE = "http://www.clutter-project.org/"
+BUGTRACKER = "https://gitlab.gnome.org/GNOME/clutter/-/issues"
+LICENSE = "LGPL-2.0-or-later"
+
+CLUTTERBASEBUILDCLASS = "meson"
+inherit clutter features_check upstream-version-is-even gobject-introspection gtk-doc
+
+# depends on clutter-1.0 which depends on cogl-1.0
+REQUIRED_DISTRO_FEATURES ?= "opengl"
+# depends on gtk+3
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+
+DEPENDS = "clutter-1.0 gtk+3"
+PACKAGES =+ "${PN}-examples"
+
+GTKDOC_MESON_OPTION = "enable_docs"
+
+GIR_MESON_OPTION = 'enable_gi'
diff --git a/meta-gnome/recipes-graphics/clutter/clutter-gtk-1.0/0001-Add-a-config-variable-for-enabling-disabling-introsp.patch b/meta-gnome/recipes-graphics/clutter/clutter-gtk-1.0/0001-Add-a-config-variable-for-enabling-disabling-introsp.patch
new file mode 100644
index 0000000000..e21c6fd903
--- /dev/null
+++ b/meta-gnome/recipes-graphics/clutter/clutter-gtk-1.0/0001-Add-a-config-variable-for-enabling-disabling-introsp.patch
@@ -0,0 +1,37 @@
+From 7233883c6bd4e80c0e91b29b5c76fe798023e9fe Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Mon, 11 Feb 2019 16:41:13 +0100
+Subject: [PATCH] Add a config variable for enabling/disabling introspection
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ clutter-gtk/meson.build | 2 +-
+ meson_options.txt | 4 ++++
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/clutter-gtk/meson.build b/clutter-gtk/meson.build
+index 5d6847d..5d934b6 100644
+--- a/clutter-gtk/meson.build
++++ b/clutter-gtk/meson.build
+@@ -49,7 +49,7 @@ clutter_gtk_dep = declare_dependency(link_with: clutter_gtk,
+ dependencies: [ mathlib_dep, clutter_dep, gtk_dep ],
+ include_directories: include_directories('.'))
+
+-if not meson.is_cross_build()
++if get_option('enable_gi')
+ gnome.generate_gir(clutter_gtk,
+ sources: clutter_gtk_headers + clutter_gtk_sources,
+ namespace: 'GtkClutter',
+diff --git a/meson_options.txt b/meson_options.txt
+index aaf59f1..b7e51c3 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -2,3 +2,7 @@ option('enable_docs',
+ type: 'boolean',
+ value: false,
+ description: 'Enable generating the API reference (depends on GTK-Doc)')
++option('enable_gi',
++ type: 'boolean',
++ value: false,
++ description: 'Enable gobject introspection')
diff --git a/meta-gnome/recipes-graphics/clutter/clutter-gtk-1.0_1.8.4.bb b/meta-gnome/recipes-graphics/clutter/clutter-gtk-1.0_1.8.4.bb
new file mode 100644
index 0000000000..53948c8944
--- /dev/null
+++ b/meta-gnome/recipes-graphics/clutter/clutter-gtk-1.0_1.8.4.bb
@@ -0,0 +1,7 @@
+require clutter-gtk-1.0.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
+
+SRC_URI += " file://0001-Add-a-config-variable-for-enabling-disabling-introsp.patch"
+SRC_URI[archive.md5sum] = "b363ac9878e2337be887b8ee9e1da00e"
+SRC_URI[archive.sha256sum] = "521493ec038973c77edcb8bc5eac23eed41645117894aaee7300b2487cb42b06"
diff --git a/meta-gnome/recipes-graphics/cogl/cogl-1.0.inc b/meta-gnome/recipes-graphics/cogl/cogl-1.0.inc
new file mode 100644
index 0000000000..3da361b3ff
--- /dev/null
+++ b/meta-gnome/recipes-graphics/cogl/cogl-1.0.inc
@@ -0,0 +1,84 @@
+SUMMARY = "Modern 3D graphics API with associated utility APIs"
+DESCRIPTION = "Cogl is a small open source library for using 3D graphics \
+hardware for rendering. The API departs from the flat state machine style of \
+OpenGL and is designed to make it easy to write orthogonal components that \
+can render without stepping on each others toes."
+HOMEPAGE = "https://gitlab.gnome.org/GNOME/cogl"
+LICENSE = "MIT"
+
+inherit clutter features_check upstream-version-is-even gobject-introspection
+# cogl-1.0 needs opengl to build
+REQUIRED_DISTRO_FEATURES ?= "opengl"
+
+DEPENDS = "glib-2.0 gdk-pixbuf"
+PACKAGES =+ "${PN}-examples \
+ libcogl libcogl-gles2 libcogl-pango libcogl-path \
+ "
+AUTOTOOLS_AUXDIR = "${S}/build"
+
+# Extra DEPENDS for PACKAGECONFIG
+EDEPENDS_GL = "virtual/libgl libdrm"
+EDEPENDS_GLES2 = "virtual/libgles2"
+EDEPENDS_KMS = "libdrm virtual/egl"
+EDEPENDS_EGL = "virtual/egl"
+EDEPENDS_X11 = "virtual/libx11 libxcomposite libxdamage libxfixes libxrandr"
+EDEPENDS_WAYLAND = "virtual/egl virtual/libgles2 wayland"
+
+# Extra RDEPENDS for PACKAGECONFIG
+# This has to be explictly listed, because cogl dlopens the backends
+ERDEPENDS_GL = "libgl"
+ERDEPENDS_GLES2 = "libgles2"
+
+# GLESv1 is rarely tested, so disable it
+EXTRA_OECONF += "--enable-examples-install \
+ --enable-debug \
+ --disable-gles1 \
+ --disable-cairo \
+ "
+DEBUG_OPTIMIZATION:append = " -Wno-error=maybe-uninitialized"
+
+# OpenGL/GLX
+PACKAGECONFIG[glx] = "--enable-gl --enable-glx,--disable-gl --disable-glx,${EDEPENDS_GL} ${EDEPENDS_X11},${ERDEPENDS_GL}"
+
+# GLESv2
+PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,${EDEPENDS_GLES2}, ${ERDEPENDS_GLES2}"
+
+# EGL backends
+PACKAGECONFIG[egl-kms] = "--enable-kms-egl-platform,--disable-kms-egl-platform,${EDEPENDS_KMS}"
+PACKAGECONFIG[egl-null] = "--enable-null-egl-platform,--disable-null-egl-platform"
+PACKAGECONFIG[egl-x11] = "--enable-xlib-egl-platform,--disable-xlib-egl-platform,${EDEPENDS_X11} ${EDEPENDS_EGL}"
+PACKAGECONFIG[egl-wayland] = "--enable-wayland-egl-platform,--disable-wayland-egl-platform,${EDEPENDS_WAYLAND}"
+
+# Wayland (server-side)
+PACKAGECONFIG[wayland-server] = "--enable-wayland-egl-server,--disable-wayland-egl-server,${EDEPENDS_WAYLAND}"
+
+# Support rendering text directly with Pango
+PACKAGECONFIG[cogl-pango] = "--enable-cogl-pango,--disable-cogl-pango,pango"
+
+# Respect the DISTRO_FEATURES to pull in GLX or Wayland as appropriate by
+# default.
+PACKAGECONFIG ??= "cogl-pango gles2 \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'egl-wayland', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glx egl-x11', '', d)} \
+ "
+
+do_compile:prepend() {
+ export GIR_EXTRA_LIBS_PATH="${B}/cogl/.libs"
+}
+
+FILES:${PN} = ""
+FILES:${PN}-examples = "${bindir}/* ${datadir}/cogl/examples-data/*"
+FILES:libcogl = "${libdir}/libcogl${SOLIBS} ${libdir}/girepository-1.0/Cogl-*.typelib"
+FILES:libcogl-gles2 = "${libdir}/libcogl-gles2${SOLIBS}"
+FILES:libcogl-pango = "${libdir}/libcogl-pango${SOLIBS} ${libdir}/girepository-1.0/CoglPango*.typelib"
+
+FILES:libcogl-path = "${libdir}/libcogl-path${SOLIBS}"
+
+# For backwards compatibility after Debian-renaming
+RPROVIDES:libcogl = "cogl-1.0"
+RCONFLICTS:libcogl = "cogl-1.0"
+RREPLACES:libcogl = "cogl-1.0"
+
+RDEPENDS:${PN}-dev = "libcogl"
+
+COMPATIBLE_HOST:armv4 = 'null'
diff --git a/meta-gnome/recipes-graphics/cogl/cogl-1.0/0001-configure.ac-don-t-require-eglmesaext.h.patch b/meta-gnome/recipes-graphics/cogl/cogl-1.0/0001-configure.ac-don-t-require-eglmesaext.h.patch
new file mode 100644
index 0000000000..328984a63f
--- /dev/null
+++ b/meta-gnome/recipes-graphics/cogl/cogl-1.0/0001-configure.ac-don-t-require-eglmesaext.h.patch
@@ -0,0 +1,92 @@
+From bb9765a926588ebfe1eb324fbbe8fc22d419eebe Mon Sep 17 00:00:00 2001
+From: Max Krummenacher <max.krummenacher@toradex.com>
+Date: Thu, 25 Jun 2020 11:27:40 +0000
+Subject: [PATCH] configure.ac: don't require eglmesaext.h
+
+E.g. the Vivante EGL implementation does not provide eglmesaext.h.
+
+The commit moves the check for header file existence outside of the
+check for existence of a egl packageconfig and makes the existence
+of eglmesaext.h optional.
+
+fixes commit fb1acfec ("Fix building against libglvnd-provided EGL headers")
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+
+Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/cogl/-/merge_requests/28]
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+---
+ configure.ac | 51 ++++++++++++++++++++++++++++++++-------------------
+ 1 file changed, 32 insertions(+), 19 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index b7ba95d..0d1d8de 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1212,22 +1212,6 @@ AS_IF([test "x$NEED_EGL" = "xyes" && test "x$EGL_CHECKED" != "xyes"],
+ PKG_CHECK_EXISTS([egl],
+ [COGL_PKG_REQUIRES="$COGL_PKG_REQUIRES egl"],
+ [
+- AC_CHECK_HEADERS(
+- [EGL/egl.h],
+- [],
+- [AC_MSG_ERROR([Unable to locate required EGL headers])])
+- AC_CHECK_HEADERS(
+- [EGL/eglext.h],
+- [],
+- [AC_MSG_ERROR([Unable to locate required EGL headers])],
+- [#include <EGL/egl.h>])
+- AC_CHECK_HEADERS(
+- [EGL/eglmesaext.h],
+- [],
+- [AC_MSG_ERROR([Unable to locate required EGL headers])],
+- [#include <EGL/egl.h>
+-#include <EGL/eglext.h>])
+-
+ AC_CHECK_LIB(EGL, [eglInitialize],
+ [COGL_EXTRA_LDFLAGS="$COGL_EXTRA_LDFLAGS -lEGL"],
+ [AC_MSG_ERROR([Unable to locate required EGL library])])
+@@ -1236,9 +1220,38 @@ AS_IF([test "x$NEED_EGL" = "xyes" && test "x$EGL_CHECKED" != "xyes"],
+ ]
+ )
+
+- COGL_EGL_INCLUDES="#include <EGL/egl.h>
+-#include <EGL/eglext.h>
+-#include <EGL/eglmesaext.h>"
++dnl Test for the existence of egl headers.
++dnl egl*.h includes eglplatform.h which on __unix__ defaults to a X11 platform.
++dnl In that case AC_CHECK_HEADERS failes if X11 headers are not available.
++dnl Set the usual include guard define and, if the EGL implementation doesn't
++dnl use that guard fall back to USE_OZONE and EGL_NO_X11 platforms which don't
++dnl require additional headers.
++ AC_CHECK_HEADERS(
++ [EGL/egl.h],
++ [COGL_EGL_INCLUDES="#include <EGL/egl.h>"],
++ [AC_MSG_ERROR([Unable to locate required EGL headers])],
++ [#define __egl_h_
++ #define USE_OZONE
++ #define EGL_NO_X11])
++ AC_CHECK_HEADERS(
++ [EGL/eglext.h],
++ [COGL_EGL_INCLUDES="$COGL_EGL_INCLUDES
++#include <EGL/eglext.h>"],
++ [AC_MSG_ERROR([Unable to locate required EGL headers])],
++ [#define __eglext_h_
++ #define USE_OZONE
++ #define EGL_NO_X11
++$COGL_EGL_INCLUDES])
++ AC_CHECK_HEADERS(
++ [EGL/eglmesaext.h],
++ [COGL_EGL_INCLUDES="$COGL_EGL_INCLUDES
++#include <EGL/eglmesaext.h>"],
++ [],
++ [#define __eglmesaext_h_
++#define USE_OZONE
++#define EGL_NO_X11
++$COGL_EGL_INCLUDES])
++
+ AC_SUBST([COGL_EGL_INCLUDES])
+ ])
+
+--
+2.20.1
+
diff --git a/meta-gnome/recipes-graphics/cogl/cogl-1.0_1.22.8.bb b/meta-gnome/recipes-graphics/cogl/cogl-1.0_1.22.8.bb
new file mode 100644
index 0000000000..b9446fab38
--- /dev/null
+++ b/meta-gnome/recipes-graphics/cogl/cogl-1.0_1.22.8.bb
@@ -0,0 +1,6 @@
+require cogl-1.0.inc
+
+SRC_URI += "file://0001-configure.ac-don-t-require-eglmesaext.h.patch"
+SRC_URI[archive.sha256sum] = "a805b2b019184710ff53d0496f9f0ce6dcca420c141a0f4f6fcc02131581d759"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=1b1a508d91d25ca607c83f92f3e31c84"
diff --git a/meta-gnome/recipes-graphics/packagegroups/packagegroup-core-clutter.bb b/meta-gnome/recipes-graphics/packagegroups/packagegroup-core-clutter.bb
new file mode 100644
index 0000000000..a3c274240a
--- /dev/null
+++ b/meta-gnome/recipes-graphics/packagegroups/packagegroup-core-clutter.bb
@@ -0,0 +1,25 @@
+#
+# Copyright (C) 2007 OpenedHand Ltd.
+#
+
+SUMMARY = "Clutter package groups"
+
+
+# clutter-1.0 gets debian renamed to libclutter-1.0-0
+# clutter-gtk-1.0 gets debian renamed to libclutter-gtk-1.0-0
+PACKAGE_ARCH = "${TUNE_PKGARCH}"
+
+inherit packagegroup features_check
+# rdepends on clutter-*
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+PACKAGES = "\
+ ${PN}-core \
+ "
+
+SUMMARY:${PN}-core = "Clutter graphics library"
+RDEPENDS:${PN}-core = "\
+ clutter-1.0 \
+ clutter-gst-3.0 \
+ clutter-gtk-1.0 \
+ "
diff --git a/meta-gnome/recipes-support/accountsservice/accountsservice/0001-musl-Hack-to-fix-build.patch b/meta-gnome/recipes-support/accountsservice/accountsservice/0001-musl-Hack-to-fix-build.patch
new file mode 100644
index 0000000000..944d2f9165
--- /dev/null
+++ b/meta-gnome/recipes-support/accountsservice/accountsservice/0001-musl-Hack-to-fix-build.patch
@@ -0,0 +1,36 @@
+From ff0718174faf1167fb4765ebe4bd280bbe8d2ac6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Sun, 8 Dec 2019 23:42:00 +0100
+Subject: [PATCH] musl: Hack to fix configure
+
+Upstream-Status: Inappropriate [Musl Specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ meson.build | 11 ++++++++---
+ 1 file changed, 8 insertions(+), 3 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 075776f..dfd7421 100644
+--- a/meson.build
++++ b/meson.build
+@@ -101,9 +101,14 @@ elif cc.has_header_symbol('paths.h', '_PATH_WTMPX')
+
+ config_h.set('PATH_WTMP', '_PATH_WTMPX')
+ else
+- path_wtmp = '/var/log/utx.log'
+- assert(run_command('test', '-e', path_wtmp).returncode() == 0, 'Do not know which filename to watch for wtmp changes')
+- config_h.set_quoted('PATH_WTMP', path_wtmp)
++ # musl: This is just a build fix hack.
++ # As usual they know better, consider all other projects crap and offer zero
++ # alternatives: So wtmp is a dead stub only [1] (= /dev/null/wtmp - taken
++ # from musl sources).
++ # Maybe a hero comes along and adds utmps [2] to make accountsservice useful for musl
++ # [1] https://wiki.musl-libc.org/faq.html#Q:-Why-is-the-utmp/wtmp-functionality-only-implemented-as-stubs?
++ # [2] https://github.com/skarnet/utmps
++ config_h.set_quoted('PATH_WTMP', '/dev/null/wtmp')
+ endif
+
+ # compiler flags
+--
+2.34.1
+
diff --git a/meta-gnome/recipes-support/accountsservice/accountsservice/0002-musl-add-missing-fgetspent_r.patch b/meta-gnome/recipes-support/accountsservice/accountsservice/0002-musl-add-missing-fgetspent_r.patch
new file mode 100644
index 0000000000..2b0924b2e4
--- /dev/null
+++ b/meta-gnome/recipes-support/accountsservice/accountsservice/0002-musl-add-missing-fgetspent_r.patch
@@ -0,0 +1,44 @@
+From 7401e682400df87f3258f795bb1d143f64a35a9f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Mon, 9 Dec 2019 00:12:08 +0100
+Subject: [PATCH] musl: add missing fgetspent_r
+
+Stolen from void-linux
+
+Upstream-Status: Inappropriate [musl-specific]
+
+---
+ src/daemon.c | 20 ++++++++++++++++++++
+ 1 file changed, 20 insertions(+)
+
+diff --git a/src/daemon.c b/src/daemon.c
+index c52bda3..a7676fe 100644
+--- a/src/daemon.c
++++ b/src/daemon.c
+@@ -164,6 +164,26 @@ remove_cache_files (const gchar *user_name)
+ g_remove (icon_filename);
+ }
+
++/* Musl libc does not support fgetspent_r(), write own
++ * wrapper
++ */
++static int fgetspent_r(FILE *fp, struct spwd *spbuf, char *buf, size_t buflen, struct spwd **spbufp) {
++ struct spwd *shadow_entry = fgetspent(fp);
++ if(!shadow_entry)
++ return -1;
++ size_t namplen = strlen(shadow_entry->sp_namp);
++ size_t pwdplen = strlen(shadow_entry->sp_pwdp);
++
++ if(namplen + pwdplen + 2 > buflen)
++ return -1;
++
++ *spbufp = memcpy(spbuf, shadow_entry, sizeof(struct spwd));
++ spbuf->sp_namp = strncpy(buf, shadow_entry->sp_namp, namplen + 1);
++ spbuf->sp_pwdp = strncpy(buf + namplen + 1, shadow_entry->sp_pwdp, pwdplen + 1);
++
++ return 0;
++}
++
+ static struct passwd *
+ entry_generator_fgetpwent (Daemon *daemon,
+ GHashTable *users,
diff --git a/meta-gnome/recipes-support/accountsservice/accountsservice_22.08.8.bb b/meta-gnome/recipes-support/accountsservice/accountsservice_22.08.8.bb
new file mode 100644
index 0000000000..439958c7d2
--- /dev/null
+++ b/meta-gnome/recipes-support/accountsservice/accountsservice_22.08.8.bb
@@ -0,0 +1,32 @@
+DESCRIPTION = "D-Bus interfaces for querying and manipulating user account information"
+HOMEPAGE = "https://www.freedesktop.org/wiki/Software/AccountsService/"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+DEPENDS = " \
+ dbus \
+ polkit \
+"
+
+inherit meson gobject-introspection gtk-doc features_check systemd vala
+
+REQUIRED_DISTRO_FEATURES = "polkit"
+
+SRC_URI = "https://www.freedesktop.org/software/${BPN}/${BPN}-${PV}.tar.xz"
+SRC_URI:append:libc-musl = " \
+ file://0001-musl-Hack-to-fix-build.patch \
+ file://0002-musl-add-missing-fgetspent_r.patch \
+"
+SRC_URI[sha256sum] = "909997a76919fe7dc138a9a01cea70bd622d5a932dbc9fb13010113023a7a391"
+
+GTKDOC_MESON_OPTION = "gtk_doc"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
+PACKAGECONFIG[systemd] = ", -Dsystemdsystemunitdir='no', systemd"
+
+SYSTEMD_SERVICE:${PN} = "accounts-daemon.service"
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/polkit-1 \
+"
diff --git a/meta-gnome/recipes-support/appstream-glib/appstream-glib_0.8.2.bb b/meta-gnome/recipes-support/appstream-glib/appstream-glib_0.8.2.bb
new file mode 100644
index 0000000000..efb85d77c5
--- /dev/null
+++ b/meta-gnome/recipes-support/appstream-glib/appstream-glib_0.8.2.bb
@@ -0,0 +1,39 @@
+SUMMARY = "Objects and helper methods to help reading and writing AppStream metadata"
+HOMEPAGE = "https://people.freedesktop.org/~hughsient/appstream-glib/index.htm"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS = " \
+ curl \
+ gperf-native \
+ glib-2.0 \
+ gtk+3 \
+ libyaml \
+ libarchive \
+ json-glib \
+ gdk-pixbuf \
+ freetype \
+ fontconfig \
+ libstemmer \
+"
+
+inherit meson gobject-introspection gettext bash-completion pkgconfig manpages
+
+SRC_URI = "https://people.freedesktop.org/~hughsient/${BPN}/releases/${BP}.tar.xz"
+SRC_URI[sha256sum] = "71256500add5048d6f08878904708b3d0c3875f402e0adcd358e91d47dcd8b96"
+
+EXTRA_OEMESON = " \
+ -Drpm=false \
+"
+
+PACKAGECONFIG ?= ""
+PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,docbook-xml-dtd4-native docbook-xsl-stylesheets-native libxslt-native"
+
+FILES:${PN} += "${libdir}/asb-plugins-5"
+
+FILES:${PN}-dev += " \
+ ${datadir}/installed-tests \
+ ${datadir}/gettext \
+"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-gnome/recipes-support/colord-gtk/colord-gtk_0.3.1.bb b/meta-gnome/recipes-support/colord-gtk/colord-gtk_0.3.1.bb
new file mode 100644
index 0000000000..1c6d34e461
--- /dev/null
+++ b/meta-gnome/recipes-support/colord-gtk/colord-gtk_0.3.1.bb
@@ -0,0 +1,25 @@
+SUMMARY = "GTK support library for colord"
+HOMEPAGE = "https://www.freedesktop.org/software/colord/"
+LICENSE = "LGPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=e6a600fd5e1d9cbde2d983680233ad02"
+
+inherit meson gobject-introspection gettext gtk-doc features_check
+
+DEPENDS = " \
+ colord \
+"
+
+SRC_URI = "http://www.freedesktop.org/software/colord/releases/${BPN}-${PV}.tar.xz"
+SRC_URI[sha256sum] = "c176b889b75630a17f4e3d7ef24c09a3e12368e633496087459c8b53ac3a122d"
+
+PACKAGECONFIG ??= "gtk3 gtk4"
+PACKAGECONFIG[gtk3] = "-Dgtk3=true, -Dgtk3=false, gtk+3"
+PACKAGECONFIG[gtk4] = "-Dgtk4=true, -Dgtk4=false, gtk4"
+
+EXTRA_OEMESON = "-Dman=false"
+GIR_MESON_OPTION = ""
+# gobject-introspection is mandatory and cannot be configured
+REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
+
+# colord
+REQUIRED_DISTRO_FEATURES += "polkit"
diff --git a/meta-gnome/recipes-support/ibus/ibus-native.bb b/meta-gnome/recipes-support/ibus/ibus-native.bb
new file mode 100644
index 0000000000..ca65114c4d
--- /dev/null
+++ b/meta-gnome/recipes-support/ibus/ibus-native.bb
@@ -0,0 +1,34 @@
+require ${BPN}.inc
+
+inherit native
+
+DEPENDS += " \
+ glib-2.0-native \
+ dbus-native \
+ iso-codes \
+"
+
+PACKAGECONFIG = ""
+
+# for allarch iso-codes
+EXTRA_NATIVE_PKGCONFIG_PATH = ":${RECIPE_SYSROOT}${datadir_native}/pkgconfig"
+# for allarch unicode-ucd - just to make configure happy
+EXTRA_OECONF += "--with-ucd-dir=${RECIPE_SYSROOT}${datadir_native}/unicode/ucd"
+
+do_compile() {
+ cd src
+ # seems by moving to src we break dependency tracking so build what's
+ # necessary step by step
+ oe_runmake ibusenumtypes.h
+ oe_runmake ibusmarshalers.h
+ oe_runmake ibusenumtypes.c
+ oe_runmake unicode-parser
+}
+
+do_install() {
+ install -d ${D}/${libdir}
+ install -m 755 ${S}/src/.libs/libibus-*.so* ${D}/${libdir}
+
+ install -d ${D}/${bindir}
+ install -m 755 ${S}/src/.libs/unicode-parser ${D}/${bindir}
+}
diff --git a/meta-gnome/recipes-support/ibus/ibus.bb b/meta-gnome/recipes-support/ibus/ibus.bb
new file mode 100644
index 0000000000..141341e341
--- /dev/null
+++ b/meta-gnome/recipes-support/ibus/ibus.bb
@@ -0,0 +1,41 @@
+require ${BPN}.inc
+
+DEPENDS += " \
+ ${BPN}-native \
+ glib-2.0-native \
+ glib-2.0 \
+ dbus \
+ iso-codes \
+"
+
+inherit gtk-icon-cache bash-completion features_check
+
+# for unicode-ucd
+EXTRA_OECONF += "--with-ucd-dir=${STAGING_DATADIR}/unicode/ucd"
+
+PACKAGECONFIG ??= " \
+ dconf vala \
+ ${@bb.utils.contains_any('DISTRO_FEATURES', [ 'wayland', 'x11' ], 'gtk3 gtk4', '', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'systemd wayland x11', d)} \
+"
+
+REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG', 'gtk4', 'opengl', '', d)}"
+
+do_configure:prepend() {
+ # run native unicode-parser
+ sed -i 's:$(builddir)/unicode-parser:unicode-parser:g' ${S}/src/Makefile.am
+}
+
+FILES:${PN} += " \
+ ${datadir}/dbus-1 \
+ ${datadir}/GConf \
+ ${datadir}/glib-2.0 \
+ ${libdir}/gtk-3.0 \
+ ${libdir}/gtk-4.0 \
+ ${systemd_user_unitdir} \
+"
+
+FILES:${PN}-dev += " \
+ ${datadir}/gettext \
+"
+RDEPENDS:${PN} += "python3-core"
diff --git a/meta-gnome/recipes-support/ibus/ibus.inc b/meta-gnome/recipes-support/ibus/ibus.inc
new file mode 100644
index 0000000000..9d0600c794
--- /dev/null
+++ b/meta-gnome/recipes-support/ibus/ibus.inc
@@ -0,0 +1,42 @@
+SUMMARY = "Intelligent Input Bus for Linux/Unix"
+HOMEPAGE = "https://github.com/ibus/ibus/wiki"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+
+inherit autotools-brokensep pkgconfig gobject-introspection gettext gtk-doc vala
+
+PV = "1.5.26"
+
+DEPENDS = "unicode-ucd"
+
+SRC_URI = " \
+ git://github.com/ibus/ibus.git;branch=main;protocol=https \
+ file://0001-Do-not-try-to-start-dbus-we-do-not-have-dbus-lauch.patch \
+ file://0001-makefile-don-t-gzip-the-man-pages.patch \
+"
+SRCREV = "6a70ab0338206bd1c7d01a4e1874ea0ee5b3a9d3"
+S = "${WORKDIR}/git"
+
+PACKAGECONFIG[appindicator] = "--enable-appindicator,--disable-appindicator,qtbase"
+PACKAGECONFIG[dconf] = "--enable-dconf,--disable-dconf,dconf"
+PACKAGECONFIG[gtk2] = "--enable-gtk2,--disable-gtk2,gtk+"
+PACKAGECONFIG[gtk3] = "--enable-gtk3,--disable-gtk3,gtk+3"
+PACKAGECONFIG[gtk4] = "--enable-gtk4,--disable-gtk4,gtk4"
+PACKAGECONFIG[systemd] = "--enable-systemd-services,--disable-systemd-services,systemd"
+PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland"
+PACKAGECONFIG[vala] = "--enable-vala,--disable-vala"
+PACKAGECONFIG[x11] = "--enable-xim --enable-ui,--disable-xim --disable-ui,virtual/libx11"
+
+EXTRA_OECONF = " \
+ --disable-tests \
+ --disable-emoji-dict \
+ --disable-python2 \
+"
+EXTRA_OECONF:append:class-target = "\
+ --with-python=${bindir}/python3 \
+"
+
+do_configure:prepend() {
+ touch ${S}/ChangeLog
+ touch ${S}/ABOUT-NLS
+}
diff --git a/meta-gnome/recipes-support/ibus/ibus/0001-Do-not-try-to-start-dbus-we-do-not-have-dbus-lauch.patch b/meta-gnome/recipes-support/ibus/ibus/0001-Do-not-try-to-start-dbus-we-do-not-have-dbus-lauch.patch
new file mode 100644
index 0000000000..aec9e7abec
--- /dev/null
+++ b/meta-gnome/recipes-support/ibus/ibus/0001-Do-not-try-to-start-dbus-we-do-not-have-dbus-lauch.patch
@@ -0,0 +1,34 @@
+From f567bcbc2108d722faa90afeb03d3a3bcdf5f58b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Fri, 10 May 2019 14:30:08 +0200
+Subject: [PATCH] Do not try to start dbus - we do not have dbus-lauch
+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>
+---
+ data/dconf/make-dconf-override-db.sh | 6 ------
+ 1 file changed, 6 deletions(-)
+
+--- a/data/dconf/make-dconf-override-db.sh
++++ b/data/dconf/make-dconf-override-db.sh
+@@ -12,10 +12,6 @@ export XDG_CACHE_HOME="$TMPDIR/cache"
+ export GSETTINGS_SCHEMA_DIR="$TMPDIR/schemas"
+ mkdir -p $XDG_CONFIG_HOME $XDG_CACHE_HOME $GSETTINGS_SCHEMA_DIR
+
+-eval `dbus-launch --sh-syntax`
+-
+-trap 'rm -rf $TMPDIR; kill $DBUS_SESSION_BUS_PID' ERR
+-
+ # in case that schema is not installed on the system
+ glib-compile-schemas --targetdir "$GSETTINGS_SCHEMA_DIR" "$PWD"
+
+@@ -52,5 +48,3 @@ if [ -d $TMPDIR/cache/gvfs ] ; then
+ umount $TMPDIR/cache/gvfs
+ fi
+ rm -rf $TMPDIR
+-
+-kill $DBUS_SESSION_BUS_PID
diff --git a/meta-gnome/recipes-support/ibus/ibus/0001-makefile-don-t-gzip-the-man-pages.patch b/meta-gnome/recipes-support/ibus/ibus/0001-makefile-don-t-gzip-the-man-pages.patch
new file mode 100644
index 0000000000..105e34873a
--- /dev/null
+++ b/meta-gnome/recipes-support/ibus/ibus/0001-makefile-don-t-gzip-the-man-pages.patch
@@ -0,0 +1,164 @@
+From 5307c3b310fabeaa52fafe743c5efaca73ccce46 Mon Sep 17 00:00:00 2001
+From: Emil Velikov <emil.l.velikov@gmail.com>
+Date: Sun, 11 Jun 2023 16:16:35 +0900
+Subject: [PATCH] makefile: don't gzip the man pages
+
+Drop the gzip step from the manpages - distributions already do that as
+needed. In addition this resolves the final reproducibility issue with
+ibus.
+
+BUG=https://github.com/ibus/ibus/pull/2514
+
+Upstream-Status: Backport [https://github.com/ibus/ibus/commit/1a25975d9f55f18eab609e4d147dd32689e367f3]
+Note: This commit is included in version >= 1.5.29 and can be dropped
+after upgrading.
+Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
+---
+ bus/Makefile.am | 6 +-----
+ data/dconf/Makefile.am | 6 +-----
+ setup/Makefile.am | 6 +-----
+ tools/Makefile.am | 6 +-----
+ ui/gtk3/Makefile.am | 6 +-----
+ 5 files changed, 5 insertions(+), 25 deletions(-)
+
+diff --git a/bus/Makefile.am b/bus/Makefile.am
+index e173ee25..d0445d02 100644
+--- a/bus/Makefile.am
++++ b/bus/Makefile.am
+@@ -169,7 +169,6 @@ EXTRA_DIST = \
+
+ CLEANFILES = \
+ $(man_one_DATA) \
+- $(man_one_files) \
+ $(NULL)
+
+ $(libibus):
+@@ -181,14 +180,11 @@ test: ibus-daemon
+ $(builddir)/ibus-daemon -v
+
+ man_one_in_files = ibus-daemon.1.in
+-man_one_files = $(man_one_in_files:.1.in=.1)
+-man_one_DATA =$(man_one_files:.1=.1.gz)
++man_one_DATA = $(man_one_in_files:.1.in=.1)
+ man_onedir = $(mandir)/man1
+ %.1: %.1.in
+ $(AM_V_GEN) sed \
+ -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \
+ mv $@.tmp $@
+-%.1.gz: %.1
+- $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@
+
+ -include $(top_srcdir)/git.mk
+diff --git a/data/dconf/Makefile.am b/data/dconf/Makefile.am
+index 5360f033..2352f770 100644
+--- a/data/dconf/Makefile.am
++++ b/data/dconf/Makefile.am
+@@ -38,15 +38,12 @@ dconfdb_DATA = 00-upstream-settings
+ { rc=$$?; $(RM) -rf $@; exit $$rc; }
+
+ man_5_in_files = 00-upstream-settings.5.in ibus.5.in
+-man_5_files = $(man_5_in_files:.5.in=.5)
+-man_5_DATA =$(man_5_files:.5=.5.gz)
++man_5_DATA = $(man_5_in_files:.5.in=.5)
+ man_5dir = $(mandir)/man5
+ %.5: %.5.in
+ $(AM_V_GEN) sed \
+ -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \
+ mv $@.tmp $@
+-%.5.gz: %.5
+- $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@
+
+ install-data-hook:
+ if test -z "$(DESTDIR)"; then \
+@@ -63,7 +60,6 @@ EXTRA_DIST = \
+
+ CLEANFILES = \
+ $(man_5_DATA) \
+- $(man_5_files) \
+ $(NULL)
+
+ MAINTAINERCLEANFILES = \
+diff --git a/setup/Makefile.am b/setup/Makefile.am
+index 34c8f136..b34aa8fc 100644
+--- a/setup/Makefile.am
++++ b/setup/Makefile.am
+@@ -56,20 +56,16 @@ org.freedesktop.IBus.Setup.desktop: ibus-setup.desktop
+ $(AM_V_GEN) $(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@
+
+ man_one_in_files = ibus-setup.1.in
+-man_one_files = $(man_one_in_files:.1.in=.1)
+-man_one_DATA =$(man_one_files:.1=.1.gz)
++man_one_DATA = $(man_one_in_files:.1.in=.1)
+ man_onedir = $(mandir)/man1
+ %.1: %.1.in
+ $(AM_V_GEN) sed \
+ -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \
+ mv $@.tmp $@
+-%.1.gz: %.1
+- $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@
+
+ CLEANFILES = \
+ $(desktop_DATA) \
+ $(man_one_DATA) \
+- $(man_one_files) \
+ *.pyc \
+ ibus-setup \
+ $(NULL)
+diff --git a/tools/Makefile.am b/tools/Makefile.am
+index 5c18d3d6..1c716136 100644
+--- a/tools/Makefile.am
++++ b/tools/Makefile.am
+@@ -79,15 +79,12 @@ bash_completion_DATA= \
+ bash_completiondir=@datadir@/bash-completion/completions
+
+ man_one_in_files = ibus.1.in
+-man_one_files = $(man_one_in_files:.1.in=.1)
+-man_one_DATA =$(man_one_files:.1=.1.gz)
++man_one_DATA = $(man_one_in_files:.1.in=.1)
+ man_onedir = $(mandir)/man1
+ %.1: %.1.in
+ $(AM_V_GEN) sed \
+ -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \
+ mv $@.tmp $@
+-%.1.gz: %.1
+- $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@
+
+ EXTRA_DIST = \
+ $(man_one_in_files) \
+@@ -96,7 +93,6 @@ EXTRA_DIST = \
+
+ CLEANFILES = \
+ $(man_one_DATA) \
+- $(man_one_files) \
+ $(NULL)
+
+ if ENABLE_EMOJI_DICT
+diff --git a/ui/gtk3/Makefile.am b/ui/gtk3/Makefile.am
+index ab379328..aff035da 100644
+--- a/ui/gtk3/Makefile.am
++++ b/ui/gtk3/Makefile.am
+@@ -242,15 +242,12 @@ panelbinding.o: $(srcdir)/panelbinding.c
+
+ MAINTAINERCLEANFILES += extension.c panelbinding.c
+
+-man_seven_files = $(man_seven_in_files:.7.in=.7)
+-man_seven_DATA =$(man_seven_files:.7=.7.gz)
++man_seven_DATA = $(man_seven_in_files:.7.in=.7)
+ man_sevendir = $(mandir)/man7
+ %.7: %.7.in
+ $(AM_V_GEN) sed \
+ -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \
+ mv $@.tmp $@
+-%.7.gz: %.7
+- $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@
+
+ desktop_in_files = \
+ ibus-ui-emojier.desktop.in \
+@@ -278,7 +275,6 @@ CLEANFILES += \
+ $(desktop_DATA) \
+ $(desktop_notrans_files) \
+ $(man_seven_DATA) \
+- $(man_seven_files) \
+ $(NULL)
+
+ endif
diff --git a/meta-gnome/recipes-support/keybinder/keybinder_3.0.bb b/meta-gnome/recipes-support/keybinder/keybinder_3.0.bb
index 0a0a3e6b43..7960009078 100644
--- a/meta-gnome/recipes-support/keybinder/keybinder_3.0.bb
+++ b/meta-gnome/recipes-support/keybinder/keybinder_3.0.bb
@@ -9,20 +9,21 @@ DEPENDS = "gtk+3 gobject-introspection-native \
LIC_FILES_CHKSUM = "file://COPYING;md5=1f18f9c6d8b4cfcc7d7804a243a4c0b4"
S = "${WORKDIR}/git"
-B = "${S}"
SRCREV = "736ccef40d39603b8111c8a3a0bca0319bbafdc0"
-PV = "3.0+git${SRCPV}"
-SRC_URI = "git://github.com/engla/keybinder.git;branch=keybinder-3.0 \
+PV = "3.0+git"
+SRC_URI = "git://github.com/engla/keybinder.git;branch=keybinder-3.0;protocol=https \
"
-RDEPENDS_${PN} = "gtk+"
+RDEPENDS:${PN} = "gtk+"
-inherit distro_features_check autotools gtk-doc gobject-introspection
+inherit features_check autotools-brokensep gtk-doc gobject-introspection
REQUIRED_DISTRO_FEATURES = "x11"
-do_configure_prepend() {
+do_configure:prepend() {
touch ${S}/ChangeLog
}
-SRC_DISTRIBUTE_LICENSES += "X11"
+# gtk-doc generation doesn't work, so disable it:
+# ../keybinder-docs.sgml:26: element include: XInclude error : could not load ../xml/tree_index.sgml, and no fallback was found
+GTKDOC_ENABLED = "False"
diff --git a/meta-gnome/recipes-support/libcloudproviders/libcloudproviders_0.3.6.bb b/meta-gnome/recipes-support/libcloudproviders/libcloudproviders_0.3.6.bb
new file mode 100644
index 0000000000..f5660b5267
--- /dev/null
+++ b/meta-gnome/recipes-support/libcloudproviders/libcloudproviders_0.3.6.bb
@@ -0,0 +1,11 @@
+SUMMARY = "libcloudproviders is a DBus API that allows cloud storage sync clients to expose their services."
+LICENSE="LGPL-3.0-or-later"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e6a600fd5e1d9cbde2d983680233ad02"
+
+VALA_MESON_OPTION ?= 'vapigen'
+
+DEPENDS = "glib-2.0"
+
+inherit gnomebase gobject-introspection vala
+
+SRC_URI[archive.sha256sum] = "3b75110b3a4fdef4c5c5a440e48701fe054d2ae061d156c89136bb5ba05e74b7"
diff --git a/meta-gnome/recipes-support/libuser/libuser/0001-docs-Disable-building.patch b/meta-gnome/recipes-support/libuser/libuser/0001-docs-Disable-building.patch
new file mode 100644
index 0000000000..add2872cca
--- /dev/null
+++ b/meta-gnome/recipes-support/libuser/libuser/0001-docs-Disable-building.patch
@@ -0,0 +1,29 @@
+From e6bdf74a424652c4f9a38457c7fa93a2051157f5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 30 Aug 2022 13:09:07 -0700
+Subject: [PATCH] docs: Disable building
+
+It needs linuxdoc-tools which we do not have in OE anymore
+
+Upstream-Status: Inappropriate [OE-Specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ docs/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/docs/Makefile.am b/docs/Makefile.am
+index daa2288..b355185 100644
+--- a/docs/Makefile.am
++++ b/docs/Makefile.am
+@@ -8,7 +8,7 @@ CLEANFILES = $(man_MANS) $(SGML_OUTPUTS)
+ EXTRA_DIST = attributes.txt libuser.conf.5.in rfc2307.txt sgml/libuser.sgml \
+ $(SGML_OUTPUTS)
+
+-all: sgml/libuser.txt sgml/libuser.html
++all:
+
+ libuser.conf.5: $(srcdir)/libuser.conf.5.in Makefile
+ sed 's,@sysconfdir\@,$(sysconfdir),g' \
+--
+2.37.2
+
diff --git a/meta-gnome/recipes-support/libuser/libuser/0001-modules-files.c-parse_field-fix-string-formating-in-.patch b/meta-gnome/recipes-support/libuser/libuser/0001-modules-files.c-parse_field-fix-string-formating-in-.patch
deleted file mode 100644
index 7c47df22e4..0000000000
--- a/meta-gnome/recipes-support/libuser/libuser/0001-modules-files.c-parse_field-fix-string-formating-in-.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From a4857911ece5ebfcdef42aee4c070eb216f39597 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= <anibal.limon@linux.intel.com>
-Date: Fri, 13 May 2016 11:40:13 -0500
-Subject: [PATCH] modules/files.c: parse_field fix string formating in
- g_warnings
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-[YOCTO #9547]
-
-Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
-
-Upstream-Status: Pending
----
- modules/files.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/modules/files.c b/modules/files.c
-index 4ef0a57..35eafc9 100644
---- a/modules/files.c
-+++ b/modules/files.c
-@@ -534,7 +534,7 @@ parse_field(const struct format_specifier *format, GValue *value,
- string, &err);
- if (ret == FALSE) {
- g_assert(err != NULL);
-- g_warning(lu_strerror(err));
-+ g_warning(lu_strerror(err), NULL);
- lu_error_free(&err);
- }
- return ret;
---
-2.1.4
-
diff --git a/meta-gnome/recipes-support/libuser/libuser/gtkdoc.patch b/meta-gnome/recipes-support/libuser/libuser/gtkdoc.patch
new file mode 100644
index 0000000000..4d11b94e02
--- /dev/null
+++ b/meta-gnome/recipes-support/libuser/libuser/gtkdoc.patch
@@ -0,0 +1,22 @@
+Update the GTK_DOC_CHECK invocation to specify where the
+documentation will be built (as the default is ./docs).
+
+This is needed so that gtkdocize as run by autopoint knows where the
+documentation will be built.
+
+Upstream-Status: Submitted [https://pagure.io/libuser/pull-request/70]
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+diff --git a/configure.ac b/configure.ac
+index 0bd4a67..51508b7 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -169,7 +169,7 @@ if test "$GCC" = yes ; then
+ AC_MSG_RESULT([$enable_Werror])
+ fi
+
+-GTK_DOC_CHECK
++GTK_DOC_CHECK([1.14],[--flavour no-tmpl --docdir docs/reference])
+
+ AC_CONFIG_FILES([Makefile po/Makefile.in docs/Makefile docs/reference/Makefile
+ libuser.pc])
diff --git a/meta-gnome/recipes-support/libuser/libuser_0.62.bb b/meta-gnome/recipes-support/libuser/libuser_0.64.bb
index 74053e451a..6d3bce8a1c 100644
--- a/meta-gnome/recipes-support/libuser/libuser_0.62.bb
+++ b/meta-gnome/recipes-support/libuser/libuser_0.64.bb
@@ -4,31 +4,38 @@ and group accounts"
HOMEPAGE = "https://pagure.io/libuser"
BUGTRACKER = "https://pagure.io/libuser/issues"
-LICENSE = "LGPLv2"
+LICENSE = "LGPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
file://lib/user.h;endline=19;md5=76b301f63c39fa992062395efbdc9558 \
file://samples/testuser.c;endline=19;md5=3b87fa660fa3f4a6bb31d624afe30ba1"
SECTION = "base"
-SRC_URI = "https://releases.pagure.org/libuser/libuser-${PV}.tar.xz \
+SRC_URI = "https://releases.pagure.org/libuser/libuser-${PV}.tar.gz \
+ file://0001-docs-Disable-building.patch \
file://0002-remove-unused-execinfo.h.patch \
- file://0001-modules-files.c-parse_field-fix-string-formating-in-.patch \
+ file://gtkdoc.patch \
"
-SRC_URI[md5sum] = "63e5e5c551e99dc5302b40b80bd6d4f2"
-SRC_URI[sha256sum] = "a58ff4fabb01a25043b142185a33eeea961109dd60d4b40b6a9df4fa3cace20b"
+SRC_URI[sha256sum] = "ea6094c72cb9e60a42fb53509dc98d124a340f1c9222783b503208adc16a0a8f"
-DEPENDS = "popt libpam glib-2.0 python3"
+DEPENDS = "bison-native popt libpam glib-2.0 python3"
-inherit distro_features_check
-REQUIRED_DISTRO_FEATURES = "pam"
+inherit autotools features_check gettext python3native python3-dir pkgconfig gtk-doc
-inherit autotools gettext python3native python3-dir pkgconfig gtk-doc
+REQUIRED_DISTRO_FEATURES = "pam"
EXTRA_OEMAKE = "PYTHON_CPPFLAGS=-I${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI}"
+do_configure:prepend() {
+ install -d ${S}/admin -d ${S}/m4
+ touch ${S}/ABOUT-NLS ${S}/admin/config.rpath
+ cd ${S}
+ bison lib/getdate.y -o lib/getdate.c
+ cd -
+}
+
PACKAGES += "${PN}-python "
-FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
+FILES:${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
diff --git a/meta-gnome/recipes-support/libwacom/libwacom_2.8.0.bb b/meta-gnome/recipes-support/libwacom/libwacom_2.8.0.bb
new file mode 100644
index 0000000000..8f45221ad3
--- /dev/null
+++ b/meta-gnome/recipes-support/libwacom/libwacom_2.8.0.bb
@@ -0,0 +1,24 @@
+SUMMARY = "A tablet description library"
+DESCRIPTION = "libwacom is a library to identify Wacom tablets and their model-specific features. \
+ It provides easy access to information such as 'is this a built-in on-screen tablet\', \
+ 'what is the size of this model', etc."
+HOMEPAGE = "https://github.com/linuxwacom/libwacom"
+BUGTRACKER = "https://github.com/linuxwacom/libwacom/issues"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=40a21fffb367c82f39fd91a3b137c36e"
+
+SRC_URI = "git://github.com/linuxwacom/libwacom.git;branch=master;protocol=https"
+SRCREV = "f5b92814320d0a5745b50b7b36103843ad23e299"
+
+DEPENDS = " \
+ libxml2-native \
+ libgudev \
+"
+
+S = "${WORKDIR}/git"
+
+inherit meson pkgconfig
+
+EXTRA_OEMESON = " \
+ -Dtests=disabled \
+"
diff --git a/meta-gnome/recipes-support/onboard/onboard/0001-pypredict-lm-Define-error-API-if-platform-does-not-h.patch b/meta-gnome/recipes-support/onboard/onboard/0001-pypredict-lm-Define-error-API-if-platform-does-not-h.patch
deleted file mode 100644
index fda37895c9..0000000000
--- a/meta-gnome/recipes-support/onboard/onboard/0001-pypredict-lm-Define-error-API-if-platform-does-not-h.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-From 1c95f64aa342147387ce4b1b7269a5c8b34bd898 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 13 Jul 2017 09:01:04 -0700
-Subject: [PATCH] pypredict/lm: Define error API if platform does not have it
-
-error() API is not implemented across all libcs on linux
-e.g. musl does not provide it.
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- Onboard/pypredict/lm/lm.cpp | 1 -
- Onboard/pypredict/lm/lm.h | 13 +++++++++++++
- Onboard/pypredict/lm/lm_dynamic.cpp | 2 --
- 3 files changed, 13 insertions(+), 3 deletions(-)
-
-diff --git a/Onboard/pypredict/lm/lm.cpp b/Onboard/pypredict/lm/lm.cpp
-index 2e64296..37ae241 100644
---- a/Onboard/pypredict/lm/lm.cpp
-+++ b/Onboard/pypredict/lm/lm.cpp
-@@ -19,7 +19,6 @@
-
- #include <stdlib.h>
- #include <stdio.h>
--#include <error.h>
- #include <algorithm>
- #include <cmath>
- #include <string>
-diff --git a/Onboard/pypredict/lm/lm.h b/Onboard/pypredict/lm/lm.h
-index ed4164a..b8b63ee 100644
---- a/Onboard/pypredict/lm/lm.h
-+++ b/Onboard/pypredict/lm/lm.h
-@@ -32,6 +32,19 @@
- #include <algorithm>
- #include <string>
-
-+#if defined(HAVE_ERROR_H)
-+#include <error.h>
-+#else
-+#include <err.h>
-+#define _onboard_error(S, E, F, ...) do { \
-+ if (E) \
-+ err(S, F ": %s", ##__VA_ARGS__, strerror(E)); \
-+ else \
-+ err(S, F, ##__VA_ARGS__); \
-+} while(0)
-+
-+#define error _onboard_error
-+#endif
-
- // break into debugger
- // step twice to come back out of the raise() call into known code
-diff --git a/Onboard/pypredict/lm/lm_dynamic.cpp b/Onboard/pypredict/lm/lm_dynamic.cpp
-index 7c62824..e7c7f40 100644
---- a/Onboard/pypredict/lm/lm_dynamic.cpp
-+++ b/Onboard/pypredict/lm/lm_dynamic.cpp
-@@ -17,8 +17,6 @@
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
--#include <error.h>
--
- #include "lm_dynamic.h"
-
- using namespace std;
---
-2.13.2
-
diff --git a/meta-gnome/recipes-support/onboard/onboard_1.4.1.bb b/meta-gnome/recipes-support/onboard/onboard_1.4.1.bb
deleted file mode 100644
index 4e49becc4f..0000000000
--- a/meta-gnome/recipes-support/onboard/onboard_1.4.1.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-SUMMARY = "An onscreen keyboard"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING.GPL3;md5=8521fa4dd51909b407c5150498d34f4e"
-
-DEPENDS += "gtk+3 hunspell libcanberra libxkbfile dconf python3-distutils-extra-native intltool-native"
-
-SRC_URI = "https://launchpad.net/onboard/1.4/${PV}/+download/${BPN}-${PV}.tar.gz \
- file://0001-pypredict-lm-Define-error-API-if-platform-does-not-h.patch \
- "
-SRC_URI[md5sum] = "1a2fbe82e934f5b37841d17ff51e80e8"
-SRC_URI[sha256sum] = "01cae1ac5b1ef1ab985bd2d2d79ded6fc99ee04b1535cc1bb191e43a231a3865"
-
-inherit distro_features_check setuptools3 pkgconfig gtk-icon-cache gsettings
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-FILES_${PN} += " \
- ${datadir}/dbus-1 \
- ${datadir}/icons \
- ${datadir}/gnome-shell \
- ${datadir}/help \
-"
-
-RDEPENDS_${PN} += " \
- ncurses \
- python3-dbus \
- python3-pycairo \
- python3-pygobject \
-"
diff --git a/meta-gnome/recipes-support/packagegroups/packagegroup-gnome-apps.bb b/meta-gnome/recipes-support/packagegroups/packagegroup-gnome-apps.bb
new file mode 100644
index 0000000000..7151f93267
--- /dev/null
+++ b/meta-gnome/recipes-support/packagegroups/packagegroup-gnome-apps.bb
@@ -0,0 +1,28 @@
+SUMMARY = "GNOME applications"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+
+inherit packagegroup features_check
+
+REQUIRED_DISTRO_FEATURES = "x11 polkit gobject-introspection-data"
+
+RDEPENDS:${PN} = " \
+ evolution-data-server \
+ evince \
+ file-roller \
+ geary \
+ gedit \
+ ghex \
+ gnome-calculator \
+ gnome-calendar \
+ gnome-commander \
+ gnome-font-viewer \
+ gnome-photos \
+ gnome-screenshot \
+ gnome-terminal \
+ gnome-text-editor \
+ gthumb \
+ libwnck3 \
+ nautilus \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'gnome-system-monitor gnome-disk-utility', '', d)} \
+"
diff --git a/meta-gnome/recipes-support/packagegroups/packagegroup-gnome-desktop.bb b/meta-gnome/recipes-support/packagegroups/packagegroup-gnome-desktop.bb
new file mode 100644
index 0000000000..13394ca1db
--- /dev/null
+++ b/meta-gnome/recipes-support/packagegroups/packagegroup-gnome-desktop.bb
@@ -0,0 +1,30 @@
+SUMMARY = "Basic GNOME desktop"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+
+# gnome-menus & gmime get debian renamed
+PACKAGE_ARCH = "${TUNE_PKGARCH}"
+
+inherit packagegroup features_check
+
+REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam gobject-introspection-data"
+
+RDEPENDS:${PN} = " \
+ adwaita-icon-theme \
+ adwaita-icon-theme-cursors \
+ evolution-data-server \
+ gnome-backgrounds \
+ gnome-bluetooth \
+ gnome-control-center \
+ gnome-desktop \
+ gnome-flashback \
+ gnome-keyring \
+ gnome-menus \
+ gnome-session \
+ gnome-settings-daemon \
+ gnome-shell \
+ gnome-shell-extensions \
+ gnome-tweaks \
+ gmime \
+ gvfs gvfsd-ftp gvfsd-sftp gvfsd-trash \
+"
diff --git a/meta-gnome/recipes-support/usermode/usermode/0001-Makefile.am-Link-with-libm-for-powl-API.patch b/meta-gnome/recipes-support/usermode/usermode/0001-Makefile.am-Link-with-libm-for-powl-API.patch
index 76640b0a1e..7a052b23b9 100644
--- a/meta-gnome/recipes-support/usermode/usermode/0001-Makefile.am-Link-with-libm-for-powl-API.patch
+++ b/meta-gnome/recipes-support/usermode/usermode/0001-Makefile.am-Link-with-libm-for-powl-API.patch
@@ -3,24 +3,25 @@ From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 25 Jul 2017 18:28:15 -0700
Subject: [PATCH] Makefile.am: Link with libm for powl() API
+Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.am b/Makefile.am
-index 4219f28..2a5ceac 100644
+index 779416a..67e2cc3 100644
--- a/Makefile.am
+++ b/Makefile.am
-@@ -69,7 +69,7 @@ dist_pkgdata_DATA = usermode.ui
+@@ -82,7 +82,7 @@ endif
userhelper_SOURCES = userhelper.c userhelper.h shvar.c shvar.h
userhelper_CPPFLAGS = $(AM_CPPFLAGS) -DSYSCONFDIR='"$(sysconfdir)"'
- userhelper_LDADD = liblib.a $(LIBUSER_LIBS) $(GLIB_LIBS) $(PAM_LIBS) \
+ userhelper_LDADD = liblib.a $(LIBUSER_LIBS) $(GLIB_LIBS) $(PAM_LIBS) -lm \
- $(SELINUX_LIBS) $(EFENCE_LIBS)
+ $(SELINUX_LIBS) $(EFENCE_LIBS) -lm
+ if GTK
userinfo_SOURCES = userinfo.c
- userinfo_CPPFLAGS = $(AM_CPPFLAGS) $(PIXMAPDIR_CPPFLAGS) $(SBINDIR_CPPFLAGS) \
--
-2.13.3
+2.31.1
diff --git a/meta-gnome/recipes-support/usermode/usermode_1.113.bb b/meta-gnome/recipes-support/usermode/usermode_1.114.bb
index 0527836269..1811b2d3c4 100644
--- a/meta-gnome/recipes-support/usermode/usermode_1.113.bb
+++ b/meta-gnome/recipes-support/usermode/usermode_1.114.bb
@@ -1,3 +1,4 @@
+SUMMARY = "Tools for certain user account management tasks"
DESCRIPTION = "The usermode contains the userhelper program, which can be used to allow configured \
programs to be run with superuser privileges by ordinary users, and several \
graphical tools for users: \
@@ -6,7 +7,9 @@ graphical tools for users: \
* userpasswd allows users to change their passwords. \
"
HOMEPAGE = "https://pagure.io/usermode"
-LICENSE = "GPLv2+"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
DEPENDS = "libuser ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)} \
gtk+ desktop-file-utils-native \
startup-notification intltool-native \
@@ -17,13 +20,11 @@ SRC_URI = "https://releases.pagure.org/${BPN}/${BPN}-${PV}.tar.xz \
file://0001-fix-compile-failure-against-musl-C-library.patch \
file://0001-Makefile.am-Link-with-libm-for-powl-API.patch \
"
-SRC_URI[md5sum] = "eadfbff18578b645096b6fa61854b41d"
-SRC_URI[sha256sum] = "99fbfd248b411ed0e7c44d1957b0ecde699b5a968a4db5d37228e82e7b1ba092"
+SRC_URI[sha256sum] = "e7f58712b12175965b3a21522052863a061f3f1a888df3ffbe713b434f80254f"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+REQUIRED_DISTRO_FEATURES = "x11 pam"
-inherit distro_features_check autotools gettext pkgconfig
+inherit features_check autotools gettext pkgconfig
EXTRA_OEMAKE += "INSTALL='install -p'"
-REQUIRED_DISTRO_FEATURES = "x11 pam"
diff --git a/meta-gnome/recipes-support/webp-pixbuf-loader/webp-pixbuf-loader_0.2.7.bb b/meta-gnome/recipes-support/webp-pixbuf-loader/webp-pixbuf-loader_0.2.7.bb
new file mode 100644
index 0000000000..73f22a3d95
--- /dev/null
+++ b/meta-gnome/recipes-support/webp-pixbuf-loader/webp-pixbuf-loader_0.2.7.bb
@@ -0,0 +1,23 @@
+SUMMARY = "WebP GDK Pixbuf Loader library"
+HOMEPAGE = "https://github.com/aruiz/webp-pixbuf-loader"
+LICENSE = "LGPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://LICENSE.LGPL-2;md5=0d90e6d44bcf69014bfae649c75aa6ca"
+
+DEPENDS = " \
+ gdk-pixbuf \
+ libwebp \
+"
+
+inherit meson pkgconfig
+
+EXTRA_OEMESON = "-Dupdate_cache=true"
+
+SRC_URI = "git://github.com/aruiz/webp-pixbuf-loader.git;protocol=https;branch=mainline"
+
+S = "${WORKDIR}/git"
+SRCREV = "52232e4ba282b2fed68e8fcb4b5d45ed0eaa4ed3"
+
+FILES:${PN} = " \
+ ${datadir}/thumbnailers/webp-pixbuf.thumbnailer \
+ ${libdir}/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-webp.so \
+"
diff --git a/meta-gnome/recipes-support/xdg-desktop-portal/xdg-desktop-portal-gnome_46.2.bb b/meta-gnome/recipes-support/xdg-desktop-portal/xdg-desktop-portal-gnome_46.2.bb
new file mode 100644
index 0000000000..e1dd8afae9
--- /dev/null
+++ b/meta-gnome/recipes-support/xdg-desktop-portal/xdg-desktop-portal-gnome_46.2.bb
@@ -0,0 +1,31 @@
+SUMMARY = "A xdg-desktop-portal backend for gnome."
+HOMEPAGE = "https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS = " \
+ glib-2.0-native \
+ gtk4\
+ xdg-desktop-portal \
+ xdg-desktop-portal-gtk \
+ libadwaita \
+ fontconfig \
+ gsettings-desktop-schemas \
+ gnome-desktop \
+ dconf \
+"
+
+RDEPENDS:${PN} = "xdg-desktop-portal xdg-desktop-portal-gtk"
+
+inherit gnomebase pkgconfig gsettings features_check
+
+REQUIRED_DISTRO_FEATURES = "polkit"
+
+SRC_URI[archive.sha256sum] = "b5c65ea25e8483502d033a613be6dc6b71883ac07f1a3e474ad18049c47d16d6"
+
+PACKAGECONFIG ?= "screenshot screencast ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)}"
+PACKAGECONFIG[wayland] = ",,wayland-native"
+PACKAGECONFIG[screenshot] = ",,,gnome-shell"
+PACKAGECONFIG[screencast] = ",,,mutter"
+
+FILES:${PN} += "${systemd_user_unitdir} ${datadir}"
diff --git a/meta-gnome/recipes-support/xdg-desktop-portal/xdg-desktop-portal-gtk_1.15.1.bb b/meta-gnome/recipes-support/xdg-desktop-portal/xdg-desktop-portal-gtk_1.15.1.bb
new file mode 100644
index 0000000000..0d2b0012c5
--- /dev/null
+++ b/meta-gnome/recipes-support/xdg-desktop-portal/xdg-desktop-portal-gtk_1.15.1.bb
@@ -0,0 +1,30 @@
+SUMMARY = "A backend implementation for xdg-desktop-portal that is using GTK and various pieces of GNOME infrastructure."
+HOMEPAGE = "https://github.com/flatpak/xdg-desktop-portal-gtk"
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS = " \
+ glib-2.0-native \
+ gtk+3\
+ xdg-desktop-portal \
+ libadwaita \
+ dconf \
+"
+
+inherit gettext meson pkgconfig gsettings features_check
+
+REQUIRED_DISTRO_FEATURES = "polkit"
+
+SRC_URI = "git://github.com/flatpak/xdg-desktop-portal-gtk.git;protocol=https;branch=main"
+
+S = "${WORKDIR}/git"
+SRCREV = "54003825481c2b48fd0c42355b484469dea12020"
+
+PACKAGECONFIG ?= "wallpaper appchooser lockdown settings"
+
+PACKAGECONFIG[wallpaper] = "-Dwallpaper=enabled,-Dwallpaper=disabled,gnome-desktop"
+PACKAGECONFIG[settings] = "-Dsettings=enabled,-Dsettings=disabled,gsettings-desktop-schemas fontconfig"
+PACKAGECONFIG[appchooser] = "-Dappchooser=enabled,-Dappchooser=disabled"
+PACKAGECONFIG[lockdown] = "-Dlockdown=enabled,-Dlockdown=disabled"
+
+FILES:${PN} += "${systemd_user_unitdir} ${datadir}"
diff --git a/meta-gnome/site/arm-64 b/meta-gnome/site/arm-64
deleted file mode 100644
index f474d2cc40..0000000000
--- a/meta-gnome/site/arm-64
+++ /dev/null
@@ -1,13 +0,0 @@
-# ORBit2
-ac_cv_alignof_CORBA_boolean=1
-ac_cv_alignof_CORBA_char=1
-ac_cv_alignof_CORBA_double=8
-ac_cv_alignof_CORBA_float=4
-ac_cv_alignof_CORBA_long=4
-ac_cv_alignof_CORBA_long_double=8
-ac_cv_alignof_CORBA_long_long=8
-ac_cv_alignof_CORBA_octet=1
-ac_cv_alignof_CORBA_pointer=4
-ac_cv_alignof_CORBA_short=2
-ac_cv_alignof_CORBA_struct=1
-ac_cv_alignof_CORBA_wchar=2
diff --git a/meta-gnome/site/riscv64-linux b/meta-gnome/site/riscv64-linux
deleted file mode 100644
index e3a41ea0e1..0000000000
--- a/meta-gnome/site/riscv64-linux
+++ /dev/null
@@ -1,16 +0,0 @@
-# libidl
-libIDL_cv_long_long_format=${libIDL_cv_long_long_format=ll}
-
-# ORBit2
-ac_cv_alignof_CORBA_boolean=1
-ac_cv_alignof_CORBA_char=1
-ac_cv_alignof_CORBA_double=8
-ac_cv_alignof_CORBA_float=4
-ac_cv_alignof_CORBA_long=4
-ac_cv_alignof_CORBA_long_double=8
-ac_cv_alignof_CORBA_long_long=8
-ac_cv_alignof_CORBA_octet=1
-ac_cv_alignof_CORBA_pointer=4
-ac_cv_alignof_CORBA_short=2
-ac_cv_alignof_CORBA_struct=1
-ac_cv_alignof_CORBA_wchar=2
diff --git a/meta-gnome/site/x86_64-linux b/meta-gnome/site/x86_64-linux
deleted file mode 100644
index eba1fee2bb..0000000000
--- a/meta-gnome/site/x86_64-linux
+++ /dev/null
@@ -1,17 +0,0 @@
-# ORBit2
-ac_cv_alignof_CORBA_boolean=1
-ac_cv_alignof_CORBA_char=1
-ac_cv_alignof_CORBA_double=8
-ac_cv_alignof_CORBA_float=4
-ac_cv_alignof_CORBA_long=4
-ac_cv_alignof_CORBA_long_double=8
-ac_cv_alignof_CORBA_long_long=8
-ac_cv_alignof_CORBA_octet=1
-ac_cv_alignof_CORBA_pointer=8
-ac_cv_alignof_CORBA_short=2
-ac_cv_alignof_CORBA_struct=1
-ac_cv_alignof_CORBA_wchar=2
-
-lf_cv_sane_realloc=yes
-as_cv_unaligned_access=${as_cv_unaligned_access=yes}
-