darktable 2.2.0rc0 released

we’re proud to announce the first release candidate for the upcoming 2.2 series of darktable, 2.2.0rc0!

the github release is here: https://github.com/darktable-org/darktable/releases/tag/release-2.2.0rc0.

as always, please don’t use the autogenerated tarball provided by github, but only our tar.xz. the checksum is:

a084ef367b1a1b189ad11a6300f7e0cadb36354d11bf0368de7048c6a0732229 darktable-2.2.0~rc0.tar.xz

and the changelog as compared to 2.0.0 can be found below.

  • Well over 2 thousand commits since 2.0.0

The Big Ones:

Quite Interesting Changes:

  • Split the database into a library containing images and a general one with styles, presets and tags. That allows having access to those when for example running with a :memory: library
  • Support running on platforms other than x86 (64bit little-endian, currently ARM64 only) (https://www.darktable.org/2016/04/running-on-non-x86-platforms/)
  • darktable is now happy to use smaller stack sizes. That should allow using musl libc
  • Allow darktable-cli to work on directories
  • Allow to import/export tags from Lightroom keyword files
  • Allow using modifier keys to modify the step for sliders and curves. Defaults: Ctrl - x0.1; Shift - x10
  • Allow using the [keyboard] cursor keys to interact with sliders, comboboxes and curves; modifiers apply too
  • Support presets in “more modules” so you can quickly switch between your favorite sets of modules shown in the GUI
  • Add range operator and date compare to the collection module
  • Support the Exif date and time when importing photos from camera
  • Rudimentary CYGM and RGBE color filter array support
  • Preview pipe now does run demosaic module too, and its input is no longer pre-demosaiced, but is just downscaled without demosaicing it at the same time.
  • Nicer web gallery exporter – now touch friendly!
  • OpenCL implementation of VNG/VNG4 demosaicing methods
  • OpenCL implementation of Markesteijn demosaicing method for X-Trans sensors
  • Filter-out some useless EXIF tags when exporting, helps keep EXIF size under ~64Kb
  • OpenCL: properly discard CPU-based OpenCL devices. Fixes crashes on startup with some partially-working OpenCL implementations like pocl.
  • darktable-cli: do not even try to open display, we don’t need it.
  • Hotpixels module: make it actually work for X-Trans

Some More Changes, Probably Not Complete:

  • Drop darktable-viewer tool in favor of slideshow view
  • Remove gnome keyring password backend, use libsecret instead
  • When using libsecret to store passwords then put them into the correct collection
  • Hint via window manager when import/export is done
  • Quick tagging searches anywhere, not just at the start of tags
  • The sidecar Xmp schema for history entries is now more consistent and less error prone
  • Rawspeed: fixes for building with libjpeg (as opposed to libjpeg-turbo)
  • Give the choice of equidistant and proportional feathering when using elliptical masks
  • Add geolocation to watermark variables
  • Fix some crashes with missing configured ICC profiles
  • Support greyscale color profiles
  • OSX: add trash support (thanks to Michael Kefeder for initial patch)
  • Attach Xmp data to EXR files
  • Several fixes for HighDPI displays
  • Use Pango for text layout, thus supporting RTL languages
  • Many bugs got fixed and some memory leaks plugged
  • The usermanual was updated to reflect the changes in the 2.2 series

Changed Dependencies:

  • CMake 3.0 is now required.
  • In order to compile darktable you now need at least gcc-4.7+/clang-3.3+, but better use gcc-5.0+
  • Drop support for OS X 10.6
  • Bump required libexiv2 version up to 0.24
  • Bump GTK+ requirement to gtk-3.14. (because even Debian/stable has it)
  • Bump GLib requirement to glib-2.40.
  • Port to OpenJPEG2
  • SDL is no longer needed.

A special note to all the darktable Fedora users: Fedora-provided darktable packages are intentionally built with Lua disabled. Thus, Lua scripting will not work. This breaks e.g. darktable-gimp integration. Please bug Fedora. In the mean time you could fix that by self-compiling darktable (pass -DDONT_USE_INTERNAL_LUA=OFF to cmake in order to enable use of bundled Lua5.2.4).

Base Support

  • Canon EOS-1D X Mark II
  • Canon EOS 5D Mark IV
  • Canon EOS 80D
  • Canon EOS 1300D
  • Canon EOS Kiss X80
  • Canon EOS Rebel T6
  • Canon EOS M10
  • Canon PowerShot A720 IS (dng)
  • Canon PowerShot G7 X Mark II
  • Canon PowerShot G9 X
  • Canon PowerShot SD450 (dng)
  • Canon PowerShot SX130 IS (dng)
  • Canon PowerShot SX260 HS (dng)
  • Canon PowerShot SX510 HS (dng)
  • Fujifilm FinePix S100FS
  • Fujifilm X-Pro2
  • Fujifilm X-T2
  • Fujifilm X70
  • Fujifilm XQ2
  • GITUP GIT2 (chdk-a, chdk-b)
  • (most nikon cameras here are just fixes, and they were supported before already)
  • Nikon 1 AW1 (12bit-compressed)
  • Nikon 1 J1 (12bit-compressed)
  • Nikon 1 J2 (12bit-compressed)
  • Nikon 1 J3 (12bit-compressed)
  • Nikon 1 J4 (12bit-compressed)
  • Nikon 1 J5 (12bit-compressed, 12bit-uncompressed)
  • Nikon 1 S1 (12bit-compressed)
  • Nikon 1 S2 (12bit-compressed)
  • Nikon 1 V1 (12bit-compressed)
  • Nikon 1 V2 (12bit-compressed)
  • Nikon 1 V3 (12bit-compressed, 12bit-uncompressed)
  • Nikon Coolpix A (14bit-compressed)
  • Nikon Coolpix P330 (12bit-compressed)
  • Nikon Coolpix P340 (12bit-compressed, 12bit-uncompressed)
  • Nikon Coolpix P6000 (12bit-uncompressed)
  • Nikon Coolpix P7000 (12bit-uncompressed)
  • Nikon Coolpix P7100 (12bit-uncompressed)
  • Nikon Coolpix P7700 (12bit-compressed)
  • Nikon Coolpix P7800 (12bit-compressed)
  • Nikon D1 (12bit-uncompressed)
  • Nikon D100 (12bit-compressed, 12bit-uncompressed)
  • Nikon D1H (12bit-compressed, 12bit-uncompressed)
  • Nikon D1X (12bit-compressed, 12bit-uncompressed)
  • Nikon D200 (12bit-compressed, 12bit-uncompressed)
  • Nikon D2H (12bit-compressed, 12bit-uncompressed)
  • Nikon D2Hs (12bit-compressed, 12bit-uncompressed)
  • Nikon D2X (12bit-compressed, 12bit-uncompressed)
  • Nikon D3 (14bit-compressed, 14bit-uncompressed, 12bit-compressed, 12bit-uncompressed)
  • Nikon D300 (14bit-compressed, 14bit-uncompressed, 12bit-compressed, 12bit-uncompressed)
  • Nikon D3000 (12bit-compressed)
  • Nikon D300S (14bit-compressed, 14bit-uncompressed, 12bit-compressed, 12bit-uncompressed)
  • Nikon D3100 (12bit-compressed)
  • Nikon D3200 (12bit-compressed)
  • Nikon D3300 (12bit-compressed, 12bit-uncompressed)
  • Nikon D3400 (12bit-compressed)
  • Nikon D3S (14bit-compressed, 14bit-uncompressed, 12bit-compressed, 12bit-uncompressed)
  • Nikon D3X (14bit-compressed, 14bit-uncompressed)
  • Nikon D4 (14bit-compressed, 14bit-uncompressed, 12bit-compressed, 12bit-uncompressed)
  • Nikon D40 (12bit-compressed, 12bit-uncompressed)
  • Nikon D40X (12bit-compressed, 12bit-uncompressed)
  • Nikon D4S (14bit-compressed)
  • Nikon D5 (14bit-compressed, 14bit-uncompressed, 12bit-compressed, 12bit-uncompressed)
  • Nikon D50 (12bit-compressed)
  • Nikon D500 (14bit-compressed, 12bit-compressed)
  • Nikon D5000 (12bit-compressed, 12bit-uncompressed)
  • Nikon D5100 (14bit-compressed, 14bit-uncompressed)
  • Nikon D5200 (14bit-compressed)
  • Nikon D5300 (12bit-uncompressed, 14bit-compressed, 14bit-uncompressed)
  • Nikon D5500 (12bit-uncompressed, 14bit-compressed, 14bit-uncompressed)
  • Nikon D60 (12bit-compressed, 12bit-uncompressed)
  • Nikon D600 (14bit-compressed, 12bit-compressed)
  • Nikon D610 (14bit-compressed, 12bit-compressed)
  • Nikon D70 (12bit-compressed)
  • Nikon D700 (12bit-compressed, 12bit-uncompressed, 14bit-compressed)
  • Nikon D7000 (14bit-compressed, 12bit-compressed)
  • Nikon D70s (12bit-compressed)
  • Nikon D7100 (14bit-compressed, 12bit-compressed)
  • Nikon D80 (12bit-compressed, 12bit-uncompressed)
  • Nikon D800 (14bit-compressed, 12bit-compressed, 12bit-uncompressed)
  • Nikon D800E (14bit-compressed, 12bit-compressed, 12bit-uncompressed)
  • Nikon D90 (12bit-compressed, 12bit-uncompressed)
  • Nikon Df (14bit-compressed, 14bit-uncompressed, 12bit-compressed, 12bit-uncompressed)
  • Nikon E5400 (12bit-uncompressed)
  • Nikon E5700 (12bit-uncompressed)
  • Olympus PEN-F
  • OnePlus One (dng)
  • Panasonic DMC-FZ150 (1:1, 16:9)
  • Panasonic DMC-FZ18 (16:9, 3:2)
  • Panasonic DMC-FZ300 (4:3)
  • Panasonic DMC-FZ50 (16:9, 3:2)
  • Panasonic DMC-G8 (4:3)
  • Panasonic DMC-G80 (4:3)
  • Panasonic DMC-GX80 (4:3)
  • Panasonic DMC-GX85 (4:3)
  • Panasonic DMC-LX3 (1:1)
  • Pentax K-1
  • Pentax K-70
  • Samsung GX20 (dng)
  • Sony DSC-F828
  • Sony DSC-RX10M3
  • Sony DSLR-A380
  • Sony ILCA-68
  • Sony ILCE-6300

White Balance Presets

  • Canon EOS 1200D
  • Canon EOS Kiss X70
  • Canon EOS Rebel T5
  • Canon EOS 1300D
  • Canon EOS Kiss X80
  • Canon EOS Rebel T6
  • Canon EOS 5D Mark IV
  • Canon EOS 5DS
  • Canon EOS 5DS R
  • Canon EOS 750D
  • Canon EOS Kiss X8i
  • Canon EOS Rebel T6i
  • Canon EOS 760D
  • Canon EOS 8000D
  • Canon EOS Rebel T6s
  • Canon EOS 80D
  • Canon EOS M10
  • Canon EOS-1D X Mark II
  • Canon PowerShot G7 X Mark II
  • Fujifilm X-Pro2
  • Fujifilm X-T10
  • Fujifilm X100T
  • Fujifilm X20
  • Fujifilm X70
  • Nikon 1 V3
  • Nikon D5500
  • Olympus PEN-F
  • Pentax K-70
  • Pentax K-S1
  • Pentax K-S2
  • Sony ILCA-68
  • Sony ILCE-6300

Noise Profiles

  • Canon EOS 5DS R
  • Canon EOS 80D
  • Canon PowerShot G15
  • Canon PowerShot S100
  • Canon PowerShot SX50 HS
  • Fujifilm X-T10
  • Fujifilm X-T2
  • Fujifilm X100T
  • Fujifilm X20
  • Fujifilm X70
  • Nikon 1 V3
  • Nikon D5500
  • Olympus E-PL6
  • Olympus PEN-F
  • Panasonic DMC-FZ1000
  • Panasonic DMC-GF7
  • Pentax K-S2
  • Ricoh GR
  • Sony DSC-RX10
  • Sony SLT-A37

New Translations

  • Hebrew
  • Slovenian

Updated Translations

  • Catalan
  • Czech
  • Danish
  • Dutch
  • French
  • German
  • Hungarian
  • Russian
  • Slovak
  • Spanish
  • Swedish

47 thoughts on “darktable 2.2.0rc0 released

  1. Compiled sweetly in my main PC with Debian “Jessie”, works great and does seem a little more “speedy”.

    Thank you so much for your great hard work!

    Now I have to see if it will compile on my laptop with ubuntu 14.04, too many outdated dependencies, I’ll see if I can compile those aside, but not too worried about that…

    Thanks again!

    Cheers…

  2. Awesome work! I’m really looking forward to trying this version when 2.0 is official. The number of supported cameras is really impressive.

  3. Thanks for your awesome work!
    I’ve been using DR for a few weeks only and loving it, even after a few years of using Capture One. Looking forward to this release.

    If I may leave a suggestion here, one of the few things that I’m missing from C1 is the ability to specify the long edge size in Pixels on export. This makes it easier to export several photos with some in portrait and others in landscape orientation, using the same resolution. If you feel like implementing this in the future and need any more info just let me know.

    • Actually this should be possible.
      If you enter in the export options for the max. size twice e.g. 2000, then for all pictures (portrait and landscape) the logest size is 2000 pixels.

    • Thanks Peter, but I’m using Darktable 2.0.7 and unless I’m doing it wrong it doesn’t work like in Capture One.

      I can specify a max size of 3500 x 0 to automatically adjust the height but on landscape photos I get a 3500×2339 while on a portrait I get 3500×5234.

      So I can’t export 20 photos of mixed orientations and get the same resolution for all. I would need to export the portrait images separately after changing the max size to 0 x 3500.

      On C1 I can say that I want the long edge to have 3500 and I will always get a 3500×2339 file.

      Or am I mising something? I hope I was able explain it clearly.

      Anyway this is a minor thing, but would be nice to have in the future.

    • Ignore my previous comment, it seems I’m a bit slow but I finally understood what you meant.
      I just need to put 3500×3500 in the max size and it works perfectly! Many thanks!

  4. Nice work!
    Could I have some qouestion?

    – There are an interesting issue with custom ICC profils, reporting on Redmine ok? It’s need more test.

    – The presets / styles / tags / etc. moved from library.db to data.db. This is the final place for custom datas?

    – Hungarian translation need some fixing, can I join to translator team?

    THX in advance!

    ps.: Exposure fusion works great with the slider. Many thanks! :)

  5. Great work. I appreciate all what is done in darktable.

    However, I could not stop a smile when I saw the huge list of Nikon supported cameras and so little of other brands. I understand that Nikon was the leader in the market but not anymore:

    https://www.dpreview.com/news/4455533041/nikon-reportedly-eliminating-1000-jobs-in-japan

    Samsung, Sony and Canon will be more prevalent in the next few years. Nikon is too focused on a dwindling down market niche and it will not survive the challenge or will shrink. They are still in denial.

    I am willing to contribute with Sony a900 and Sony A77 profiles if anyone interested.

    • As mentioned in that list, most cameras were already supported, they just got some fixes in dt. So it’s a list of old and new cameras.

    • Depends on how you installed. If it’s a package from a package manager then just update. If you compiled yourself then I would delete the old install first. In any case you can safely keep your configuration, it will be updated automatically.

  6. Great work! I have a question, though. This release includes a noise profile for the Fujifilm X-T2 camera but not for the Fujifilm X-Pro2. Since the two cameras share the same sensor and the same processor, shouldn’t the two cameras share the same noise profile? (This is the case, for instance, for the Fujifilm X100S and X100T: they share the same noise profile since the processor and the sensor are the same in the two cameras.)

  7. Hi. Great work. A couple of questions.
    1. When this RC comes out on the unstable PPA on install or first startup will it automatically create the new data.db and move the tags and such into it & will it remove them from the library.db and shrink it or do I need to run some manual commands for this.

    2. (Not specifically connected to this release so please point me to another location if inappropriate). I have a BCF-2000 midi slider system i used to use with Lr. I was wondering if it would be able to program this to work with module in dt (maybe through Lua). Not asking you to implement it, just wondering if it would be possible as, this thing greatly speeds up work flow.
    Thanks again for all your work.

    • 1. Yes and no. It will update your library.db and copy over all tags, presets and styles found into the new data.db. Then it will drop styles and presets from the library. It will however keep all tags in the library, too. The reason being that the library should contain all data for your images so that you could move it to another computer or back it up somewhere. Thus the tags need to be in there, too. However, only the tags used for the images in the library are added to the library. Not all tags known to data.db.
      On startup darktable will import all tags available in the loaded library into data.db so that you won’t lose anything. If you use an old library that still got styles or presets while there is an existing data.db (for example because you copied back an old library, or you are exchanging them between computer, …) then dt will also import the styles and presets from that library, renaming them if there is a name clash, and then update the old library as mentioned before.

      2. Funny that you mention MIDI: that’s something I intend to work on in the near future. At the moment you can’t make use of it though – unless you find some external program that reads MIDI events and generates keyboard sequences, then you could try to interface it to the shortcuts in darktable. But I never tried that.

    • From the descriptions on the PPA pages I assume that 14.04 will not get 2.2.x packages. Maybe consider upgrading to something not more than 2 years old.

      Edit: Pascal just confirmed that 14.04 won’t be supported due to available version of GTK3.

  8. In first, thank you very much for your great work !
    This first rc0 version is running pretty good.

    In second, can you tell me what version of opencl must I use under a Debian Jessie version ?

    I actually use opencl from the MESA suite on an AMD FirePro graphic card, but “Image support=No”. So opencl is not usable…

    No success with pocl and I would like to use a free software version and not the non free version from AMD.

    Thanks in advance.

    • I am afraid that there are no open source/free OpenCL drivers on Linux that are capable to be used with darktable and fast enough to be worth it.

  9. thank you for the great work! Does anyone know a way/updated tutorial on how to build darktable for mac? I have tried many time following the instructions but i’m always failing to install gtk-osx-application-gtk3 with macport. Thanks

    • As far as I know there is no building tutorial for the 2.2 series on OSX yet. That’s also why there is no DMG yet. Once parafin has all that figured out I am sure he will both update the build instructions as well as making a DMG for you people. :-)

  10. Hi Houz, I am having trouble with lensfun again. I have upgraded to 2.07 (included in debian jessie package). But DT does not recognize my samyang 12 mm f/2.0 NCS CS. I have added the Fujifilm X mount to mil-samyang.xml in 2 directories, /usr/local/share/lensfun, and /usr/share/lensfun/version_1/. Restarted DT, but still not working. Does the new version read these 2 directories, or has it moved to another directory? Thanks for your help.

    • darktable itself doesn’t read those files, that’s up to liblensfun. And I have not the slightest idea how it works. Maybe someone else can chime in?

    • I have added a Canon lens to /usr/share/lensfun/slr-canon.xml and it worked like a charm.
      Try “locate lensfun” or “locate slr-samyang.xml” to check where in your system lensfun xml files are installed

  11. Thanks Piter. Following your suggestion, I found it under /usr/local/share/lensfun/version_1/mil-samyang.xml. It now works.

  12. Regarding the list of cameras above: is it meant to represent work done up to date or a final list? If my camera is supported in 2.0.7 but not on the list above, should I worry? If so I can provide samples if required (Nikon D810).
    Thanks!

  13. You are amazing! The 2.2rc is working great on my machine so far. I hope the compressed X-Pro2/X-T2 RAW support won’t take to long after the release, my camera is flodding my SDD right now. With the new modules Darktable just exceled RawTherapee for me, which I still used for RAWs sometimes, but you just rock it now!

  14. Hello,

    Thanks for the hard work you’re doing.

    Is there a .deb available to install it easily ?

  15. A question about the new data.db, since I haven’t installed 2.2 yet: is it somehow bound to folders or the current filesystem? If I wanted to create a symlink to a dropbox folder, so I could have my darktable settings synced between my laptop and desktop, would that work?

    • data.db doesn’t contain any folder specific data, those are in library.db only. data.db just holds styles, presets and available tags. So it should be ok to use it on different computers. Just not at the same time as darktable still needs to lock it and be the only program writing.

  16. What an impressive amount of updates. Thank you for such hard work! If I want to install it, Do I need add the Unstable PPA? Thanks