Re: $PATH and /etc/profile
Sam Halliday said:
>> Why is this different from what is happening above? If you run startx
>> starting X from a login shell.
> it IS differnet. if you start from the console, you should really do
> `startx &`
> to detach from the console and allow you to continue working on the
> console and
> X; hence 2 logins. try `startx`, lock your screen, do a Ctrl-Alt-F1 and
> that C-c will kill the X session and give whoever is at the machine your
> login. using startx is an arcane way of starting up X. use a login
You could do Ctrl-z and then bg to background the X session. But you're
reasoning is flawed anyway. It's not two logins. You never enter
credentials running X from the console. With *dm you do so it should be
like a login.
The whole point is that starting X from the console is no different from
the exec -l $SHELL -c "$STARTUP" method I describe. It just eliminates the
>> No. 1) this is an arcane hack that the average user should not have to
>> up with
Because it's totally unnecessary for newbies to suffer through discovering
how to propery setup their shell environment. Ever heard of the Principal
of Least Surprise?
> .xsession is there for users to set up their system. perhaps i don't
> the login files to be sourced during my X login? what do i do then?
Then create a ~/.xsession exec $STARTUP to dump the env. But I think most
people do wish to normalize their shell environment so spare me the
> its one line!
>> 2) ~./xsession is not executed unless you choose "Default System
>> Session" -- if you select "KDE" or "WindowMaker" etc the xsession.d
>> bail out before ~/.xsession is reached.
> exactly. and why should it be reached? it is up to debian to set up the
> PATH for
> each of these window managers, not the user.
I'm confused now. You suggest using ~/.xsession to source the user's
profile but if you select "KDE" from the *dm screen causing ~/.xsession to
be ignored how does one setup their shell environment?
> newbies generally don't use .xsession, they use the drop down window to
> choose a
If you do not use ~/.xsession (and select "Default System Session") or use
the technique I've described /etc/profile and the shells home directory
profile will not be sourced. Is this correct in your mind?
> besides, how is
> to read:
> exec -l $SHELL -c "$STARTUP"
> in any way less cryptic than
> . /etc/profile
> . $HOME/.profile
> (if you use a POSIX shell) to the top of your ~/.xsession file
Because changing the file in the xfree86-common package works for
everybody without requiring cryptic commands at all. You're method
*requires* manual intervention and is specific to a certain shell which
means if you change shells you may also need to change your ~/.xsession
file. Also, again, ~/.xsession does not work with *dm managers.