Read Me
TORSMO - Tyopoyta ORvelo System MOnitor (version 0.17)
Copyright (c) 2004, Hannu Saransaari and Lauri Hakkarainen
All rights reserved.
This program is licensed under BSD license, read COPYING
WHAT IS TORSMO
Torsmo is a system monitor for Linux that sits in the corner of your
desktop. Torsmo renders itself on the root window (on the desktop) or to
its own transparent window any special eyecandy.
Torsmo can show lots of info about your system, including:
* kernel version
* uptime
* network interface information
* memory and swap usage
* hostname
* machine, i686 for example
* system name, Linux for example
* temperatures from i2c-sensors
COMPILING
To compile and run torsmo:
./configure
make
./torsmo
Torsmo doesn't probably compile with other compilers than gcc and icc. It
doesn't compile with C89 compiler and not even with pure C99. It uses few
things that might not exist: strdup(), strcasecmp(), strncasecmp(), optarg
variable with getopt() and long long (not in C89). Crashes in file system
statistics stuff when compiled with icc, I don't know exactly why.
You can disable 'drawing to own window' feature in case you don't need it
by passing --disable-own-window to configure -script.
CONFIGURING
Default configuration file is $HOME/.torsmorc (can be changed from
torsmo.c among other things). See torsmorc.sample. You might want to copy
it to $HOME/.torsmorc and then start modifying it.
Configuration file confs
Conf Meaning
alignment Aligned position on screen, may be top_left,
top_right, bottom_left, bottom_right
background Boolean value, if true, torsmo will be forked to
background when started
border_margin Border margin in pixels
border_width Border width in pixels
default_color Default color and border color
default_shade_color Default shading color and border's shading color
default_outline_color Default outline color
Use the Xdbe extension? (eliminates flicker) It is
double_buffer highly recommended to use own window with this one
so double buffer won't be so big.
draw_borders Draw borders around text?
draw_shades Draw shades?
draw_outline Draw outlines?
font Font name in X, xfontsel can be used to get a nice
font
gap_x Gap between right or left border of screen
gap_y Gap between top or bottom border of screen
no_buffers Substract (file system) buffers from used memory?
mail_spool Mail spool for mail checking
minimum_size Minimum size of window
own_window Boolean, create own window to draw?
pad_percents Pad percentages to this many decimals (0 = no
padding)
stippled_borders Border stippling (dashing) in pixels
update_interval Update interval in seconds
uppercase Boolean value, if true, text is rendered in upper
case
use_xft Use Xft (anti-aliased font and stuff)
text After this begins text to be formatted on screen
Boolean variable without value in text means yes. Value may be also yes,
true or any negative or positive integer meaning yes. No, false or zero
meaning no.
There may be some variables in text. Variable is given either in format
$variable or in ${variable}. Latter allows characters right after the
variable and must be used in some stuff because of arguments.
Command line options
Argument Description
-V Prints version and exits
-a ALIGNMENT Text alignment on screen, {top,bottom}_{left,right}
-b Use double buffering (eliminates flicker)
-c FILE Config file to load instead of $HOME/.torsmorc
-d Daemonize, fork to background
-f FONT Font to use
-h Prints command line help and exits
-o Create own window to draw
-t TEXT Text to render, remember single quotes, like -t '$uptime'
-u SECS Update interval
-w WIN_ID Window id to draw
-x X X position
-y Y Y position
Command line options override configurations defined in configuration
file.
Variables in text
Variable Arguments Description
acpiacadapter ACPI ac adapter state.
acpifan ACPI fan state
acpitemp ACPI temperature.
battery (name) Remaining capasity in ACPI or APM
battery. ACPI battery name can be
given as argument (default is BAT0).
buffers Amount of memory buffered
cached Amount of memory cached
color (color) Change drawing color to color
cpu CPU usage in percents
cpubar (height(,width)) Bar that shows CPU usage, height is
bar's height in pixels
downspeed net Download speed in kilobytes
downspeedf net Download speed in kilobytes with one
decimal
exec shell command Executes a shell command and displays
the output in torsmo. warning: this
takes a lot more resources than other
variables.
execi interval, shell Same as exec but with specific
command interval. Interval can't be less than
update_interval in configuration.
fs_bar (height), (fs) Bar that shows how much space is used
on a file system. height is the
height in pixels. fs is any file on
that file system.
fs_free (fs) Free space on a file system available
for users.
fs_free_perc (fs) Free percentage of space on a file
system available for users.
fs_size (fs) File system size
fs_used (fs) File system used space
hr (height) Horizontal line, height is the height
in pixels
i2c (dev), type, n I2C sensor from sysfs (Linux 2.6).
dev may be omitted if you have only
one I2C device. type is either in (or
vol) meaning voltage, fan meaning fan
or temp meaning temperature. n is
number of the sensor. See
/sys/bus/i2c/devices/ on your local
computer.
kernel Kernel version
loadavg (1), (2), (3) System load average, 1 is for past 1
minute, 2 for past 5 minutes and 3
for past 15 minutes.
machine Machine, i686 for example
mails Mail count in mail spool. You can use
program like fetchmail to get mails
from some server using your favourite
protocol. See also new_mails.
mem Amount of memory in use
membar (height) Bar that shows amount of memory in
use
memmax Total amount of memory
memperc Percentage of memory in use
new_mails Unread mail count in mail spool.
nodename Hostname
outlinecolor (color) Change outline color
pre_exec shell command Executes a shell command one time
before torsmo displays anything and
puts output as text.
processes Total processes (sleeping and
running)
running_processes Running processes (not sleeping),
requires Linux 2.6
shadecolor (color) Change shading color
stippled_hr (space), (height) Stippled (dashed) horizontal line
swapbar (height) Bar that shows amount of swap in use
swap Amount of swap in use
swapmax Total amount of swap
swapperc Percentage of swap in use
sysname System name, Linux for example
time (format) Local time, see man strftime to get
more information about format. Cf.
utime.
totaldown net Total download, overflows at 4 GB on
Linux with 32-bit arch and there
doesn't seem to be a way to know how
many times it has already done that
before torsmo has started.
totalup net Total upload, this one too, may
overflow
updates Number of updates (for debugging)
upspeed net Upload speed in kilobytes
upspeedf net Upload speed in kilobytes with one
decimal
uptime Uptime
uptime_short Uptime in a shorter format
utime (format) Same as time, above, but shows UTC
instead of local time.
Colors are parsed using XParseColor(), there might be a list of them:
/usr/X11R6/lib/X11/rgb.txt. Color can be also in #rrggbb format (hex).
Note that when displaying bytes, power is 1024 and not 1000 so 1M really
means 1024*1024 bytes and not 1000*1000.
KNOWN PROBLEMS
Drawing to root or some other desktop window directly doesn't work with
all window managers. Especially doesn't work well with Gnome and it has
been reported that it doesn't work with KDE either. Nautilus can be
disabled from drawing to desktop with program gconf-editor. Uncheck
show_desktop in /apps/nautilus/preferences/. There is -w switch in torsmo
to set some specific window id. You might find xwininfo -tree useful to
find the window to draw to. You can also use -o argument which makes
torsmo to create its own window.