dt 4.4 on Debian

Hi,

Obviously there is no deb package of dt 4.4 for Debian 11/12 and apparently neither many Ubuntu based systems.

And Debian 12 seems to be broken, at least with Nvidia, there is an inssue with initramfs-tools.

Can dt 4.4 be made work (compiled) on Debian 11? Does the flatpak work and does opencl work with the flatpak?

Thanks in advance for the feedback.

Best

Anna

I am in Debian 12 with Nvidia Quadro RTX 4000 GPU and Debian non-free Nvidia drivers. What is it that is broken in initramfs-tools? Edit: I am building dt 4.4.0 from source and using dt on my Debian 12.

Yes, I have done this on Debian 11, but it is messy:

  • Compile your own GCC 12.2.0 compiler and use it to build dt. This has to be done to fulfill minimum gcc requirement from dt source. I patched cmake build files to allow gcc 10 but the build failed.

  • Build a new libexiv2 library with a newer version than supplied by Debian 11 and enable ISOBMFF support if one needs CR3.

  • Configure build system to use own gcc 12.2.0 compiler and find compiled libs at compile time and run time.

  • EDIT: Debian 11 does not provide gcc12, but perhaps there is a working solution with Debian 11 clang/LLVM package. I have not investigated this.

3 Likes

Indeed, LLVM 13 should work there…

1 Like

I have tried clang-14 package from Debian 12 on dt code and it works. However, is dt code not relying heavily on gcc specific optimizations (gcc -O levels and graphite optimization)? Will dt from clang mean that you pay a slight perfromance penalty compared to dt from gcc? I have not investigated this.

1 Like

Yes the flatpak will work. OpenCL works for nVidia cards.

1 Like

Yea, just tested myself. After the first start opencl was off but the second time it was on.

I updated my Debian installation to Bookworm/12 last weekend with minimal issues (leftover GStreamer plug-in package from the multimedia repository caused some upgrade hiccups, also had to install the kernel headers for the proprietary Nvidia module to be built successfully). I then successfully built DT and based on minimal testing it seems to work fine.

So generally speaking Debian 12 / Nvidia / DT 4.4 seems to be a working combination, although obviously issues triggering on some specific hardware / existing set of packages while upgrading are very much possible.

1 Like

For what it’s worth, I do all my dev on GNU/Debian/sid. So yes, Debian ought to work :slight_smile:

5 Likes

Does lensfun work properly with the flatpak? I mean can the database be updated?

1 Like

In the flatpak the database must be updated in the flatpak manifest. Its pretty up to date since we pull the newest commit every once in awhile, and the updates are then baked in.

So you can’t run lensfun-update-data with the flatpak. If lensfun has newer lenses on master that you want, you can ping me or open an issues on the flatpak repo and ask that it be updated.

1 Like

any chance to see dt4.4 in the OBS repo some time for Debian bookworm?
https://software.opensuse.org/download.html?project=graphics:darktable&package=darktable

I guess it could be quite some time until the fix for this isl bug propagates from testing to stable.

In the meantime, the only option seems to be to switch OBS Debian 12 recipe to LLVM instead of GCC…

Thanks.
So if there is a chance the fix will come to stable I will wait for that.
I upgraded one of my 3 machines from 11.7 to 12.0 the day after release (which I normally don’t do … upgrade only after 2 or 3 point-releases) just to compile dt master and write a german language article for release day. That totally failed so now I have time to wait …

Just compile using LLVM then.

I compile my own libisl from libisl sources (v0.26) and use my locally compiled library instead of the Debian 12 libisl23, since I am affected by the isl bug., mentioned by @kmilos.

This enabes me to build dt from source using gcc 12.2.0 from Debian 12.

The bug in libisl23 from Debian 12 depends on which instruction set your processor can use.

True - if you’re lucky and your processor is of a newer generation, you might be able to just build w/o issues on your machine. The OBS machines are obviously affected unfortunately.

CPU:
  Info: Quad Core model: Intel Core i5-3570 bits: 64 type: MCP 
  arch: Ivy Bridge rev: 9 L2 cache: 6 MiB 
  flags: avx lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 27281 
  Speed: 1709 MHz min/max: 1600/3800 MHz Core speeds (MHz): 1: 1709 2: 1702 
  3: 1672 4: 1675 

doesn’t look like newer generation …

What’s wrong with OBS? I know it doesn’t have the very latest 4.4.2, but 4.4.1 is not so bad either, I think.

1 Like