[OS X TeX] teTeX still on my path

S P Suresh spsuresh at cmi.ac.in
Mon Nov 27 05:24:33 EST 2006


On 27-Nov-06, at 3:13 PM, Bruno Voisin wrote:

> Le 27 nov. 06 à 10:00, S P Suresh a écrit :
>
>> What are all the initialization files which set the path whenever  
>> I launch a shell? Or at least, what are the files in which TeX- 
>> related path information is written? Just for my information: none  
>> of my work is affected by this.
>
> It depends on your shell. Using "Mac OS X Tiger in a Nutshell", and  
> the respective man pages:
>
> - For bash:
>
> /etc/profile		Executed automatically at login
> ~/.bash_profile		Executed automatically at login
> /etc/bashrc		Executed automatically at shell startup
> ~/.bashrc		Executed automatically at shell startup
>
> There seems to be also two alternative names for ~/.bash_profile,  
> I'm not quite sure what the difference is:
>
> ~/.bash_login
> ~/.profile
>
> From the Invocation section of the bash man page:
>
>> When  bash is invoked as an interactive login shell, or as a non- 
>> inter-
>> active shell with the --login option, it first reads and executes   
>> com-
>> mands  from  the file /etc/profile, if that file exists.  After  
>> reading
>> that file, it looks for ~/.bash_profile, ~/.bash_login, and  
>> ~/.profile,
>> in  that order, and reads and executes commands from the first one  
>> that
>> exists and is readable.  The --noprofile option may be  used   
>> when  the
>> shell is started to inhibit this behavior.
>>
>> [...]
>>
>> When an interactive shell that is not a login shell  is  started,   
>> bash
>> reads  and executes commands from ~/.bashrc, if that file exists.   
>> This
>> may be inhibited by using the --norc option.  The --rcfile file   
>> option
>> will  force  bash  to  read  and  execute commands from file  
>> instead of
>> ~/.bashrc.
>
> - For tcsh:
>
> /etc/csh.cshrc		Executed at each instance of shell startup
> ~/.cshrc		Executed at each instance of shell startup
> /etc/csh.login		Executed by login shell after /etc/csh.cshrc at login
> ~/.login		Executed by login shell after ~/.cshrc at login
> ~/.cshdirs		Executed by login shell after ~/.login
>
> From the Description section, "Startup and shutdown" subsection, of  
> the tcsh man page:
>
>> A  login  shell  begins  by  executing  commands  from the system  
>> files
>> /etc/csh.cshrc and /etc/csh.login.   It  then  executes  commands   
>> from
>> files  in  the  user's  home  directory:  first  ~/.tcshrc  (+)   
>> or, if
>> ~/.tcshrc is not found, ~/.cshrc, then ~/.history (or the value  
>> of  the
>> histfile shell variable), then ~/.login, and finally ~/.cshdirs  
>> (or the
>> value of  the  dirsfile  shell  variable)  (+).   The  shell  may   
>> read
>> /etc/csh.login  before  instead  of  after /etc/csh.cshrc, and  
>> ~/.login
>> before instead of after ~/.tcshrc or ~/.cshrc  and  ~/.history,   
>> if  so
>> compiled; see the version shell variable. (+)
>>
>> Non-login  shells read only /etc/csh.cshrc and ~/.tcshrc or  
>> ~/.cshrc on
>> startup.
>
> Thus there seems to be a difference in the initialization  
> procedures for bash and tcsh: if I interpreted the above correctly,  
> for tcsh the effect of csh.cshrc and csh.login is cumulative, with  
> csh.cshrc being read for a non-login shell (as in X11) and both  
> csh.cshrc and csh.login for a login shell (as in Terminal), while  
> for bash the effect of profile and bashrc is mutually exclusive,  
> with bashrc being read for a non-login shell and profile for a  
> login shell.
>
> Somewhere in one of these files, a reference to teTeX must be  
> hiding (or in a ~/.MacOSX/environment.plist, though that shouldn't  
> affect Terminal, I think).
>
> Brunon Voisin------------------------- Info --------------------------
> Mac-TeX Website: http://www.esm.psu.edu/mac-tex/
>          & FAQ: http://latex.yauh.de/faq/
> TeX FAQ: http://www.tex.ac.uk/faq
> List Archive: http://tug.org/pipermail/macostex-archives/

Dear Bruno,

Thanks for the comprehensive reply. I am using bash. I have a  
~/.profile, which controls the environment of the shell when I use  
iTerm, and a ~/.bashrc, which applies to xterm (when I use X11. The  
xboard interface for FICS I find far better than some Java interfaces  
that I can run natively!). And the settexpath script updates the path  
only in /etc/profile and /etc/csh.login as well. But teTeX is  
mentioned in none of these places, nor in /etc/bashrc. I just tested  
it again by manually doing an export PATH='...' (without the teTeX  
directory) on the command line. When I closed all tabs and relaunched  
a shell, /usr/local/teTeX/... reappears in my PATH. It is quite  
mysterious, I agree, given that the man pages do not talk of any  
other files, and given that the settexpath script clearly does not  
write into any other places.

Thanks for the help anyway.

Cheers,
Suresh

S P Suresh
Chennai Mathematical Institute
India



------------------------- Info --------------------------
Mac-TeX Website: http://www.esm.psu.edu/mac-tex/
          & FAQ: http://latex.yauh.de/faq/
TeX FAQ: http://www.tex.ac.uk/faq
List Archive: http://tug.org/pipermail/macostex-archives/




More information about the MacOSX-TeX mailing list