How do I change the directory where daedalus stores its DB and logs in Linux?

Would be an easy change to the startup script, but should definitely be a parameter. You need /hook, I need /media, next one needs /mnt, …

While at it, they could also make the debug shell a parameter and not an environment variable.

No, not at all, just a minor issue and I have changed so much in this script that I basically run my own now (Start Daedalus with tmux to use cardano-cli).