[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: bash profile how?



s. keeling wrote:
> If you do the "#!/bin/bash --login" in .xsession, everything deriving
> from that will have your user session stuff.
> 
> Subsequent xterm/rxvt/??? DO need to use the "-ls" switch for them to
> become login shells.

But they won't need to at that time because they will inherit the
environment.

> Alternatively, do it in .Xresources
> 
>   *VT100*loginShell:     true
>   *Rxvt*loginShell:      true

I can see that will work for you and for many other people.  But it
won't work for everything in all cases.  In particular in the cases
where you need to inherit the environment.  That is the use model of
programs I run at work.  There various applications when launched use
both the graphical screen and also open up graphical terminal windows
such as xterms.  Also some can be shelled out and open terminals.

In order to set up the environment to run the tool in the first place
I need to source a setting script which sets up the environment with
variables to point to work tools off to the right places.  In
particular PATH for me is set to load programs from the nfs server.
So it will be something like:

  export PATH=$PATH:/net/fileserver/mnt/cadroot/bin

If the terminal is told to be a login shell then it resets the
environment (as it should) and that piece of functionality breaks.
Windows started by shelling out of the application can no longer run
those work programs which need environment setup since the environment
has been changed out from under it.  So setting terminals to be login
shells do not work for me in this case.

I realize that you are not running in an environment like this.  That
is why it is working for you.  Which is great.  As they say there is
more than one way of doing it.  Just adding this so there can be some
appreciation of why it might not work for others.  I need PATH to be
inherited to subprocesses and sometimes those subprocesses are
graphical terminal windows such as xterm.  Setting the environment for
the underlying window manager seems like the cleanest solution to me.

Bob

Attachment: pgpBgZHlaWcbt.pgp
Description: PGP signature


Reply to: