GRASS variables and environment variables

There are two types of variables:

Any setting which needs to be modifiable by a GRASS program (e.g. MONITOR) has to be a GRASS variable.

Setting environment variables


Setting environment variables depends on the shell being used:
  Bash:     export VARIABLE=value
   or
  Csh:      setenv VARIABLE value

Setting environment variables permanently

Setting GRASS variables

You have to use "g.gisenv" (within GRASS which then permanently predefines GRASS variables in the .grassrc6 file):

Use:     g.gisenv set=VARIABLE=VALUE

It looks unusual with two equals signs, but g.gisenv does dual duty for getting and setting GRASS variables.

If the user just specifies a variable name, it defaults to "get" mode. Example:

      GRASS ~> g.gisenv GRASS_GUI
      text


List of selected (GRASS related) environment variables

GISBASE
  directory where GRASS lives

GISRC
  name of .grassrc6 file

GRASS_ADDON_PATH
[grass5] startup script
  allows to specify additional paths to local GRASS modules extra to standard distribution

GRASS_ANOTHER_BUTTON
[various modules]
  If the environment variable GRASS_ANOTHER_BUTTON exists, the mouse button setting will be changed for two-button mice.

GRASS_BACKGROUNDCOLOR
[PNGdriver]
  defines the background color of the image created by the PNG driver

GRASS_GNUPLOT
[m.svfit, s.probplt, s.sv]
  program to use for plotting "gnuplot" data

GRASS_HEIGHT
[d.mon]
  defines the height of GRASS monitor, see also GRASS_WIDTH

GRASS_HTML_BROWSER
[init.sh, d.m]
  defines name of HTML browser

GRASS_INT_ZLIB
[libgis]
  If the environment variable GRASS_INT_ZLIB exists, new compressed rasters will be compressed using zlib instead of RLE compression. Such rasters will have a "compressed" value of 2 in the cellhd file.
Obviously, decompression is controlled by the raster's "compressed" value, not the environment variable.

GRASS_MESSAGE_FORMAT
[various modules]
Maybe set to either "standard" or "gui" (normally GRASS takes care)

GRASS_PAGER
[various modules]
Maybe set to either "less" or "more"

GRASS_PERL
  set perl with path

GRASS_PNGFILE
[PNGdriver]
  name of PNG output file

GRASS_STDERR
  set to any value to prevent user mail on error

GRASS_TCLSH
[nviz]
  set tclsh shell name to override 'tclsh'

GRASS_TRANSPARENT
[PNGdriver]
  if "TRUE", the image created by the PNG driver will have a transparent background

GRASS_TRUECOLOR
[PNGdriver]
  if "TRUE", the PNG driver generates a true-color image

GRASS_UI_TERM
  set to any value to use the terminal based parser

GRASS_VERSION
  reports the current version number (used by R-stats interface etc);
  should not be changed by user

GRASS_WIDTH
[d.mon]
  defines the width of GRASS monitor, see also GRASS_HEIGHT

GRASS_WISH
[d.m, nviz]
  set wish shell name to override 'wish'

List of selected GRASS variables

[ Use g.gisenv to set/unset/change them ]

DEBUG
[entire GRASS]
  sets level of debug message output (0: no debug messages)
g.gisenv set=DEBUG=0

DM_FORM_MODE
[d.m]
  sets default form mode (txt or gui)
g.gisenv set=DM_FORM_MODE=txt

GISDBASE
  initial database

GIS_LOCK
  lock ID to prevent parallel GRASS use,
  process id of the start-up shell script

GRASS_DB_ENCODING
[d.what.vect/forms library]
  encoding of query form (utf-8, ascii, iso8859-1, koi8-r)

GRASS_GUI
  either "text" or "tcltk" to define non-/graphical startup

LOCATION
 full path to location directory

LOCATION_NAME
 initial location name

MAPSET
  initial mapset

OVERWRITE
[all modules]
  toggles map overwrite.
    With 0 maps are protected (default),
    With 1 maps with identical names will be overwritten.
  You can force a protected overwrite by adding "--o" to the command.
e.g.:
g.gisenv set="OVERWRITE=0"

GRASS-related Files

$HOME/.grassrc6
  stores the GRASS variables (but not environment variables)

$HOME/GIS_ERROR_LOG
  If this file exists, all GRASS error messages are stored here instead of sending a mail to the GIS user. To generate the file, use:
   touch $HOME/GIS_ERROR_LOG

SEE ALSO

g.gisenv

Last changed: $Date$


Help Index