### envv-1.6 README file

    ENVV

    Envv is a shell-independent way of handling environment variables.
    It lets you set environment variables, and manipulate colon-separated
    paths in an easy, shell-independent way.  This makes writing setup scripts
    for softare products a snap.  Instead of users hard-coding initialization
    steps in their .cshrc or .profile files, they can source system-wide
    files.  Then, if you ever move any software packages, users don't
    have any problem.

    For example, suppose the commercial software packaged FOOBAR requires
    '/usr/local/foobar/bin' to be on the user's path, and requires the
    environment variable 'FOOHOME' to be set to '/usr/local/foobar'

    Just create the following script:

    	eval `envv add PATH /usr/local/foobar/bin`
    	eval `envv set FOOHOME /usr/local/foobar`

    Then, users of csh, tcsh, bash, sh or ksh can simply source the script,
    and everything will work fine.

    BUILDING ENVV

    Envv is a ridiculously simple program.  You may want to glance at the
    first few lines of envv.c, and take a look at the Makefile.  But all you
    should have to to do compile it is type 'make'.  This makes the executable
    'envv', which you can copy to your favourite system directory.  The manual
    page is in 'envv.1'

    CHANGES TO ENVV:

    * Version 1.6 (11 July 1995)

    + Bug fixes

    - Fixed the path comparison function.  The old version would
      incorrectly match /u/share and /usr/foo because the trailing-slash
      logic was confused.  Thanks to Caleb Epstein for finding and reporting
      the bug.

    * Version 1.5

    + Bug fixes

    - Made directives case-insensitive (suggested by Steve Shoopak.)

    - Changed the definition of MAX_VAL_LEN from 256 to 2048 to allow for
      very long paths.

    * Version 1.4 (10 May 1994)

    + Bug fixes

    - If a set command was followed by add/move/del commands on stdin,
      it didn't work -- the results of the set were not saved in envv's
      environment.

    * Version 1.3 (10 May 1994)

    + Bug fixes

    - I was freeing a string after sending it to putenv().  Bad news.
      This patch fixes that.

    * Version 1.2 (18 April 1994)

    + Enhancements

    - Added the "local" directive to set variables without exporting them
      to the environment.

    - Added the '-e', -h' and '-s' options.

    - If no directives are supplied on command line, envv reads directives
      from stdin and issues commands based on those directives.  Directives
      on stdin should be supplied one-per-line.

    + Bug fixes

    - Fixed up the usage display to show the "choose" directive, which had
      been missing.

    * Version 1.1 (22 March 1994)

    + Enhancements

    - Modified the path manipulation commands so that trailing slashes do
      not affect comparison of directories.  That is, foo/bar/ and foo/bar
      are considered the same.

    - Added the 'zsh' shell to the list of shells envv recognizes.

    - Added the 'choose' directive -- see the man page.

    * Version 1.0 (8 Feb 1994)

    - First version.

    --
    David F. Skoll
    986 Eiffel Avenue
    Ottawa, Ontario
    K2C 0J2 Canada
    (613) 225-8687
    <dfs@doe.carleton.ca>
    <aa775@freenet.carleton.ca>