Our programming environment is dependent upon certain environment variables being set. For example, to use distcc, one needs to define the DISTCC_HOSTS environment variable. The way we handle this is forcing each developer to source a global tcshrc file upon invoking a new shell. The global tcshrc file contains statements to set the environment variables up (among other things).
However, this is awfully discriminatory as each developer is forced to use tcsh since setting an environment variable is different per shell.
The most obvious solution to this problem to have corresponding global bashrc and zshrc files, but that of course becomes cumbersome since now we have to maintain three different files all containing the same logic.
Are there any clean solutions to solve this sort of situation?
tschto work which may or may not be the shell of choice for him/her..profileread by all the shells? And shouldn't this be on unix.stackexchange.com or ubuntu.stackexchange.com ?tcshconfigure his/her own environment? Setting environment variables isn't hard.DISTCC_HOSTSvariable was one of many environment variables that must be set to make sure that each developer is on the same page. If we decided that we needed to add an additional environment variable, then every developer has to make corresponding changes which violates the Don't Repeat Yourself principle.