Installing over an older version and other notes

Ubuntu commands installed as snap packages can’t create arbitrary files under /tmp. This is for example the case by default for pdftk which is used by Recoll to extract PDF attachments. For best results, set TMPDIR to a location which belongs to you (e.g. inside your home, with something like export TMPDIR=~/tmp in your shell startup script). Recoll could conceivably work around the problem all by itself, but I find it in bad taste to create temporary files in an arbitrary location inside your home.

1.20 to 1.38 indexes are fully backward compatible. No need to reindex when upgrading.

Always reset the index if you do not know by which version it was created (e.g.: you’re not sure it’s at least 1.18). The best method is to quit all Recoll programs and delete the index directory (rm -rf ~/.recoll/xapiandb), then start recoll or recollindex.

recollindex -z will do the same in most, but not all, cases. It’s better to use the rm method, which will also ensure that no debris from older releases remain (e.g.: old stemming files which are not used any more).

On Windows, the index is located by default in C:/Users/[yourlogin]/AppData/Local/Recoll/xapiandb

Case/diacritics sensitivity is off by default. It can be turned on only by editing recoll.conf ( see the manual). If you do so, you must then reset the index.

Changes in Recoll 1.38.0

  • Indexing: allow using multiple temporary Xapian indexes and a final merge. This is useful for cases where the single-threaded Xapian index updates would be the indexing speed bottleneck, which would typically happen with simple input like HTML files. In such a case it can bring a huge speedup of indexing, e.g. 3X on a 4 Core CPU. You are probably not indexing Wikipedia dumps, but if you are, this is a game changer.

  • GUI: a new "File" menu entry for switching to another configuration, for people using multiple ones (which I don’t really recommend: use directory or other filtering instead).

  • GUI: result list paragraph format: add %s for explicit snippets (rather than %A for abstract/snippets alternate).

  • GUI: the user interface preferences tab is now scrollable. It was too high for some displays.

  • New build method using meson and ninja. The GNU autotools have been highly useful for a very long time but the reasons which made them so complicated and opaque are mostly gone, and they have become replaceable.

  • New AppImage executable single file image available on the web site. This should work on all reasonably recent Linux distributions (ref: Debian Buster).

  • KDE KF6 support for the KIO slave and KRunner.

  • Linux: use libmagic instead of executing file/xdg-mime to find out MIME types when there are no suffix mappings in mimemap.

  • Joplin indexer: also index OCR’d text from attached images.

  • MacOS: index the Finder tags and comments.

  • Use simdutf (, for faster Unicode conversions (mainly during diacritics removal).

  • djvu: extract more metadata.

  • Improve handling of match line for text documents.

  • Windows: switched to 64 bits build and Qt 6.6

Minor releases at a glance

  • 1.38.1

    • Fix Python 3.12 warnings about bad escapes in strings.

    • Fix small issues in build/distribution/packaging.

    • Windows: detect FS reparse points and treat them as symlinks for followLinks.