The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

WHERE DOES ENVY FIT IN?

We are looking into how to sync up two separate sits with common software and other tools. Envy struck us as a way to go, but we are not sure of all the possable usages of the software. Our objective is to have a way to maintain two separate job sites, and not spend a lot of time checking paths, working tool directories, and so forth. How does envy fit in?

Envy is designed to centralize specification of environment variables. It also helps manage dependencies between versions. It sounds like envy might fit your requirements: read on!

IS THERE ANY DOCUMENTATION ON THE FORMAT OF AN .ENV FILE?

It's all online: 'envy help'. Also see the example directory.

WHY IS IT IMPORTANT TO BE ABLE TO UNLOAD?

You can always start a fresh shell, but it isn't very clean or intuitive. Rather, I took the requirement to unload as a principle in guiding envy's design. It is this requirement more than anything else that restricts the kind of features that can be implemented.

HOW CAN I DO CONDITIONAL REQUIRE?

I want to do something like this:

if($SITE == "FC"){ require mgc.site1 }elsif($SITE == "CS"){ require mgc.site2 }

Maybe you didn't realize that variable interpolation is also done in require? For example

  require mgc.$SITE

DIMENSIONS?

Only one version of a particular dimension can be active on one time. For example, if you have a set of envy files like this:

  skylark-1.1.env
  skylark-1.2.env
  boomhopper-3.1.env
  boomhopper-3.2.env

Set up 'skylark' as one dimension and 'boomhopper' as another. Then you can mix versions but you will be prevented from having two versions of 'boomhopper' active at once. The name of the dimension is usually the name of the packages without the version number.

ARE THERE ANY TOOLS SIMILAR TO ENVY?

Envy shares some ideas with www.modules.org. That is the only similar tool that I know of.

HOW DO I TEST NEW .ENV FILES?

Put them in $HOME/.envy/. This directory is always in envy's search path.

WHAT IS WRAPPER?

Wrapper is for crontab. It makes testing crontab entries very easy:

  env -i /path/to/bin/wrapper -m prod myenv -s 'script...'

WHAT IF USERS ARE RESISTING?

echo echo *** Welcome to Big Company! echo echo 1. If you are a developer, you might like to be in 'dev' by default: echo echo dev > $HOME/.custom/startup echo echo 2. If you write crontab scripts, make sure they can run like this: echo env -i $ETOP/bin/wrapper -s 'script...' echo echo We realize this is a bit confusing. If you have any questions, echo please don't hesitate to voice your concerns or questions to echo Sasha or Joshua. echo echo WE FEEL THAT THE ENVY SYSTEM MEETS THE REQUIREMENTS IN THE echo SIMPLEST POSSIBLE MANNER. THANK YOU VERY MUCH FOR YOUR PATIENCE. echo

WHAT IS THE DIFFERENCE BETWEEN AN .ENV FILE AND A .MO FILE?

.mo is the old extension. Otherwise they are identical.

SUPPORT

Send email to envy@listbox.com.

THANKS!

The following people made significant (and insignificant!) contributions to Envy. May your hair never turn purple! (Thanks!)

  Jerry.Hoffman@symbios.com
  Tony.Parent@symbios.com
  Sergei Poliakoff
  Alexander Shugayev
  Devina Kerr White