>>>> "Larry" == Larry Evans
<cppljevans(a)cox-internet.com> writes:
Larry> Unfortunately, I couldn't get it to send from xemacs;
Larry> hence, I'm sending from thunderbird.
Thanks for making the effort. (Do you know why XEmacs couldn't send?
It should just use /usr/sbin/sendmail I think, and it should Just Work[tm].)
Larry> The PATH is set in ~/.bash_env. However, I don't
Larry> understand the question:
Larry> Does either one source the other?
I just wanted to know how consistency is being ensured across the
various rc files. I forgot to mention the possibility of a third file
being sourced.
Larry> since only one file, .bashrc, was referenced in the above
Larry> paragraph.
I used a two-paragraph scope, sorry! :-)
> What is the PATH that you set, and what is the PATH that you
> get from the shell command tool? (`echo $PATH' should do the
> trick.)
Larry> The PATH set by my ~/.bash_env is:
Larry>
PATH=$HOME/bin:$BJAM_PATH:$INTEL_CXX_base/bin:/usr/local/bin:$COMO_PATH/bin:$PATH
Larry> PATH=$HOME/prog_dev/d-language/dmd/bin:$PATH
Larry> and from 'shell command tool', `echo $PATH` shows:
Larry> cd /home/evansl/
Larry> echo $PATH
Larry> /usr/local/bin:/usr/bin:/bin:/usr/bin/X11
This is the typical path given to the X server/xdm (or whatever your X
login manager is).
Larry> OTOH, as mentioned, from the eshell, I get:
Larry> [ the expansion of the PATH set in .bash_env ]
In a later post, you wrote
Larry> I've discovered something else important. The problems I
Larry> was reporting did not start from invokation from an xterm.
Larry> Instead, they started from an icewm menu item. The code
Larry> executed when I pressed this item was:
Larry> prog "XEmacs21-nomule" - /bin/sh -c
/usr/bin/xemacs21-nomule"
OK, so what appears to be happening is that /bin/sh is getting run in
the environment of icewm, and then that environment is passed to
XEmacs. I'm surprised the eshell gets it right; it must be doing
something like parsing the output of "$SHELL -i set", and I just missed
it. M-x shell-mode would run "bash -i", and also "get it right".
Larry> OTOH, when:
Larry> /usr/bin/xemacs21-nomule
Larry> is executed from a terminal, the problem with PATH
Larry> disappears.
Right; the terminal is run with bash -i (or maybe even bash --login),
which sources .bashrc and .bash_env.
Please refer to Glynn Clements's post for several options. There's
one more that occurs to me. I'm not sure whether it is "elegant and
correct," or if it's a "dangerous hack" (and it's untested).
4. Change the shell in the IceWM menu to a bash interactive shell
(/bin/bash -i):
prog "XEmacs21-nomule" - /bin/bash -i -c
/usr/bin/xemacs21-nomule"
Hope one of these works for you without unwanted side effects!
Regards,
Steve
--
School of Systems and Information Engineering
http://turnbull.sk.tsukuba.ac.jp
University of Tsukuba Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
Ask not how you can "do" free software business;
ask what your business can "do for" free software.