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.