Provided by: gkrellm_2.3.5-5_amd64 bug

NAME

       gkrellm - The GNU Krell Monitors

SYNOPSIS

       gkrellm  [  --help  ]  [  -t  |  --theme  dir  ]  [  -g | --geometry +x+y ] [ -wm ] [ -w |
       --withdrawn ] [ -c | --config suffix ] [ -nc ] [ -f | --force-host-config ] [ -demo ] [ -p
       |  --plugin  plugin.so  ]  [  -s  | --server hostname ] [ -P | --port server_port ] [ -l |
       --logfile path ]

DESCRIPTION

       With a single process, gkrellm manages multiple stacked  monitors  and  supports  applying
       themes to match the monitors appearance to your window manager, Gtk, or any other theme.

   FEATURES
       •   SMP CPU, Disk, Proc, and active net interface monitors with LEDs.

       •   Internet monitor that displays current and charts historical port hits.

       •   Memory and swap space usage meters and a system uptime monitor.

       •   File system meters show capacity/free space and can mount/umount.

       •   A mbox/maildir/MH/POP3/IMAP mail monitor which can launch a mail reader or remote mail
           fetch program.

       •   Clock/calendar and hostname display.

       •   Laptop Battery monitor.

       •   CPU/motherboard temperature/fan/voltages display  with  warnings  and  alarms.   Linux
           requires  a  sensor  configured  sysfs,  lm_sensors modules or a running mbmon daemon.
           FreeBSD can also read the mbmon daemon.  Windows requires MBM.

       •   Disk temperatures if there's a running hddtemp daemon.

       •   Multiple monitors managed by a single process to reduce system load.

       •   A timer button that can execute PPP or ISDN logon/logoff scripts.

       •   Charts are autoscaling with configurable grid line resolution, or

       •   can be set to a fixed scale mode.

       •   Separate colors for "in" and "out" data.  The in color is used for CPU user time, disk
           read,  forks,  and  net  receive  data.   The out color is used for CPU sys time, disk
           write, load, and net transmit data.

       •   Commands can be configured to run when monitor labels are clicked.

       •   Data can be collected from a gkrellmd server running on a remote machine.

       •   gkrellm is plugin capable so special interest monitors can be created.

       •   Many themes are available.

   USER INTERFACE
        Top frame

              Btn 1  Press and drag to move gkrellm window.

              Btn 3  Popup main menu.

        Side frames

              Btn 2  Slide gkrellm window shut (Btn1 if -m2 option).

              Btn 3  Popup main menu.

        All charts

              Btn 1  Toggle draw of extra info on the chart.

              Btn 3  Brings up a chart configuration window.

        Inet charts

              Btn 2  Toggle between port hits per minute and hour.

        Most panels

              Btn 3  Opens the configuration window directly to a monitor's configuration page.

        File System meter panels

              Btn 1,2
                     Toggle display of label and fs capacity scrolling display.  The mount button
                     runs  mount/umount  commands.   If ejectable, left click the eject button to
                     open tray, right click to close.

        Mem and Swap meter panels

              Btn 1,2
                     Toggle display of label and memory or swap capacity scrolling display.

        Mailbox monitor message count button

              Btn 1  Launch a mail reader program.  If options permit, also stop  animations  and
                     reset remote message counts.

              Btn 2  Toggle  mail  check  mute  mode which inhibits the sound notify program, and
                     optionally inhibits all mail checking.

        Mailbox monitor envelope decal

              Btn 1  Force a mail check regardless of mute or timeout state.

        Battery monitor panel

              Btn 1  On the charging state decal toggles battery minutes left, percent level, and
                     charge rate display.

              Btn 2  Anywhere on the panel also toggles the display.

        Keyboard shortcuts

              F1     popup the user config window.

              F2     popup the main menu.

              Page_Up
                     previous theme or theme alternative.

              Page_Down
                     next theme or theme alternative.

              <Ctl>Page_Up
                     previous theme, skipping any theme alternatives.

              <Ctl>Page_Down
                     next theme, skipping any theme alternatives.

       If  a  command has been configured to be launched for a monitor, then a button will appear
       when the mouse enters the panel of that monitor.  Clicking  the  button  will  launch  the
       command.

       A  right  button mouse click on the side or top frames of the gkrellm window will pop up a
       user configuration window where you can configure all the  builtin  and  plugin  monitors.
       Chart  appearance  may  be  configured by right clicking on a chart, and right clicking on
       many panels will open the configuration window directly  to  the  corresponding  monitor's
       configuration page.

