Modify .deb for parallel installation of dt stable and dt master from OBS

I’m on Debian stable (Bookworm) and still fail to build darktable from the git sources.
Dt 4.4.2 from OBS is working though.

I use this stable darktable for my main image archive.
I had a separate profile for testing purposes with dt master every now and then - I built this to install to /opt/darktable-master/ according to the readme in github.

Now since building fails I wonder how to modify the .deb from OBS Install package graphics:darktable:master / darktable to get the same result. Would this be possible?

This would only solve parts of your problems

you would also need to ensure that both versions have different configuration/cache directories and so on.

Thanks, I’m aware of this since I did this since I started translating the release articles with dt 3.0.
Now without these articles I try to make the release notes “human readable” for my readers - that includes play around with the new features and doing screenshots for illustration.
I already failed with 4.4 to be on time because of these building issues and want to prepare in time for the winter edition - but to answer your concerns:
$ /opt/darktable-master/bin/darktable --configdir "~/.config/darktable-master" --cachedir "~/.cache/darktable-master
This is how it worked for me to start that second parallel installation.

Wouldn’t chroot-ed environments (jails) be a good solution? I hear Atoms is a tool to manage them (a long time ago, I used some command-line tool).

Or simply compiling at least one of the versions yourself, and installing it in a directory of your choice?

that’s what I did before dt 4.4 - but since then I get compiling errors I can’t resolve myself. Any tipps I got so far to solve these compiling errors are beyond my skills.

The flatpak is also easy to modify to build master.

don’t understand this - sorry. I can’t build anything due to

[ 28%] Building C object bin/CMakeFiles/lib_darktable.dir/common/iop_order.c.o
during GIMPLE pass: graphite
/home/{username}/github/darktable-org/darktable/src/common/iop_order.c: In function ‘_insert_before.isra’:
/home/{username}/github/darktable-org/darktable/src/common/iop_order.c:407:15: internal compiler error: Ungültiger Maschinenbefehl
  407 | static GList *_insert_before(GList *iop_order_list,
      |               ^~~~~~~~~~~~~~
0x7f21a4a03fcf ???
	./signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c:0
0x7f21a49ef1c9 __libc_start_call_main
	../sysdeps/nptl/libc_start_call_main.h:58
0x7f21a49ef284 __libc_start_main_impl
	../csu/libc-start.c:360
Please submit a full bug report, with preprocessed source (by using -freport-bug).
Please include the complete backtrace with any bug report.
See <file:///usr/share/doc/gcc-12/README.Bugs> for instructions.
make[2]: *** [bin/CMakeFiles/lib_darktable.dir/build.make:740: bin/CMakeFiles/lib_darktable.dir/common/iop_order.c.o] Fehler 1
make[1]: *** [CMakeFiles/Makefile2:2416: bin/CMakeFiles/lib_darktable.dir/all] Fehler 2
make: *** [Makefile:156: all] Fehler 2

That’s https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1038603
It’s really horrifying just how poorly that issue is being handled.

2 Likes

Do you think it would compile if you did the generic version and not a release version??

I can’t recall but this parameter -DBINARY_PACKAGE_BUILD=ON No idea really if that would make any difference…

I’d try passing CFLAGS="-O2" CXXFLAGS="-O2" (to the build.sh or however you run cmake),
since hopefully the problematic codepath is only enabled during -O3 optimizations.

Ya you would know much better than me. I just was wondering after scanning the comments. I run DT on windows and touch wood things have been quite smooth building installs for sometime now… Thanks for all your contributions to the project… I think all you hear is when is my camera getting support… :slight_smile:

1 Like

Where can I find a current master flatpak?

You need to grab the current stable json mainifest, edit the dt source entry to point to master, then build it.

I mentioned repeatedly that I cannot build anything due to compile errors on my Debian Bookworm system.
And I also explained that I am not a software developer and don’t understand most of the tipps from above.
Latest Master I found on OBS is from July 31, the Testing version from today won’t install on Bookworm due to dependencies. That’s why I decided to mess up one of my machines with flatpak stuff in the hope there would be some flatpak package around.
Obviously this is also not the case.

So I will give up efforts to write release article for my readers …
(will just tell them that building is obviously not possible for some ordinary linux user without diving deep into the machine room of the system).

There is no master flatpak available.

There is a appimage from the nightly github. Nightly PKG · Workflow runs · darktable-org/darktable · GitHub

4.6 is due to be released next week (but you will need to wait for the packages)

that would be even better - thanks very much for the info.
But I only see log files etc. following the above link …

… but no sign of a download … :thinking:

You have to sign in to GitHub to download. It generates a zip file with the app image, Mac and windows file.

found this page in the meanwhile:

will try …

EDIT: and works :+1: :smile: - thanks!