My Photo-Editing Workflow


I thought I could share my workflow with you, although it is very similar to what we all do.

Distro: Manjaro KDE Plasma
Photo Management: Digikam
Raw Editor: Darktable
Finetuning: Gimp
Graphics (like Flyer, etc): Inkscape

I found out (for me personally) that Digikam is the only software that can do the following:

I need and want to sort my photos (ca. 100.000) like year, month, etc… And I rename them… This kind of management I cannot do in darktable. So I need a “photo management software”.

But I do a lot of raw editing in darktable. And DT creates xml-files for every photo. So, when I move files, rename them after having edited them, I needed a program that would recognize whenever I move or rename a RAW-file and then automatically renames the XML file accordingly.

And Digikam does exactly this. As the only program I know of…

Jepp, thats my Raw-Editing-workflow :slight_smile:


I have that same setup.
One problem though, is that by default, Darktable does not re-import the XMP files from Digikam, if the metadata is already in the database.
The solution to this is to always start Darktable with a temporary database. This is done with:

darktable --library ":memory:"

This does mean that Darktable will have to scan the library before you can work with it, but since that is exactly what I want it to do, that is fine by me :slight_smile:
I always just open the one gallery dir in Darktable and never my entire collection, so the scan time is fairly short.

1 Like

The only part I am missing, is a script that generates new thumbnails and previews from Darktable and then pushes those changes to Digikam. Preferable by embedding the preview in the raw file (which probably requires converting all raw files to DNG first) and for optimization purposes, it would be great if it could update the Digikam thumbnail database to use the new renders as well, but that is a little bit troublesome, as it involves updating the Digikam database SQLite file directly.
I started writing scripts to parse the database once, but that was more work than I had patience for at the time :stuck_out_tongue: