Understanding FGLPROFILE

The runtime system uses one or more configuration files in which you can define options and parameters to change the behavior of the programs.

There is no specific naming convention for the FGLPROFILE configuration files, you can use a file name without extension, or the .txt extension for simple text file.

There are three different levels to specify a configuration file, and these files are loaded in the following order:

  1. First, the runtime system reads the default configuration file provided in FGLDIR/etc/fglprofile. This file contains all supported entries, identifies the possible values for an entry, and documents default values. You should not modify this default configuration file.
  2. Then, if the FGLPROFILE environment variable is set, the runtime system reads entries from the files specified by this environment variable. A list of files can be provided with FGLPROFILE. Files must be separated by the operating system specific path separator.
  3. After loading and merging the two previous levels, the runtime system checks if the fglrun.defaults entry is set. This entry defines the program-specific profile directory. If this directory contains a file with the same name as the current program (without .42r extension), the runtime system reads the entries from that file.

It is not recommended to change the default configuration file in FGLDIR/etc/fglprofile. This file will be overwritten by a new installation and your changes will be lost. You better make a copy and define your private configuration file with the FGLPROFILE environment variable.

The runtime system merges the different configuration files found at the three levels. If the same entry is defined in several files, the last loaded entry wins. This means that the order of precedence is:

  1. Program specific configuration file (if fglrun.defaults is defined in one of the other levels).
  2. Configuration files defined by the FGLPROFILE environment variable.
  3. The default configuration file FGLDIR/etc/fglprofile.