OPTIONS

       --help Displays this manual page.

       -t, --theme dir
              gkrellm  will  load  all  theme image files it finds in dir and parse the gkrellmrc
              file if one exists.  This option overrides  the  loading  of  the  last  theme  you
              configured  to be loaded in the Themes configuration window.  Theme changes are not
              saved when gkrellm is run with this option.

       -g, --geometry +x+y
              Makes gkrellm move to an (x,y) position on  the  screen  at  startup.   Standard  X
              window  geometry  position  (not  size) formats are parsed, ie +x+y -x+y +x-y -x-y.
              Except, negative geometry positions are not recognized (ie +-x--y ).

       -wm    Forces gkrellm to start up with window manager  decorations.   The  default  is  no
              decorations because there are themed borders.

       -w, --withdrawn
              gkrellm  starts up in withdrawn mode so it can go into the Blackbox slit (and maybe
              WindowMaker dock).

       -c, --config suffix
              Use alternate config files generated by appending  suffix  to  config  file  names.
              This  overrides  any  previous host config which may have been setup with the below
              option.

       -f, --force-host-config
              If gkrellm is run once with this option and then  the  configuration  or  theme  is
              changed,  the config files that are written will have a -hostname appended to them.
              Subsequent runs will detect the user-config-hostname and gkrellm_theme.cfg-hostname
              files  and  use them instead of the normal configuration files (unless the --config
              option  is  specified).    This  is  a  convenience  for  allowing  remote  gkrellm
              independent  config  files in a shared home directory, and for the hostname to show
              up in the X title for window management.  This option has no effect in client mode.

       -s, --server hostname
              Run in client mode by connecting to and collecting data from a gkrellmd  server  on
              hostname

       -P, --port server_port
              Use server_port for the gkrellmd server connection.

       -l, --logfile path
              Enable sending error and debugging messages to a log file.

       -nc    No  config  mode.   The  config  menu  is blocked so no config changes can be made.
              Useful in certain environments, or maybe for running on a xdm(1)  login  screen  or
              during a screensaver mode?

       -demo  Force enabling of many monitors so themers can see everything. All config saving is
              inhibited.

       -p, --plugin plugin.so
              For plugin development, load the command line specified plugin  so  you  can  avoid
              repeated install steps in the development cycle.

