The problem
systemd is started /very/ early in the login process. Inside pam, before we've got to spawning the Exec line from the desktop session.
If that script adds in additional prefixes we obviously don't search them.
We typically hit similar issues with user dbus service files not being found, which requires users to edit system files.
This is currently bodged round in startplasma-dev.sh.cmake
We need something better.
Add SDDM code
We could add an entry in plasma.desktop with X-SDDM-ExtraEnv
Which SDDM would read and shove into the env before going through PAM if that session is selected.
Spawn a nested systemd --user session
Apparently this is an option. It sounds a bit mental
Copy things into transient folders on login
This is what we currently do for the services. It works ok, but it means you can't run make install ; systemctl --user reload to quickly make changes.