KDE plugin generating thumbnails for camera RAW files (CR3, ORF, NEF, ARW, RAF, RW2, DNG…) with exiftool. Works in Dolphin, Konqueror, Krusader, KDE file dialogs and the Plasma desktop — including for cameras your distro's LibRaw doesn't support yet.
KDE's stock raw thumbnailer (kdegraphics-thumbnailers) extracts the embedded JPEG
preview with LibRaw, which only supports cameras released before it was built —
and distro-stable LibRaw lags camera releases by years. Debian 12 ships LibRaw 0.20
(2020): no OM System OM-1/OM-3/OM-5, no recent bodies at all. Even Debian 13's 0.21
(2022) predates every 2024+ camera. The result: your JPEGs thumbnail, your raws from
a new camera silently don't.
Generating a thumbnail doesn't need raw decoding — only pulling the embedded JPEG preview out of the file. exiftool does exactly that, gains new-camera support within weeks of a release, and is trivially upgradable.
A small KIO::ThumbnailCreator plugin keeps one exiftool process alive per thumbnail
worker (exiftool -stay_open True) and asks it for -j -b -n -Orientation -PreviewImage — the ideal 1–2 MP preview nearly all raws carry. Files without one
(e.g. Panasonic, Sigma) get a second query for the rarer tags
(-OtherImage -JpgFromRaw -PreviewTIFF -ThumbnailImage -ThumbnailTIFF). The first
available preview is decoded directly at target size, the EXIF orientation applied,
and the result handed to KIO, which caches it as usual (~/.cache/thumbnails/).
The plugin registers the concrete raw MIME types (ORF, CR2, CR3, NEF, NRW, ARW, RAF,
RW2, DNG, PEF…). KIO::PreviewJob prefers an exact MIME match over the stock
thumbnailer's image/x-dcraw parent-class match, so it takes over the listed formats
cleanly — nothing else on the system is modified. Formats exiftool cannot extract a
preview from (the image/x-kde-raw legacy grab-bag, Kodak DCR) are deliberately not
claimed and keep whatever the stock thumbnailer can do with them.
exiftool(Debian/Ubuntu:libimage-exiftool-perl)- KDE Frameworks ≥ 5.100 (Plasma 5) or KF6 (Plasma 6)
- Optional: the Qt TIFF plugin (
qt5-image-formats-plugins/qt6-image-formats-plugins) — only for early-2000s raws whose sole embedded preview is TIFF rather than JPEG
Grab the matching .deb from the
releases page:
sudo apt install ./kde-raw-thumbnails_*_kf5_amd64.deb # Plasma 5 (Qt5/KF5)
# or
sudo apt install ./kde-raw-thumbnails_*_kf6_amd64.deb # Plasma 6 (Qt6/KF6)The kf5 package needs Debian 12+ / Ubuntu 23.04+ (KDE Frameworks ≥ 5.100); the kf6 package targets Debian 13+ and other Plasma 6 distros. Anything else: build from source below.
Debian/Ubuntu build deps: cmake extra-cmake-modules libkf5kio-dev (Plasma 5)
or cmake extra-cmake-modules libkf6kio-dev (Plasma 6).
cmake -B build -DCMAKE_BUILD_TYPE=Release # picks Qt 6 if installed, else Qt 5;
cmake --build build # override with -DQT_MAJOR_VERSION=5|6
sudo cmake --install buildThis installs a single file: <qt plugin dir>/kf5/thumbcreator/exiftoolrawthumbnail.so
(or kf6/…).
Then enable RAW camera files (exiftool) in Dolphin → Configure Dolphin → General →
Previews (newer Dolphin releases: Interface → Previews) and restart Dolphin.
(Equivalently: add exiftoolrawthumbnail to Plugins= under [PreviewSettings] in
~/.config/dolphinrc.)
- Developed and tested on Debian 12 / Plasma 5.27 / KF 5.103 with OM System OM-5 and OM-1 files, plus older Olympus, Canon, Nikon, Sony, Fuji, and Panasonic samples from raw.pixls.us. The KF6 build path is provided but untested — reports welcome.
- After the one-time exiftool startup a thumbnail costs ~25–40 ms, first view only; cached thereafter. If exiftool is missing at runtime the worker logs a warning and all requests fail cleanly.
- If your LibRaw already handles all your cameras you don't need this — but it also doesn't hurt: the output is the same embedded preview the stock thumbnailer would extract.
CC0 1.0 Universal — public domain.