BUILTIN MONITORS

   Charts
       The  default for most charts is to automatically adjust the number of grid lines drawn and
       the resolution per grid so drawn data will be nicely visible.   You  may  change  this  to
       fixed  grids  of  1-5  and/or  fixed  grid resolutions in the chart configuration windows.
       However, some combination of the auto scaling modes may give best results.

       Auto grid resolution has the following behavior.

       Auto mode sticks at peak value is not set:

              1) If using auto number of grids, set the resolution per grid  and  the  number  of
              grids  to  optimize  the  visibility  of  data drawn on the chart.  Try to keep the
              number of grids between 1 and 7.

              2) If using a fixed number of grids, set the resolution per grid  to  the  smallest
              value that draws data without clipping.

       Auto mode sticks at peak value is set:

              1) If using auto number of grids, set the resolution per grid such that drawing the
              peak value encountered would require at least 5 grids.

              2) If using a fixed number of grids, set the resolution per grid such that the peak
              value  encountered  could be drawn without clipping.  This means the resolution per
              grid never decreases.

       All resolution per grid values are constrained to a set of values in  either  a  1,  2,  5
       sequence  or  a  1, 1.5, 2, 3, 5, 7 sequence.  If you set Auto mode sticks at peak value a
       manual Auto mode recalibrate may occasionally be required if the chart  data  has  a  wide
       dynamic range.

   CPU Monitor
       Data  is plotted as a percentage.  In auto number of grids mode, resolution is a fixed 20%
       per grid.  In fixed number of grids mode, grid resolution is 100% divided by the number of
       grids.

   Proc Monitor
       The  krell  shows  process  forks  with  a  full scale value of 10 forks.  The chart has a
       resolution of 10 forks/sec per grid in auto number  of  grids  mode  and  50  forks/second
       maximum  on the chart in fixed number of grids mode.  The process load resolution per grid
       is best left at 1.0 for auto number of grids, but can be set as high as 5 if you configure
       the chart to have only 1 or 2 fixed grids.

   Net Monitor
       gkrellm  is  designed to display a chart for net interfaces which are up, which means they
       are listed in the routing table (however, it is possible in some cases to monitor unrouted
       interfaces).   One  net  interface  may  be  linked to a timer button which can be used to
       connect and disconnect from an ISP.

       The timer button shows an off, standby, or on state by  a  distinctive  (color  or  shape)
       icon.

       ppp    Standby  state is while the modem phone line is locked while ppp is connecting, and
              the on state is the ppp link connected.  The phone line lock is determined  by  the
              existence  of the modem lock file /var/lock/LCK..modem, which assumes pppd is using
              /dev/modem.  However, if your pppd setup does not  use  /dev/modem,  then  you  can
              configure an alternative with:

              ln  -s  /var/lock/LCK..ttySx   ~/.gkrellm2/LCK..modem

              where ttySx is the tty device your modem does use.  The ppp on state is detected by
              the existence of /var/run/pppX.pid and the time stamp of this file is the base  for
              the on line time.

       ippp   The timer button standby state is not applicable to ISDN interfaces that are always
              routed. The on state is ISDN on line while the ippp interface is  routed.   The  on
              line timer is reset at transitions from ISDN hangup state to on line state.

       For  both ppp and ippp timer button links, the panel area of the interface is always shown
       and the chart appears when the interface is routed with the phone  link  connected  or  on
       line.

       If  the  timer button is not linked to a net interface, then it can be used as a push on /
       push off timer

       Net monitors can have a label so that the interface can be associated with the identity of
       the  other  end  of the connection.  This is useful if you have several net connections or
       run multiple remote gkrellm programs.  It can be easier to keep track of who is  connected
       to who.

   Mem and Swap Monitor
       Here  you are reading a ratio of total used to total available.  The amount of memory used
       indicated by the memory monitor is actually a calculated "used" memory.  If you enter  the
       "free"  command,  you  will see that most of your memory is almost always used because the
       kernel uses large amounts for buffers and cache.  Since the kernel can free a lot of  this
       memory  as  user  process demand for memory goes up, a more realistic reading of memory in
       use is obtained by subtracting the buffers and cached  memory  from  the  kernel  reported
       used.   This  is  shown in the free command output in the "-/+ buffers/cache" line where a
       calculated used amount has buffers and cached memory subtracted from the  kernel  reported
       used memory, and a calculated free amount has the buffers and cached memory added in.

       While  the  memory  meter always shows the calculated "used" memory, the raw memory values
       total, shared, buffered, and cached may be optionally displayed in  the  memory  panel  by
       entering an appropriate format display string in the config.

       Units:   All  memory  values  have  units  of  binary  megabytes (MiB).  Memory sizes have
       historically been reported in these units because memory arrays  on  silicon  have  always
       increased  in size by multiples of 2.  Add an address line to a memory chip and you double
       or quadruple (a multiplexed address) the memory  size.   A  binary  megabyte  is  2^20  or
       1048576.  Contrast this with units for other stats such as disk capacities or net transfer
       rates where the proper units are decimal megabytes or kilobytes.  Disk drive capacities do
       not increase by powers of 2 and manufacturers do not use binary units when reporting their
       sizes.  However, some of you may prefer to see a binary disk drive capacity  reported,  so
       it is available as an option.

   Internet Monitor
       Displays  TCP  port  connections  and  records  historical port hits on a minute or hourly
       chart.  Middle button click on an inet chart to  toggle  between  the  minute  and  hourly
       displays.  There is a strip below the minute or hour charts where marks are drawn for port
       hits in second intervals.  Each inet krell also shows port hits with a full scale range of
       5 hits.  The left button toggle of extra info displays current port connections.

       For  each  internet monitor you can specify two labeled datasets with one or two ports for
       each dataset.  There are two ports because some internet ports are related and  you  might
       want  to  group  them - for example, the standard HTTP port is 80, but there is also a www
       web caching service on port 8080.  So it makes sense to have a HTTP monitor which combines
       data from both ports.  A possible common configuration would be to create one inet monitor
       that monitors HTTP hits plotted in one color and FTP hits in another.  To do  this,  setup
       in the Internet configuration tab:

              HTTP  80 8080    FTP  21

       Or  you  could create separate monitors for HTTP and FTP.  Other monitors might be SMTP on
       port 25 or NNTP on port 119.

       If you check the "Port0 - Port1 is a range" button, then all of the ports between the  two
       entries  will  be  monitored.   Clicking the small button on the Inet panels will pop up a
       window listing the currently connected port numbers and the host that is connected to it.

       gkrellm samples TCP port activity once per second, so it is possible for port hits lasting
       less than a second to be missed.

   File System Monitor
       File system mount points can be selected to be monitored with a meter that shows the ratio
       of blocks used to total blocks available.  Mounting commands  can  be  enabled  for  mount
       points in one of two ways:

       If  a  mount  point  is in your /etc/fstab and you have mount permission then mount(8) and
       umount(8) commands can be enabled and executed for that mount point simply by checking the
       "Enable  /etc/fstab  mounting"  option.   Mount  table entries in /etc/fstab must have the
       "user" or "owner" option set to grant this permission unless gkrellm is run as root.   For
       example, if you run gkrellm as a normal user and you want to be able to mount your floppy,
       your /etc/fstab could have either of:

              /dev/fd0 /mnt/floppy  ext2 user,noauto,rw,exec  0  0
              /dev/fd0 /mnt/floppy  ext2 user,defaults  0  0

       If gkrellm is run as root or if you have sudo(1) permission to run the mount(8)  commands,
       then  a  custom  mount  command  can  be  entered  into  the "mount command" entry box.  A
       umount(8) command must also be entered if you  choose  this  method.   Example  mount  and
       umount entries using sudo:

              sudo /bin/mount -t msdos /dev/fd0 /mnt/A
              sudo /bin/umount /mnt/A

       Notes:  the  mount point specified in a custom mount command (/mnt/A in this example) must
       be the same as entered in the "Mount Point" entry.  Also, you  should  have  the  NOPASSWD
       option set in /etc/sudoers for this.

       File  system monitors can be created as primary (always visible) or secondary which can be
       hidden and then shown when they are of interest.  For example, you might make primary file
       system monitors for root, home, or user so they will be always visible, but make secondary
       monitors for less frequently used mount points such as  floppy,  zip,  backup  partitions,
       foreign file system types, etc.  Secondary FS monitors can also be configured to always be
       visible if they are mounted by checking the "Show if mounted" option.   Using this feature
       you  can  show  the  secondary group, mount a file system, and have that FS monitor remain
       visible even when the secondary group is hidden.  A standard cdrom mount will show as 100%
       full  but  a  monitor  for  it  could  be  created  with mounting enabled just to have the
       mount/umount convenience.

       When the "Ejectable" option is selected for a file system, an  eject  button  will  appear
       when  the mouse enters the file system panel.  If you are not using /etc/fstab mounting, a
       device file to eject will also need to be entered.  Systems may  have  varying  levels  of
       support for this feature ranging from none or basic using an ioctl() to full support using
       an eject command to eject all its supported devices.   Linux and NetBSD  use  the  "eject"
       command  while  FreeBSD  uses  the  "cdcontrol"  command,  so  be  sure these commands are
       installed.  Most eject commands will also support closing a CDROM tray.  If they  do,  you
       will be able to access this function by right clicking the eject button.

   Mail Monitor
       Checks your mailboxes for unread mail. A mail reading program (MUA) can be executed with a
       left mouse click on the mail monitor panel button,  and  a  mail  notify  (play  a  sound)
       program such as esdplay or artsplay can be executed whenever the new mail count increases.
       The mail panel envelope decal may also be clicked to force an immediate mail check at  any
       time.

       gkrellm  is  capable of checking mail from local mailbox types mbox, MH, and maildir,  and
       from remote mailbox types POP3 and IMAP.

       POP3 and IMAP checking can use  non-standard  port  numbers  and  password  authentication
       protocols  APOP  (for  POP3  only)  or  CRAM-MD5.   If supported by the mail server, emote
       checking may be done over an SSL connection if the "Use SSL" option is selected.

       Before internal POP3 and IMAP checking was added, an  external  mail  fetch/check  program
       could be set up to be executed periodically to download or check remote POP3 or IMAP mail.
       This method is still available and must be used if you want gkrellm to be able to download
       remote mail to local mailboxes because the builtin checking functions cannot download.

   Battery Monitor
       This  meter  will  be  available if a battery exists and will show battery percentage life
       remaining.  A decal indicates if AC line is connected or if the battery is in use.  If the
       data  is  available,  time  remaining  may  be displayed as well as the percentage battery
       level. If the time remaining is not available or is inaccurate, the Estimate  Time  option
       may  be  selected  to  display a battery time to run or time to charge which is calculated
       based on the current battery percent level, user supplied typical  battery  times,  and  a
       default  linear  extrapolation  model.   For  charging, an exponential charge model may be
       selected.

       A battery low level warning and alarm alert may be set.  If battery time is not  available
       from the OS and the estimate time mode is not set, the alert units will be battery percent
       level.  Otherwise the alert units will be battery time left in  minutes.   If  OS  battery
       time  is  not  available  and the estimate time mode is set when the alert is created, the
       alert will have units of time  left  in  minutes  and  the  alert  will  automatically  be
       destroyed if the estimate time option is subsequently turned off.

       If the OS reports multiple batteries, the alert will be a master alert which is duplicated
       for each battery.

   CPU/Motherboard Sensors - Temperature, Voltages, and Fan RPM
       Linux:
       Sensor monitoring on Linux requires that either lm_sensors modules are installed  in  your
       running  kernel,  that you run a kernel >= 2.6 with sysfs sensors configured, or, for i386
       architectures, that you have the mbmon daemon running when gkrellm is started (as long  as
       mbmon supports reporting sensor values for your motherboard).

       For  lm_sensors  to be used, gkrellm must be compiled with libsensors support.  It will be
       if the libsensors development package  is  installed  when  gkrellm  is  compiled.   Using
       libsensors is the preferred interface on Linux since it is the only interface that will be
       up to date on supporting correct voltage scaling factors and  offsets  for  recent  sensor
       chips.

       If the mbmon daemon is used, it must be started before gkrellm like so:

              mbmon -r -P port-number

       where  the given "port-number" must be configured to match in the gkrellm Sensors->Options
       config.  If you have mbmon installed from a distribution package, you can probably  easily
       set up for mbmon to be started at boot.  With Debian, for example, you would edit the file
       /etc/default/mbmon to set:

              START_MBMON=1

       and you would need to set in the gkrellm Sensors->Option config the mbmon port to be "411"
       to match the default in the /etc/default/mbmon file.

       Sensor  temperatures  can  also  be read from /proc/acpi/thermal_zone, /proc/acpi/thermal,
       /proc/acpi/ibm, the PowerMac Windfarm /sysfs interface,  and  PowerMac  PMU  /sysfs  based
       sensors.

       When  using  lm_sensors,  libsensors  will  be used if available, but if libsensors is not
       linked into the program, the sensor data will be read directly from the  /sysfs  or  /proc
       file  systems.   If  running  a  newer  Linux  kernel  sensor  module not yet supported by
       libsensors and libsensors is linked, there will also be an automatic   fallback  to  using
       /sysfs  as  long  as  libsensors  doesn't  detect any sensors.  But if it does detect some
       sensors which does not include the new sensors you need,  you  can  force  getting  /sysfs
       sensor data either by running:

              gkrellm --without-libsensors

       or by rebuilding with:

              make without-libsensors=yes

       Disk  temperatures  may  also  be  monitored  if  you have the hddtemp daemon running when
       gkrellm is started.  gkrellm uses the default hddtemp port of 7634.  Like  mbmon,  hddtemp
       is best started in a boot script to guarantee it will be running when gkrellm is started.

       NVIDIA graphics card GPU temperatures may also be monitored if the nvidia-settings command
       is installed and your Nvidia card supports the temperature reporting.  If  nvidia-settings
       is  not  installed  or does not report temperatures for your card, an option for using the
       nvclock program will appear in the Sensors  config.   Nvclock  use  is  not  automatically
       enabled as is nvidia-settings because nvclock can add seconds of gkrellm startup time when
       used on a NVIDIA GPU chipset it does not support.  GKrellM must be restarted to  recognize
       changes for the nvclock option.

       Windows:
       Requires a MBM install: http://mbm.livewiredev.com/.

       FreeBSD:
       Builtin  sensor  reporting  is  available for some sensor chips.  FreeBSD systems can also
       read sensor data from the mbmon daemon as described in the Linux section above.

       NetBSD:
       Builtin sensor reporting is available for some sensor chips.  NetBSD  uses  the  envsys(4)
       interface  and  sensors  reading  is  automatically  enabled if you have either a lm(4) or
       viaenv(4) chip configured in your kernel.

       General Setup:
       Temperature and fan sensor displays may be optionally located on the CPU or Proc panels to
       save  some  vertical space while voltages are always displayed on their own panel.  If you
       set up to monitor both a temperature and a fan on a single CPU or Proc panel, they can  be
       displayed  optionally  as  an  alternating  single  display  or  as separate displays.  If
       separate, the fan display will replace the panel label.  The  configuration  for  this  is
       under the CPU and Proc config pages.

       If  not  using  libsensors,  in the Setup page for the Sensors config enter any correction
       factors and offsets for each of the sensors you are monitoring (see  below  and  lm_sensor
       documentation).   For  Linux,  default  values  are automatically provided for many sensor
       chips.

       But if using libsenors, it is not possible to enter correction factors and offsets on  the
       Sensors  config  page  because  libsensors  configuration is done in the /etc/sensors.conf
       file.  To get sensor debug output and to find out the sensor data source, run:

              gkrellm -d 0x80

       Note for NetBSD users:
              The current implementation of the sensor reading under NetBSD opens /dev/sysmon and
              never  closes it. Since that device does not support concurrent accesses, you won't
              be able to run other apps such as envstat(8) while GKrellM is running.  This  might
              change if this happens to be an issue.

              The  reasons  for  this  choice  are  a) efficiency (though it might be possible to
              open/close /dev/sysmon each time a reading  is  needed  without  major  performance
              issue)  and  b)  as  of  October  2001, there's a bug in the envsys(4) driver which
              sometimes causes deadlocks when processes try to access simultaneously  /dev/sysmon
              (see NetBSD PR#14368). A (quick and dirty) workaround for this is to monopolize the
              driver :)

   CPU/Motherboard Temperatures
       Most modern motherboards will not  require  setting  temperature  correction  factors  and
       offsets  other  than  the  defaults.   However,  for  lm_sensors it is necessary to have a
       correct "set sensor" line in /etc/sensors.conf if the temperature  sensor  type  is  other
       than  the default thermistor.  If using Linux sysfs sensors, this sensor type would be set
       by writing to a sysfs file.  For example, you might at boot set a sysfs temperature sensor
       type with:

              echo "2" > /sys/bus/i2c/devices/0-0290/sensor2

       On  the  other hand, some older motherboards may need temperature calibration by setting a
       correction factor and offset for each  temperature  sensor  because  of  factors  such  as
       variations  in  physical thermistor contact with the CPU.  Unfortunately, this calibration
       may not be practical or physically possible because it requires that somehow you can get a
       real  CPU  temperature  reading.   So,  the  calibration  discussion  which follows should
       probably be considered an academic exercise that might give you some good (or bad)  ideas.
       If you have a recent motherboard, skip the following.

       Anyway,  to  do  this calibration, take two real CPU temperature readings corresponding to
       two sensor reported readings.   To  get  the  real  readings,  you  can  trust  that  your
       motherboard  manufacturer has done this calibration and is reporting accurate temperatures
       in the bios, or you can put a temperature probe directly on your CPU  case  (and  this  is
       where things get impractical).

       Here  is  a  hypothetical CPU calibration procedure.  Make sure gkrellm is configured with
       default factors of 1.0 and offsets of 0 and is reporting temperatures in centigrade:

       1 •    Power on the machine and read a real temperature T1 from the bios or a  temperature
              probe.  If reading from the bios, proceed with booting the OS.  Now record a sensor
              temperature S1 as reported by gkrellm.

       2 •    Change the room temperature environment (turn off your AC or  change  computer  fan
              exhaust  speed).   Now repeat step 1, this time recording a real temperature T2 and
              gkrellm reported sensor temperature S2.

       3 •    Now you can calculate the correction factor and offset you need to enter  into  the
              Sensor configuration tab:

              From:

              s - S1     t - T1
              ------  =  ------
              S2 - S1    T2 - T1

                       T2 - T1     S2*T1 - S1*T2
              t  = s * -------  +  -------------
                       S2 - S1         S2 - S1

              So:

                        T2 - T1                S2*T1 - S1*T2
              factor =  -------      offset =  -------------
                        S2 - S1                   S2 - S1

   Voltage Sensor Corrections
       You need to read this section only if you think the default voltage correction factors and
       offsets are incorrect.  For Linux and lm_sensors and sysfs sensors
        this would be if gkrellm does not know about your particular sensor chip.  For  MBM  with
       Windows, the default values should be correct.

       Motherboard  voltage  measurements are made by a variety of sensor chips which are capable
       of measuring a small positive voltage.  GKrellM can display these voltage values  and  can
       apply  a  correction factor, offset, and for the negative voltages of some chips (lm80), a
       level shifting reference voltage to the  displayed  voltage.   There  are  four  cases  to
       consider:

       1 •    Low  valued  positive  voltages  may be directly connected to the input pins of the
              sensor chip and therefore need no correction.  For  these,  the  correction  factor
              should be 1.0 and the offset should be 0.

       2 •    Higher  valued  positive voltages will be connected to the input pins of the sensor
              chip through a 2 resistor attenuation circuit.  For these,  the  correction  factor
              will be a ratio of the resistor values and the offset will be 0.

       3 •    Negative  voltages  will  be  connected to the input pins of the sensor through a 2
              resistor attenuation circuit with one of the  resistors  connected  to  a  positive
              voltage  to  effect a voltage level shift.  For these (lm80), the correction factor
              and offset will be ratios of the resistor values, and a reference voltage  must  be
              used.

       4 •    Some  sensor  chips  (w83782,  lm78) are designed to handle negative inputs without
              requiring an input resistor connected to a voltage  reference.   For  these,  there
              will be a correction factor and a possible offset.

              For cases 2 and 3, the sensor chip input network looks like:

                  Vs o----/\/\/---o-------------o Vin
                           R1     |
                                  o--/\/\/--o Vref
                                      R2

       where,

              Vs     is the motherboard voltage under measurement

              Vin    is  the  voltage  at  the  input pin of the sensor chip and therefore is the
                     voltage reading that will need correction.

              Vref   is a level shifting voltage reference.  For case 2, Vref is ground or  zero.
                     For case 3, Vref will be one of the positive motherboard voltages.

       The  problem  then is to compute correction factors and offsets as a function of R1 and R2
       so that GKrellM can display a computed motherboard voltage Vs as a function of a  measured
       voltage Vin.

       Since  sensor  chip input pins are high impedance, current into the pins may be assumed to
       be zero.  In that case, the current through R1 equals current through R2, and we have:

                  (Vs - Vin)/R1 = (Vin - Vref)/R2

              Solving for Vs as a function of Vin:

                  Vs = Vin * (1 + R1/R2)  -  (R1/R2) * Vref

              So, the correction factor is:  1 + R1/R2
                  the correction offset is:  - (R1/R2)
                  Vref is specified in the config separately from
                  the offset (for chips that need it).

       Fortunately there seems to be a standard set of  resistor  values  used  for  the  various
       sensor  chips  which  are  documented  in the lm_sensor documentation.  The GKrellM sensor
       corrections are similar to the compute lines you find with lm_sensors, with the difference
       that  lm_sensors  has an expression evaluator which does not require that compute lines be
       simplified to the single factor and offset  required  by  GKrellM.   But  you  can  easily
       calculate  the  factor  and offset.  For example, this lm_sensor compute line for a case 2
       voltage:

                  compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)

       yields a correction factor of ((6.8/10)+1) = 1.68 and an offset of zero.

       Note that the second compute line expression is not relevant in GKrellM because  there  is
       never  any  need  to  invert  the voltage reading calculation.  Also, the compute line '@'
       symbol represents the Vin voltage.

       A more complicated compute line for a case 3 voltage:

                  compute in5 (160/35.7)*(@ - in0) + @, ...

              can be rewritten:

                  compute in5 (1 + 160/35.7)*@ - (160/35.7)*in0, ...

              so the correction factor is  (1 + 160/35.7) = 5.48
              and the correction offset is -(160/35.7) = -4.48
              and the voltage reference Vref is in0

       Here is a table of correction factors and offsets  based  on  some  typical  compute  line
       entries from /etc/sensors.conf:

                     Compute line                 Factor  Offset  Vref
                     -------------------------------------------------
              lm80   in0 (24/14.7 + 1) * @        2.633     0       -
                     in2 (22.1/30 + 1) * @        1.737     0       -
                     in3 (2.8/1.9) * @            1.474     0       -
                     in4 (160/30.1 + 1) * @       6.316     0       -
                     in5 (160/35.7)*(@-in0) + @   5.482    -4.482  in0
                     in6 (36/16.2)*(@-in0) + @    3.222    -2.222  in0

              LM78   in3 ((6.8/10)+1)*@           1.68      0       -
                     in4 ((28/10)+1)*@            3.8       0       -
                     in5 -(210/60.4)*@           -3.477     0       -
                     in6 -(90.9/60.4)*@          -1.505     0       -

              w83782 in5 (5.14 * @) - 14.91       5.14    -14.91    -
                     in6 (3.14 * @) -  7.71       3.14     -7.71    -

   Command launching
       Many monitors can be set up to launch a command when you click on the monitor label.  When
       a command is configured for a monitor, its label is converted into a button which  becomes
       visible  when  the mouse enters the panel or meter area of the label.  If the command is a
       console command (doesn't have a graphical user interface), then the command must be run in
       a  terminal window such as xterm, eterm, or Gnome terminal.  For example running the "top"
       command would take:

       xterm -e top

       You can use the command launching feature to run commands related to monitoring functions,
       or  you  may use it to have a convenient launch for any command.  Since gkrellm is usually
       made sticky, you can have easy  access  to  several  frequently  used  commands  from  any
       desktop.  This is intended to be a convenience and a way to maximize utilization of screen
       real estate and not a replacement for more full featured command launching  from  desktops
       such as Gnome or KDE or others.  Some launch ideas for some monitors could be:

       calendar:
              gnomecal, evolution, or ical

       CPU:   xterm -e top or gps or gtop

       inet:  gftp or xterm -e ftpwho


       net:   mozilla, galeon, skipstone, or xterm -e slrn -C-
       And so on... Tooltips can be set up for these commands.

   Alerts
       Most  monitors  can  have  alerts configured to give warnings and alarms for data readings
       which range outside of configurable limits.  Where useful, a delay of  the  alert  trigger
       can  be  configured.  A warning or alarm consists of an attention grabbing decal appearing
       and an optional command being executed.  For most monitors the  command  may  contain  the
       same  substitution  variables  which are available for display in the chart or panel label
       format strings and are documented on configuration Info pages.  Additionally, the hostname
       may be embedded in the command with the $H substitution variable.

       If  you  have  festival  installed,  either a warn or alarm command could be configured to
       speak something.  For example a CPU temperature alert warn command could  just  speak  the
       current temperature with:

           sh -c "echo warning C P U is at $s degrees | esddsp festival --tts"

       Assuming you have esd running.

THEMES

       A  theme  is  a  directory containing image files and a gkrellmrc configuration file.  The
       theme directory may be installed in several locations:

              ~/.gkrellm2/themes
              /usr/local/share/gkrellm2/themes
              /usr/share/gkrellm2/themes

       For compatibility with Gtk themes, a gkrellm theme may also be installed as:

              ~/.themes/THEME_NAME/gkrellm2
              /usr/share/themes/THEME_NAME/gkrellm2

       Finally, a theme you simply want to check  out  can  be  untarred  anywhere  and  used  by
       running:

              gkrellm -t path_to_theme

       If  you are interested in writing a theme, go to the Themes page at http://www.gkrellm.net
       and there you will find a Theme making reference.

PLUGINS

       gkrellm tries to load all plugins (shared object files ending in .so)  it  finds  in  your
       plugin directory ~/.gkrellm2/plugins.  The directories /usr/local/lib/gkrellm2/plugins and
       /usr/lib/gkrellm2/plugins are also searched for plugins to install.

       Some plugins may be available only as source files and  they  will  have  to  be  compiled
       before  installation.   There  should be instructions for doing this with each plugin that
       comes in source form.

       If  you  are  interested  in   writing   a   plugin,   go   to   the   Plugins   page   at
       http://www.gkrellm.net and there you will find a Plugin programmers reference.

CLIENT/SERVER

       When  a  local  gkrellm  runs  in client mode and connects to a remote gkrellmd server all
       builtin monitors collect their data from the server.  However, the client gkrellm  process
       is  running  on  the  local  machine, so any enabled plugins will run in the local context
       (Flynn is an exception to this since it derives its data from the  builtin  CPU  monitor).
       Also, any command launching will run commands on the local machine.

FILES

       ~/.gkrellm2
              User  gkrellm  directory  where are located configuration files, user's plugins and
              user's themes.

       ~/.gkrellm2/plugins
              User plugin directory.

       /usr/lib/gkrellm2/plugins
              System wide plugin directory.

       /usr/local/lib/gkrellm2/plugins
              Local plugin directory.

       ~/.gkrellm2/themes
              User theme directory.

       ~/.themes/THEME_NAME/gkrellm2
              User theme packaged as part of a user Gtk theme.

       /usr/share/gkrellm2/themes
              System wide theme directory.

       /usr/local/share/gkrellm2/themes
              Local theme directory.

       /usr/share/themes/THEME_NAME/gkrellm2
              System wide theme packaged as part of a system wide Gtk theme.

AUTHORS

       This manual page was written by Bill Wilson <billw@gkrellm.net>.  http://www.gkrellm.net/

SEE ALSO

       fstab(5), sudo(1), mount(8), pppd(8), umount(8)