🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.unix.shell
Article #1799

Re: A simple C-shell query.

#1799
From: Leif Andersson
Date: Sun, 18 Nov 1990 14:22
69 lines
3242 bytes
>>>>> On 16 Nov 90 19:26:46 GMT, lubkt@vax1.cc.lehigh.edu said:

lubkt> Here is a C-shell query:
   [stuff deleted]
lubkt> You might get an idea, if I tell you its application. I have TeX
lubkt> compiled under SunOS. I do not to define all the environment variables
lubkt> (variables set using setenv) for all users, only those who want to use
lubkt> tex, by enter, say, "use tex", where "use" is a C-shell script which
lubkt> takes "tex" as its parameter. Having a general script like this will
lubkt> permit "use" to be as generic as possible.

The solution we use to exactly this problem involves one alias and one
source'd script, but I still think it works quite well. The alias is:

  alias setup 'set setup=(\!*);source /usr/local/lib/setup.csh'

This line is put in each user's .cshrc or in a common file sourced by .cshrc.
The script referred to in the alias follows my signature. A user
wanting to use TeX puts the command "setup tex" in his .login  or
gives it interactively.

The system administrator puts in more "if ($setup[1] == whatever) then"
statements in the setup file when new software packages arrive,  and
we thus have a unified approach to selecting environment variables.

-------------------------------------------------------------------------------
 Leif Andersson				Internet: leif@Control.LTH.Se
 Dept. of Automatic Control             Bitnet:   BODELA@SELDC51
 Lund Institute of Technology           Phone:    +46 46 109742
 P.O. Box 118                           Fax:      +46 46 138118
 S-221 00 Lund, Sweden
-------------------------------------------------------------------------------

# SETUP --
 
while (${#setup} != 0)
  if ($setup[1] == tex) then
    set TEX=/usr/local/tex
    if ($?MYTEXINPUTS == 0) then  # The user gets his own path appended.
     setenv MYTEXINPUTS .
    endif
    setenv TEXSYSINPUTS $TEX/inputs:$TEX/inputs/bibtex
    setenv TEXINPUTS $MYTEXINPUTS\:$TEXSYSINPUTS
    setenv TEXFORMATS $TEX/formats
    setenv TEXFONTS $TEX/fonts:$TEX/fonts/vftfm

  else if ($setup[1] == metafont) then
    set TEX=/usr/local/tex
    setenv MFSYSINPUTS $TEX/mf/inputs:$TEX/mf/cm
    setenv MFINPUTS .:$MFSYSINPUTS
    setenv MFBASES $TEX/formats

  else if ($setup[1] == ssim) then
    setenv GPPATH "/usr/local/ssim/Src/lib"
  
  else if ($setup[1] == basile) then
    setenv BASILE_DIR "/usr/local/basile"

  else if ($setup[1] == muse) then
    setenv ELIBDIR /sperry/muse/lib/emacs
    setenv EMACS /sperry/muse/bin/emacs
    setenv EPATH $ELIBDIR/maclib
  
  else
    echo "Unknown setup: $setup"
  endif

  shift setup
end # while
Technical Details
Message-ID: <LEIF.90Nov18152247@bellman.control.lth.se>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rutgers!usc!wuarchive!mit-eddie!bloom-beacon!eru!hagbard!sunic!lth.se!bellman!leif
References: <69.2743f726@vax1.cc.lehigh.edu>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rutgers!usc!wuarchive!mit-eddie!bloom-beacon!eru!hagbard!sunic!lth.se!bellman!leif
From: leif@control.lth.se (Leif Andersson)
Newsgroups: comp.unix.shell
Subject: Re: A simple C-shell query.
Message-ID: <LEIF.90Nov18152247@bellman.control.lth.se>
Date: 18 Nov 90 14:22:47 GMT
References: <69.2743f726@vax1.cc.lehigh.edu>
Sender: newsuser@lth.se (LTH network news server)
Organization: Dept. Automatic Control, Lund Inst. of Technology, Sweden
Lines: 69
In-Reply-To: lubkt@vax1.cc.lehigh.edu's message of 16 Nov 90 19:26:46 GMT