BIRCH
Settings -
Technical Description
update July   5, 2015


SUMMARY

For brevity, examples are only shown for the Bourne shell, and for BIRCH_PROMPT.

ORGANIZATION OF TASKS

The shell sets BIRCH Environment Variables (BIRCHvariables) by calling birch_settings_shell.source. This file is created by BIRCHSettings.py.WriteBIRCHenvBourne() or WriteBIRCHenvCSh(), either during installation or update, or when called from birchadmin.


birch_settings_shell.source was generated by BIRCHSettings.py, using the local values for BIRCHvariables  which are stored in $BIRCH/local/admin/BIRCH.settings. There is a set of BIRCHvariables in a series of files called BIRCHvar.list. This file is read and written by ReadBLChoices() and WriteBLChoices.
 

BIRCH.settings was generated by BIRCHSettings.py, using possible choices for BIRCHvariables stored in  $BIRCH/admin/Settings/default/<var>.list files.

Each $BIRCH/admin/Settings.default/var.list file contains a list of name/value pairs with the name/value pairs for the choice menus in Settings.blmenu. If BIRCH.settings doesn't exist, the first choice in the list is taken as the default.


BIRCHSettings.py can be run from birchadmin to automate setting of BIRCHvariables. Any time BIRCHSettings.py is run, it generates the HelperApps.blmenu file for birchadmin. That way, an up-to-date list of choices for each BLvariable will be written to the .blmenu file.


During installation and updating, BIRCHSettings.py generates the birchadmin-->Preferences/Settings menu, and the birch_settings_shell.source scripts.

WORKFLOWS

New install

  1. read possible choices from $BIRCH/admin/Settings.default/var.list files.
  2. foreach BLvariable
    1. select best choice for the platform
  3. write:

Update of an existing system

  1. read settings from $BIRCH/local/admin/BIRCH.settings
  2. write:

Changing settings using birchadmin

  1. read settings from $BIRCH/local/admin/BIRCH.settings
  2. Change variable specified in --setvar option on command line
  3. write:


Please send suggestions of comments regarding this page to psgendb@cc.umanitoba.ca