I’m working towards a Lightroom > darktable migration. I’m on Windows 11 Pro 64bit and darktable 5.0.0
Having lots of developed pictures I figured out to freeze my work in Lightroom per dec. 31, 2024. New raws from jan. 1, 2025 will be handled in darktable. If I feel the need to change development of a pre 2025 photo I will do so in darktable. So far the easy part.
I also want the developed state of my pictures available in darktable. So I want to export them as jpeg into my directory tree and import them in darktable. In this way I will be able to find al my pictures searching for specific tags, flags, stars, etc. Files are organized in a directory tree with structure: yyyy/yyyymmdd-text/files
The question is how to do this efficiently?
I do not know yet how to import only jpeg’s from a directory when there are also raw’s in there. So I thought I might make a batch file doing so using darktable-cli. A second option might be to make a specific filter using the so called import filter manager, see: darktable lua documentation - import_filter_manager Only thing is I cannot get the first route to work and I do not know weather the second will make darktable import only jpegs.
When using darktable-cli I give the command as shown in the picture. It does seem to start darktable. I experimented with “” around the path and with \ or \ in the path. I also tried / in the path. But the whole list after -cli doesn’t seem to do anything. I surely miss something here.
Searching the manual and internet did not provide me with options or an answer so far. Any hints/suggestions would be very welcome.
Are you talking about exporting all your jpegs out of LR? I’d put them all in their own folder, then import that folder. Then you can find them by file name and only import the raws you want into darktable.
Thanks @paperdigits , you mean with “in their own folder” a single folder where I export thousands of jpegs into? So - for this purpose - letting go of my present folder structure.
It would be indeed a lot simpler and I would still be able to search and find the pictures I would be looking for.
Ok, looking at your OP, I thought initially you were doing the right thing. But reading carefully, I see this second line here:
darktable-cli [IMAGE_FILE | IMAGE_FOLDER]
[XMP_FILE] DIR [OPTIONS]
[–core DARKTABLE_OPTIONS]
See how all other items are enclosed in [], but not DIR? DIR is not optional, unlike all those other things. This is why you get the usage info printed. It wants something like darktable-cli DIR --import F:\\Fotos\\[..rest of the path] – or if you were importing more than one at once, `darktable-cli DIR --import F:\Fotos\[…the rest of the path] --import F:\Fotos\[…the rest of the path]
I think in this case the text that must be put where DIR is, is probably the parent directory of the files you are importing.
That is bewildering.
By ‘that’ I mean the state of affairs where your link gives one summary of how to invoke darktable-cli, man darktable-cli gives another (dated 2019 and clearly lacking mention of --import), and darktable-cli --help (or passing bad parameters) gives a third.
The one appearing at the command-line (with --help) and the one in the guide are almost the same, you just have to substitute the option list in place of the [OPTIONS] block, and change the order:
darktable-cli [IMAGE_FILE | IMAGE_FOLDER]
[XMP_FILE]
DIR
[OPTIONS, rearranged to match the order used by --help]
--width <max width> default: 0 = full resolution
--height <max height> default: 0 = full resolution
--hq <0|1|false|true> default: true
--upscale <0|1|false|true>, default: false
--style <style name>
--style-overwrite
--apply-custom-presets <0|1|false|true>, default: true
disable for multiple instances
--out-ext <extension>, default from output destination or '.jpg'
if specified, takes preference over output
--import <file or dir> specify input file or dir, can be used'
multiple times instead of input file
--icc-type <type> specify icc type, default to NONE
use --help icc-type for list of supported types
--icc-file <file> specify icc filename, default to NONE
--icc-intent <intent> specify icc intent, default to LAST
use --help icc-intent for list of supported intents
--verbose
-h, --help [option]
[--core DARKTABLE_OPTIONS]
(options not in the manual)
--bpp <bpp>, unsupported
--export_masks <0|1|false|true>, default: false
-v, --version
Thanks all for the help here. I’ve indeed overlooked the lack of ‘[’. I figured that my path was what was needed. I will test again with the new insights you all provided me with and try to make another step her.