Bug 467276 - FR: Better (native) integration with Darktable sidecars
Summary: FR: Better (native) integration with Darktable sidecars
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Metadata-Sidecar (show other bugs)
Version: 7.9.0
Platform: Other Linux
: NOR wishlist
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-03-13 11:37 UTC by fotograaf
Modified: 2023-03-15 06:43 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 8.0.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description fotograaf 2023-03-13 11:37:56 UTC
SUMMARY
***
I found settings on how to better integrate Digikam and Darktable, reading and writing each others sidecar files.
It would be nice if those could be native to Digikam, in some sort of profile or a checkbox.
***

To better integrate Digikam and Darktable, 3 settings must be done and it takes a *lot* of time and searching to find these.  Most users will never find out that this is even possible.
I'll list these with the notice that this is applicable to working with these two programs. It is not a universal 'make everything better' setting.
I would prefer if there was some setting or button that would make all these changes at once  (and for good measure, perhaps a checklist with which other programs you want to integrate Digikam :) ) 


1. digikam should prioritize XMP files over its database
Ncessary because Darktable can update the XMP files, so the XMP must be leading, always.

2. digikam must read and write tags in the sections and format where Darktable has them.
Here is a very good explanation:
https://userbase.kde.org/Digikam/Tutorials/Setup_of_digiKam_for_Windows_compatibility#Step_2_-_Fix_which_metadata_is_written_into_files

However, it is still missing the "xmp.lr.hierarchicalSubject' - it should be added. 

3. digikam must no longer read/write tags in other sections of the XMP 
Otherwise, when Darktable updates something, Digikam will happily read the old data back from another section of the XMP file.
Example: There is a tag 'elephant' which exists in "Mediapro:catalogsets".
The user removes this tag in Darktable.
When you start Digikam, it will still read the tag because it finds it in a section of the XMP that Darktable did not update.
Found this out the hard way and needed to fix all my XMP files with awk.
Comment 1 Maik Qualmann 2023-03-14 07:10:20 UTC
Git commit 9fd65cb06036da38ac9cd1cb2a2b49a04be6ce14 by Maik Qualmann.
Committed on 14/03/2023 at 07:09.
Pushed by mqualmann into branch 'master'.

add save and load Advanced Metadata Profile

M  +107  -2    core/utilities/setup/metadata/advancedmetadatatab.cpp
M  +2    -0    core/utilities/setup/metadata/advancedmetadatatab.h

https://invent.kde.org/graphics/digikam/commit/9fd65cb06036da38ac9cd1cb2a2b49a04be6ce14
Comment 2 Maik Qualmann 2023-03-14 07:43:41 UTC
Git commit 2d9a774f1947198298fdab8a54bfd9f2a19b4d61 by Maik Qualmann.
Committed on 14/03/2023 at 07:42.
Pushed by mqualmann into branch 'master'.

add darktable advanced metadata profile
FIXED-IN: 8.0.0

M  +1    -1    NEWS
M  +6    -0    core/data/metadata/CMakeLists.txt
A  +818  -0    core/data/metadata/darktable.dkamp
A  +818  -0    core/data/metadata/digikam.dkamp
M  +10   -4    core/utilities/setup/metadata/advancedmetadatatab.cpp

https://invent.kde.org/graphics/digikam/commit/2d9a774f1947198298fdab8a54bfd9f2a19b4d61
Comment 3 Maik Qualmann 2023-03-14 08:37:37 UTC
digiKam updates the metadata automatically during the initial scan from sidecars if the option to reread metadata on file change is activated in the metadata settings.

Maik
Comment 4 caulier.gilles 2023-03-15 06:43:06 UTC
Git commit eabc6588e64836aac1653bb8d0b2cc8dc4146a8a by Gilles Caulier.
Committed on 15/03/2023 at 06:41.
Pushed by cgilles into branch 'master'.

digiKam doc: add Read Profile and Save Profile button description in advanced metadata panel.

M  +-    --    setup_application/images/setup_metadata_advanced.webp
M  +4    -0    setup_application/metadata_settings.rst

https://invent.kde.org/documentation/digikam-doc/commit/eabc6588e64836aac1653bb8d0b2cc8dc4146a8a