This is an old revision of the document!
Tumbler - Thumbnail Service
Introduction
Tumbler is a D-Bus service for applications to request thumbnails for various URI schemes and MIME types. It is an implementation of the thumbnail management D-Bus specification described on
https://wiki.gnome.org/DraftSpecs/ThumbnailerSpec
written in an object-oriented fashion using GLib and GObject. Its modular architecture makes it very flexible and useful in many situations. It provides plugin interfaces for extending the URI schemes and MIME types for which thumbnails can be generated as well as for replacing the storage backend that is used to store the thumbnails on disk. Tumbler's functionality can also be extended via specialized thumbnailer services implemented in accordance to the thumbnail management D-Bus specification.
Tumbler is used by Thunar, Ristretto, Xfce.
Configuration
You can override the default cache directory $HOME/.cache
in which, besides other non-essential files, thumbnails are stored:
- D-Bus/ systemd
- create a file below
~/.config/environment.d/
and inside set XDG_CACHE_HOME. E.g: XDG_CACHE_HOME=$HOME/.my_new_cache
- Other
- Extend $HOME/.profile, $HOME/.bash_rc or similar
export XDG_CACHE_HOME=$HOME/.my_new_cache
After that, re-login, make sure the variable is set, and check if it works fine.
Tumbler has a configuration file tumbler.rc
described in a dedicated page.
Available Plugins
Tumbler allows to load a number additional tumbler plugins to support different file formats. Most plugins are loaded by default, if the required libraries are provided.
Standards compliance
Tumbler supports and implements the following standards/specifications:
Debugging Support
As with all Xfce components, you can set debug support at compile time, but this is more likely to be of interest to developers or package maintainers.
To get debug logs at runtime, starting with Tumbler 4.17.0 (first stable release 4.18.0), you can do the following:
pkill tumblerd G_MESSAGES_PREFIXED= G_MESSAGES_DEBUG=all $(pkg-config --variable=libdir tumbler-1)/tumbler-1/tumblerd
Required packages
Tumbler depends on the following packages:
- GLib >= 2.50.0
Tumbler can optionally use the following packages:
- gdk-pixbuf >= 2.14.0 (various image formats, some of them requiring the installation of optional libraries specific to gdk-pixbuf; also required for all other plugins below)
- FreeType >= 2.0.0 (font)
- FFmpegthumbnailer >= 2.0.0 (video)
- GStreamer >= 1.0.0 (video)
- Poppler >= 0.12 (PDF/PS)
- libgsf >= 1.14.9 (ODF)
- libopenraw >= 0.0.4 (RAW images)
- libpng >= 1.2.0 (for the Thumbnail Managing Standard storage backend)
- libgepub >= 0.6.0 (EPUB)
Latest Release
- tumbler 4.21.0 released (2025/03/23 08:06)tumbler 4.21.0 is now available for download from https://archive.xfce.org/src/xfce/tumbler/4.21/tumbler-4.21.0.tar.xz https://archive.xfce.org/src/xfce/tumbler/4.21/tumbler-4.21.0.tar.xz?sha1 https://archive.xfce.org/src/xfce/tumbler/4.21/tumbler-4.21.0.tar.xz?sha256 What is tumbler? ================ Tumbler is a D-Bus service for applications to request thumbnails for various URI schemes and MIME types. It is an implementation of the thumbnail management D-Bus specification described on https://www.freedesktop.org/wiki/Specifications/thumbnails/ written in an object-oriented fashion using GLib and GObject. Its modular architecture makes it very flexible and useful in many situations. It provides plugin interfaces for extending the URI schemes and MIME types for which thumbnails can be generated as well as for replacing the storage backend that is used to store the thumbnails on disk. Tumbler's functionality can also be extended via specialized thumbnailer services implemented in accordance to the thumbnail management D-Bus specification. Website: https://docs.xfce.org/xfce/tumbler/start Release notes for 4.21.0 ======================== [Please note that this is a development release.] - build: Automate copyright year management - meson-build: Function check cleanup - build: Fix function checks - poppler-thumbnailer: Only use embedded thumbnail if resolution suffices - meson-build: Use SPDX license expression - meson-build: Update debug/optimization flag management - autotools-build: Add missing gtkdocentities.ent.in to EXTRA_DIST - Add meson build - ffmpeg-thumbnailer: Bump ffmpeg version and drop CHECK_VERSION - Set up GNU symbol visibility - tumbler: Don't install tumbler-marshal.h - Translation Updates: Albanian, Romanian, Slovak
Source Code Repository
Reporting Bugs
- Reporting Bugs – Open bug reports and how to report new bugs