Red Hat Bugzilla – Bug 798477
The switch desktop tool breaks our login environment
Last modified: 2013-04-12 16:58:01 EDT
Description of problem:
We set the shell variable 'p' to locate our parts library. However, when the switch desktop tool is run it drops ~/.Xclient-default that allows a custom desktop environment. However, it uses 'p' to find a valid path and resets this variable to something like /usr/bin. This means any application launched from the Redhat menu has an invaild $p setting.
Version-Release number of selected component (if applicable):
It happens everytime you use the desktop switch tool
Steps to Reproduce:
1. Use the deskop switch tool
2. Log out
4. Launch an application from the menu that assumes $p is set.
$p is set to /usr/bin
$p should be set to the variable set in the custom login scripts.
The easy way we fix this is by replacing
from the .Xclients-default with
exec -l $SHELL -c "$p/WM"
the variable p which is using in .Xclients-default is not exported, so it cannot overwrite the variable set in in the customscript.
I tried to to reproduce the problem with adding this line "echo p=$p >/tmp/startkde.out" in /usr/bin/starkde", and switchdesk kde before. The variable p is empty which is expected.
Could you please give more details how i can reproduce this issue?
Your test sounds like it should reproduce the error. I tried to repeat it myself, but it seemed to work. We have gotten a few patches since I originally posted this. I also just got a newly configured workstation, so I won't be able to look at this again for a while.
I assumed that the exec command didn't need to export the environment but just replaced the calling shell with the $p/WM argument taking the current shell environment.
The created .Xclients-default script doesn't export any enviroments on unix standard. To export the enviroments you need to set "export XXX".
I will close this bug as "NOTABUG" in this case.