How to build digikam?

Since you already copied the default.nix, just add separateDebugInfo = true; to the derivation.

If you didn’t, you could use overrideAttrs from the CLI, but at that point you’re so far into doing stuff from the CLI you should not I would suggest just writing the expression into a file.

Thanks. I added that to the build (after dontWrapGApps = true;). Running digikam runs a script that sets up a bunch of environment variables before calling .digikam-wrapped, which doesn’t have debugging symbols. Am I putting the directive in the wrong place?

Interestingly, if I run the commands in the digikam script, then run .digikam-wrapped directly, the program behave properly. If I run the digikam script, it does not.

  • Interestingly, if I run the commands in the digikam script, then run .digikam-wrapped directly, the program behave properly. If I run the digikam script, it does not.*

Scratch that–I haven’t been able to reproduce that behaviour.

I still haven’t been able to get a build with debugging symbols.

I thought I’d try building at various points in the git history to try to identify when the problem was introduced, but I’m not having any luck with that, either.

If I revert my flake.nix to take from git revision 51d906d2341c9e866e48c2efcaac0f2d70bfd43e, and do a home-manager switch --flake..., digikam works.

If I do a nix flake update, then home-manager switch..., digikam does not work, but the previous version does.

If I again revert, the new version still does not work (but the old one does).

With the reverted home manager, I can build (as described above) from source from either the original or more recent git revision, and they work.

If I again update home manager to the recent revision, digikam does not work, but the versions I build while the old home manger was in use still work.

I strongly suspect something outside the digikam package is causing this behaviour, but I don’t know how to track it down.

I’ve been able to identify the first commit (on the nixpkgs-unstable branch) where the problem appears.

Rev 9ed63709bc3cadecbd4484e24f0f7ed47188b464 works
Rev 120a26f8ce32ac2bdc0e49a9fed830b7446416b4 does not