# Environment Files

Location: [RR]\render_apps\_setenv\all\...

Setenv files are used to set the environment for the render application.

Some renderer or plugins require to set environment variables to their install location.

Setenv files are also used to tell the render application the location of the renderer preferences

Setenv files are called by the commandline <SetEnvSoft> in your render config.

RRender searches for the following files and executes the one it finds:

1. [RR]/render_apps/_setenv/all/setenv_[renderapp]_[renderer]

2. [RR]/render_apps/_setenv/all/setenv_[renderapp]

The file names have to be lowercase (at least on OSX and Linux).

## .rrEnv files

We have created a new file format for creating shell scripts.

The main reason for a new format is that you have one file no matter the OS you use.

And it takes care of using undefined variables on Linux.

rrEnv files may be converted into windows shell, bash, tsh (MacOS), csh RHEL (Alma, Rocky, CentOS), csh Debian (Ubuntu), csh MacOS.

You can edit .rrEnv files with a text editor (if you know the syntax)

or the application [RR]\bin\...\baEnvFile_Editor .

Please see help file rrApplications /rrTools /baEnvFile_Editor for more information.

Note: A Linux or MacOS client can be configured to use either bash or not.

rrConfig, menu Clients, tab per client, right bottom "Alternate Shell".

## .rrEnv __inhouse files

We have split the setenv files into an "RR factory" and an "inhouse" file.

For example maya.rrEnv and maya__inhouse.rrEnv.

If you update RR, then unchanged RR factory files are updated.

Instead of editing the rrEnv file named the same as the render app (e.g. arnold.rrEnv), you should edit or create the __inhouse files (e.g. arnold__inhouse.rrEnv).

This way you can modify the render environment, but still get important updates for the main files.

## Environment variables set by the rrClient

The client sets a lot of environment variables before calling the setenv.

This way you have access to parameters like the render application version.

So you can define different plugin locations for different versions of your software.

Please see the first ~30 lines of any render log of any job in rrControl to view variables set ( and their values).

## Using .rrEnv files outside RR

Of course you may use rrEnv files for your purposes without RR as well.

Use the application [RR]\bin\...\baConvertEnvFile to create a shel script from an rrEnv file.
You may create them into a temp location and directly run it.

Please see help file rrApplications /rrTools /baConvertEnvFile for more information.