Closed socec closed 7 years ago
Some more info can be found here: https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
I agree with @socec.
In general, this issue should be solved by having a policy of how to handle the D-Bus session bus in Bistro.
I think the most elegant solution would be to use systemd user sessions, and create a dbus session bus for each user session. I tried this once before, and it is nontrivial. I am not sure what a good intermediate solution would be.
EDIT: I am assuming this variable is set because SC needs to use the D-Bus session bus.
XDG_RUNTIME_DIR is not only used for D-Bus sessions, by the QtApplicationManager it is for example used for some wayland sockets if I'm not compleatly mistaken.
@rpannek You're completely right. And of course it should be in the same place for all applications.
I think it would make sense to invest some time in looking at systemd user sessions for setting this variable to the right value for all applications in the session.
Ok, it seems we have an agreement that this should be handled on another level and make sure it is aligned. I will revert the last commit that sets it for SC in meta-bistro. @kursatkobya said he will make it part of a PR in meta-pelux.
Yeah done it already. Maybe it would be sensible to remove this bug now.
Fixed with the following commit: https://github.com/Pelagicore/meta-pelux/commit/6703bcbe418fda6de1cd3d1ab556c1f2350135fe
Setting XDG_RUNTIME_DIR to /tmp is invasive to the underlaying system because a chmod system call will be executed on /tmp to set 0700 permissions. Details about this can be found in the qtbase code.
It should be something line with "/run/user/", or even better, inherited from the system.
Therefore this line should be reconsidered.