File Management best practices (Source Raw+JPG, Darktable, LightZone, etc.)?

FILE management seems to be my biggest barrier to photo editing. Many years ago, I started shooting JPEG only. Was using GIMP (XCF stand-alone). Then changed to LightZone (*_lzn.jpg sidecar with preview). Now, sometimes, I shoot JPEG-only or Sony ARW+JPEG. And I started using darktable (XMP sidecar without preview).

Struggling how to differentiate the GIMP, LightZone, darktable exports from the source / intermediate. Struggling how to move / delete a photo (and all of its children / siblings) together.

Problem?: if I delete a photo, I don’t want any leftovers. If I move a photo, I want all the related files to go with it.

Windows Explorer is a file manager. I added Sony ARW support to see thumbnails. But it doesn’t consider relationships between files as a group/collection.

GIMP is only a photo editor, not a photo manager.

darktable sees lightzone sidecar files and exports as un-related to the “original”.

DigiKam, I’m seeing ARW and JPG of the same photo as separate. The darktable .XMP aren’t shown. I haven’t experimented, yet, with any folders with Lightzone _lzn.jpg sidecar files.

FastStone Image Viewer doesn’t recognize Sony .ARW and darktable .XMP. And .jpg and LightZone _lzn.jpg are seen as separate files.

Ideally, there should be software to delete / move all of the .jpg, .arw, _lzn.jpg, .xcf, etc. of a single photo together. If you delete the source files, there shouldn’t be any sidecar files left over. If you move a photo/sidecar, all of the related objects should move with it.

Sounds like you need a shell script. Or your own custom database.

While its not maybe as easy if you move things and delete from within DT it knows about it and doesn’t end up with a bunch of skulls with missing previews etc. I try to edit a batch and move it to its destination from within DT. If you don’t use the database and use :memory: instead as a temp database option then you can move them however you want I believe.

As for the other software I don’t think a database is in play as part of the software so you may want to script it as suggested

As for exporting I always tag a _DT on the file name as a suffix so I know the jpg generated comes from a DT edit…

These programs have different workflows when it comes to file handling which makes it quite difficult to organize all in one folder structure.

i got my image files separated into two main folder structures:
One for all exported or final images in JPG format for watching
One for all source and editing files (which are only RAW+XMP from darktable. I dont keep temporary files I make with GIMP or a panorama stitcher)

With this logic I never have the need to move files that are somehow related to a final image. When I have the need to update an exported image I just navigate to the RAW file (search via filename in the source folder structure) and open it in darktable. This does not happen very often, therefore I don’t need any automation. Same for deleting a final image. I just keep the RAW file because hard drive space is cheap and if I change my mind later I still will be able to export the file again.

I think you’ll have to accept that what you have here is, using a technical term, a mess. Probably no program that will handle it like you want. DigiKam is likely your best bet.

DigiKam can group files together based on several different criteria. Simply select them and look at the grouping option in the right-click menu.

XMP’s aren’t images, so there’s nothing for DigiKam to show. Rather, they are sidecars holding metadata and, in the case of DT, processing instructions. Depending on your settings DigiKam will store metadata in them and treat them as “belonging” to any other files with the same base-name (foo.arw → foo.xmp / foo.arw.xmp). This means they get moved, deleted etc. the same as the main image file.