For copyright/authors/contributors see top of bubblemon.c.  For list of
supported operating systems, see SUPPORTED_SYSTEMS.

Abstract:

This program is a dockapp-style CPU, memory, swap and load average monitor.
Based on the GNOME BubbleMon applet, this program has been considerably
improved.  Many new features have been added.  This is version 1.5.

Features:

On the surface, WMBubble follows the same style as original GNOME
applet. Main screen area is split into 2 parts - air and water. Water level
depends on how much physical and virtual memory is used by the system. CPU
activity makes water "boil" and creates bubbles. CPU meter near the bottom
shows actual value in percent. As memory usage increases, water level goes
up. When system runs out of physical memory and begins using swap, both
water and air colors change depending on amount of swap used. There is a
cute yellow duck swimming from one corner of the dockapp to another. The
duck really doesn't do anything at the moment, but in a future version it's
speed might correspond to system load average or another variable. This is
the "main" mode of WMBubble.

There are 2 additional screens available - memory and load average.  Load
average screen is accessed by simply hovering the mouse pointer over WMBubble
window. Memory screen is accessed same way, except you must hold down either
left or right "Shift" key before moving the mouse pointer over WMBubble
window. Both Memory and Load average screens fade in slowly for a reason -
during fade, you can click "Right" mouse button to lock currently fading
screen.  This way you can see both CPU load screen and either memory or load
average screen. To exit "locked" mode, simply move the mouse pointer in and
out of the WMBubble window.

Memory screen displays current amount of free memory and swap, in kilobytes
and percent.  Top number is amount of used memory, in kilobytes and percent,
and bottom number is amount of used swap.  Under Linux implementation, used
swap is set to "0" until 100% of system memory is used.  Below these numbers
is a graph of recent memory use.  Unless you are running something that
dynamically allocates and deallocates huge amounts of memory, this graph is
most likely going to be more or less a straight line. Percentage and kilobyte
counters will change color in case of memory or swap use over 90%.
Load average screen displays system load average, same way as presented by
"uptime" command. Approximately last 3 minutes of system load are graphed
below the load average numbers.  Default "light blue" color of load average
and memory screens can be changed to a "pale" version by using "-p" command
line switch.

You can start WMBubble with up to 2 command-line argumens (not counting
switches), each being a path to a program or shell script to execute when
you click Left or Middle mouse button inside WMBubble window. These must
be the last 2 parameters.  There is a .wav file and a simple shell script
to play it, inside misc/ directory, which you can use to make some duck
sounds with WMBubble.

Configuration:

WMBubble is very configurable. Previous section explains many features, but
all of them can be disabled with command-line switches at startup. You can
run "wmbubble -help" for a list of command line options. This will show
command-line switches which can be used to disable certain WMBubble modes,
and modify color scheme used in memory and load average screens. You can
also change colors of the air, water, various physics constants which
control bubble generation, and maximum number of bubbles to make. All of
these settings are read on start-up from the Xserver's loaded xresources,
probably loaded from the .Xresources files.

If you don't have a .Xresources file in your home directory, you can copy
Xresources.sample which is distributed with WMBubble. If you already have
some settings in .Xresources you can simply append WMBubble settings file
to your current configuration: 

hostname:~$ cat /path/to/wmbubble-src/Xresources.sample >> ~/.Xresources

However if you are happy with the current color scheme or bubble physics,
you don't need to do anything at all, because WMBubble has default
settings compiled in.

Information about original GNOME BubbleMon applet:

You can get the original BubbleMon applet from
http://www.nada.kth.se/~d92-jwa/code - but that version requires GNOME, does
not have a cute duck, uses more CPU, and doesn't allow you to start programs
by clicking on it. But, I guess if you like GNOME, you might want to check
it out.


Notes from the FreeBSD port author:
For FreeBSD, the percentage of used memory is calculated as
number_of_active_pages / total_number_of_pages_in_the_system * 100%.
If you have any concerns regarding this or FreeBSD port of WMBubble
in general, please email oleg dashevskii <od@iclub.nsu.ru>.
