From 33b4fd62d747f346fc20480484b68f1fda338eaa Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Tue, 24 Mar 2026 20:59:20 +0800 Subject: tumbler: upgrade 4.20.1 -> 4.21.1 Changelog: https://gitlab.xfce.org/xfce/tumbler/-/tags/tumbler-4.21.1 https://gitlab.xfce.org/xfce/tumbler/-/tags/tumbler-4.21.0 Backport patch for handle case where no plugins gracefully. Signed-off-by: Zhang Peng Signed-off-by: Khem Raj --- ...ses-where-there-are-no-plugins-gracefully.patch | 57 +++++++++++++++++++ meta-xfce/recipes-xfce/tumbler/tumbler_4.20.1.bb | 61 --------------------- meta-xfce/recipes-xfce/tumbler/tumbler_4.21.1.bb | 64 ++++++++++++++++++++++ 3 files changed, 121 insertions(+), 61 deletions(-) create mode 100644 meta-xfce/recipes-xfce/tumbler/files/0001-Handle-cases-where-there-are-no-plugins-gracefully.patch delete mode 100644 meta-xfce/recipes-xfce/tumbler/tumbler_4.20.1.bb create mode 100644 meta-xfce/recipes-xfce/tumbler/tumbler_4.21.1.bb (limited to 'meta-xfce') diff --git a/meta-xfce/recipes-xfce/tumbler/files/0001-Handle-cases-where-there-are-no-plugins-gracefully.patch b/meta-xfce/recipes-xfce/tumbler/files/0001-Handle-cases-where-there-are-no-plugins-gracefully.patch new file mode 100644 index 0000000000..3a3eb2fd64 --- /dev/null +++ b/meta-xfce/recipes-xfce/tumbler/files/0001-Handle-cases-where-there-are-no-plugins-gracefully.patch @@ -0,0 +1,57 @@ +From 95244ee0d1f3184e2c2cae9d33095dc03829b10e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ga=C3=ABl=20Bonithon?= +Date: Fri, 20 Feb 2026 17:07:56 +0100 +Subject: [PATCH] Handle cases where there are no plugins gracefully + +Not sure it makes much sense to allow the cache plugin not to be built, +but then again, why not? It could be replaced by a customized +implementation, and it has always been possible not to build it, so we +might as well leave it as it is. + +Fixes: #109 +(cherry picked from commit b4f4db4bfc1a45f0a405c4516e38394a44c90fcf) + +Upstream-Status: Backport [https://gitlab.xfce.org/xfce/tumbler/-/commit/95244ee0d1f3184e2c2cae9d33095dc03829b10e] + +Signed-off-by: Zhang Peng +--- + tumbler/tumbler-cache-plugin.c | 5 ++++- + tumblerd/tumbler-registry.c | 7 ++++++- + 2 files changed, 10 insertions(+), 2 deletions(-) + +diff --git a/tumbler/tumbler-cache-plugin.c b/tumbler/tumbler-cache-plugin.c +index 50700a3..e308638 100644 +--- a/tumbler/tumbler-cache-plugin.c ++++ b/tumbler/tumbler-cache-plugin.c +@@ -188,7 +188,10 @@ tumbler_cache_plugin_get_default (void) + g_object_add_weak_pointer (G_OBJECT (plugin), (gpointer) &plugin); + + if (!g_type_module_use (G_TYPE_MODULE (plugin))) +- return NULL; ++ { ++ g_object_unref (plugin); ++ return NULL; ++ } + } + + return G_TYPE_MODULE (plugin); +diff --git a/tumblerd/tumbler-registry.c b/tumblerd/tumbler-registry.c +index 705dbc9..b58e831 100644 +--- a/tumblerd/tumbler-registry.c ++++ b/tumblerd/tumbler-registry.c +@@ -534,7 +534,12 @@ tumbler_registry_update_supported (TumblerRegistry *registry) + + /* abort if there are no thumbnailers */ + if (thumbnailers == NULL) +- return; ++ { ++ /* we need NULL-terminated arrays for the _get_supported() dbus call anyway */ ++ registry->uri_schemes = g_new0 (gchar *, 1); ++ registry->mime_types = g_new0 (gchar *, 1); ++ return; ++ } + + /* clear visited flag of all thumbnailers */ + for (lp = thumbnailers; lp != NULL; lp = lp->next) +-- +2.50.0 diff --git a/meta-xfce/recipes-xfce/tumbler/tumbler_4.20.1.bb b/meta-xfce/recipes-xfce/tumbler/tumbler_4.20.1.bb deleted file mode 100644 index 7a01882d57..0000000000 --- a/meta-xfce/recipes-xfce/tumbler/tumbler_4.20.1.bb +++ /dev/null @@ -1,61 +0,0 @@ -DESCRIPTION = "Thumbnail service implementing the thumbnail management D-Bus specification" -HOMEPAGE = "https://docs.xfce.org/xfce/tumbler/start" -SECTION = "x11/libs" -LICENSE = "GPL-2.0-or-later" -LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" -DEPENDS = "xfce4-dev-tools-native libxfce4util" - -inherit xfce gtk-doc systemd - -SRC_URI[sha256sum] = "87b90df8f30144a292d70889e710c8619d8b8803f0e1db3280a4293367a42eae" - -INSANE_SKIP:${PN} = "dev-so" - -PACKAGECONFIG ??= "" -PACKAGECONFIG[cover-thumbnailer] = "--enable-cover-thumbnailer,--disable-cover-thumbnailer,curl gdk-pixbuf" -PACKAGECONFIG[desktop-thumbnailer] = "--enable-desktop-thumbnailer,--disable-desktop-thumbnailer,gdk-pixbuf" -PACKAGECONFIG[font-thumbnailer] = "--enable-font-thumbnailer,--disable-font-thumbnailer,freetype gdk-pixbuf" -PACKAGECONFIG[gstreamer-thumbnailer] = "--enable-gstreamer-thumbnailer,--disable-gstreamer-thumbnailer,gstreamer1.0 gstreamer1.0-plugins-base" -PACKAGECONFIG[jpeg-thumbnailer] = "--enable-jpeg-thumbnailer,--disable-jpeg-thumbnailer,gdk-pixbuf" -PACKAGECONFIG[odf-thumbnailer] = "--enable-odf-thumbnailer,--disable-odf-thumbnailer,gdk-pixbuf libxml2 libgsf" -PACKAGECONFIG[pixbuf-thumbnailer] = "--enable-pixbuf-thumbnailer,--disable-pixbuf-thumbnailer,gdk-pixbuf" -PACKAGECONFIG[poppler-thumbnailer] = "--enable-poppler-thumbnailer,--disable-poppler-thumbnailer,gdk-pixbuf poppler" - -EXTRA_OECONF = "GDBUS_CODEGEN=${STAGING_BINDIR_NATIVE}/gdbus-codegen" - -do_install:append() { - # Makefile seems to race on creation of symlink. So ensure creation here - # until fixed properly - ln -sf tumbler-xdg-cache.so ${D}${libdir}/tumbler-1/plugins/cache/tumbler-cache-plugin.so -} - -PACKAGE_BEFORE_PN += "\ - ${PN}-cover-thumbnailer \ - ${PN}-desktop-thumbnailer \ - ${PN}-font-thumbnailer \ - ${PN}-gstreamer-thumbnailer \ - ${PN}-jpeg-thumbnailer \ - ${PN}-odf-thumbnailer \ - ${PN}-pixbuf-thumbnailer \ - ${PN}-poppler-thumbnailer \ -" - -FILES:${PN} += "${datadir}/dbus-1/services \ - ${libdir}/tumbler-1/tumblerd \ - ${libdir}/tumbler-1/plugins/*.so \ - ${libdir}/tumbler-1/plugins/cache/*.so \ - ${systemd_user_unitdir}/tumblerd.service \ -" - -FILES:${PN}-cover-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-cover-thumbnailer.so" -FILES:${PN}-desktop-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-desktop-thumbnailer.so" -FILES:${PN}-font-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-font-thumbnailer.so" -FILES:${PN}-gstreamer-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-gst-thumbnailer.so" -FILES:${PN}-jpeg-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-jpeg-thumbnailer.so" -FILES:${PN}-odf-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-odf-thumbnailer.so" -FILES:${PN}-pixbuf-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-pixbuf-thumbnailer.so" -FILES:${PN}-poppler-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-poppler-thumbnailer.so" - -FILES:${PN}-dev += "${libdir}/tumbler-1/plugins/*.la \ - ${libdir}/tumbler-1/plugins/cache/*.la \ -" diff --git a/meta-xfce/recipes-xfce/tumbler/tumbler_4.21.1.bb b/meta-xfce/recipes-xfce/tumbler/tumbler_4.21.1.bb new file mode 100644 index 0000000000..7ab4b59416 --- /dev/null +++ b/meta-xfce/recipes-xfce/tumbler/tumbler_4.21.1.bb @@ -0,0 +1,64 @@ +DESCRIPTION = "Thumbnail service implementing the thumbnail management D-Bus specification" +HOMEPAGE = "https://docs.xfce.org/xfce/tumbler/start" +SECTION = "x11/libs" +LICENSE = "GPL-2.0-or-later" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" +DEPENDS = "xfce4-dev-tools-native libxfce4util" + +XFCE_COMPRESS_TYPE = "xz" +XFCEBASEBUILDCLASS = "meson" +GTKDOC_MESON_OPTION = "gtk-doc" + +inherit xfce gtk-doc systemd + +SRC_URI += " file://0001-Handle-cases-where-there-are-no-plugins-gracefully.patch" +SRC_URI[sha256sum] = "0f499f79a2a7ee49726a433584dd8a680d514101b72bd1b003360611ce1dc244" + +INSANE_SKIP:${PN} = "dev-so" + +PACKAGECONFIG ??= "" +PACKAGECONFIG[cover-thumbnailer] = "-Dcover-thumbnailer=enabled,-Dcover-thumbnailer=disabled,curl gdk-pixbuf" +PACKAGECONFIG[desktop-thumbnailer] = "-Ddesktop-thumbnailer=enabled,-Ddesktop-thumbnailer=disabled,gdk-pixbuf" +PACKAGECONFIG[font-thumbnailer] = "-Dfont-thumbnailer=enabled,-Dfont-thumbnailer=disabled,freetype gdk-pixbuf" +PACKAGECONFIG[gstreamer-thumbnailer] = "-Dgst-thumbnailer=enabled,-Dgst-thumbnailer=disabled,gstreamer1.0 gstreamer1.0-plugins-base" +PACKAGECONFIG[jpeg-thumbnailer] = "-Djpeg-thumbnailer=enabled,-Djpeg-thumbnailer=disabled,gdk-pixbuf" +PACKAGECONFIG[odf-thumbnailer] = "-Dodf-thumbnailer=enabled,-Dodf-thumbnailer=disabled,gdk-pixbuf libxml2 libgsf" +PACKAGECONFIG[pixbuf-thumbnailer] = "-Dpixbuf-thumbnailer=enabled,-Dpixbuf-thumbnailer=disabled,gdk-pixbuf" +PACKAGECONFIG[poppler-thumbnailer] = "-Dpoppler-thumbnailer=enabled,-Dpoppler-thumbnailer=disabled,gdk-pixbuf poppler" + +do_install:append() { + # Makefile seems to race on creation of symlink. So ensure creation here + # until fixed properly + ln -sf tumbler-xdg-cache.so ${D}${libdir}/tumbler-1/plugins/cache/tumbler-cache-plugin.so +} + +PACKAGE_BEFORE_PN += "\ + ${PN}-cover-thumbnailer \ + ${PN}-desktop-thumbnailer \ + ${PN}-font-thumbnailer \ + ${PN}-gstreamer-thumbnailer \ + ${PN}-jpeg-thumbnailer \ + ${PN}-odf-thumbnailer \ + ${PN}-pixbuf-thumbnailer \ + ${PN}-poppler-thumbnailer \ +" + +FILES:${PN} += "${datadir}/dbus-1/services \ + ${libdir}/tumbler-1/tumblerd \ + ${libdir}/tumbler-1/plugins/*.so \ + ${libdir}/tumbler-1/plugins/cache/*.so \ + ${systemd_user_unitdir}/tumblerd.service \ +" + +FILES:${PN}-cover-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-cover-thumbnailer.so" +FILES:${PN}-desktop-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-desktop-thumbnailer.so" +FILES:${PN}-font-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-font-thumbnailer.so" +FILES:${PN}-gstreamer-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-gst-thumbnailer.so" +FILES:${PN}-jpeg-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-jpeg-thumbnailer.so" +FILES:${PN}-odf-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-odf-thumbnailer.so" +FILES:${PN}-pixbuf-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-pixbuf-thumbnailer.so" +FILES:${PN}-poppler-thumbnailer += "${libdir}/tumbler-1/plugins/tumbler-poppler-thumbnailer.so" + +FILES:${PN}-dev += "${libdir}/tumbler-1/plugins/*.la \ + ${libdir}/tumbler-1/plugins/cache/*.la \ +" -- cgit v1.2.3-54-g00ecf