FACES(1)
NAME
faces - visual mail, user and print face server.
SYNOPSIS
faces [ -A ] [ -B soundfile ] [ -C audiocmd ] [ -H host-
name ] [ -M ] [ -P printer ] [ -S spooldir ] [ -U ] [ -a ]
[ -b background ] [ -bg color ] [ -c columns ] [ -d dis-
play ] [ -e program ] [ -f facedir ] [ -fg color ] [ -fn
font ] [ -g geometry ] [ -h height ] [ -iconic ] [ -i ] [
-l label ] [ -n ] [ -p period ] [ -rv ] [ -s spoolfile ] [
-t ] [ -u ] [ -v ] [ -w width ] [ -Wi ] [ -Wp x y ] [ -WP
x y ]
DESCRIPTION
Faces is a window based tool for visual monitoring lists.
Typically it is used to monitor mail, print queues or
users on a system. It contains graphical interfaces for
NeWS, SunView, XView and X11. It has five different modes
of operation:
The default (no -a, -H, -P or -e arguments) will monitor
for new mail. By default, only the last ten messages are
displayed. Using the left mouse button it is possible to
toggle the text in the faces window. This will either be
the username or the time the mail message arrived. You can
clear this area to the background pattern by hitting the
Delete key (but see below, under set button1clear). The
icon shows the image of the last message to arrive.
The second choice (-a) is to monitor the whole of a mail
file. The open window will automatically adjust its size
to correctly show the face icons. The open window options
are the username or the timestamp and number of message
from that user. The icon will display the image of the
last message, and a count of the total number of messages
in the spool file or mail folder.
The third option (-P) allows this program to monitor a
given print queue. This will generate a single face icon
showing the job at the top of the print queue, and the
text message will display the printer name plus the number
of jobs to be printed. Opening the window will show images
of all the jobs in the queue. The text on each image can
be toggled, choices being the owner's name and the size of
the job in bytes.
With the fourth mode (-H), you can monitor who is logged
in a machine. For each user, a face image is displayed.
Text can be either the username or the time they logged
on. The iconic form displays the total number of users.
Finally you can specify a program or shell script to run
(-e). The standard output from this program will be read
by the faces program, and the appropriate faces displayed
using the information provided. The format of this face
information is given in the faces manual page.
There are special displays for no mail, no faces found, no
print jobs, no paper in the printer, and no users logged
into a machine.
OPTIONS
-A Enable audio support (where applicable).
-B soundfile
The name of the sound file to play instead of
making the bell sound. Audio support has to be
enabled.
-C audiocmd An alternative command to use to play the
audio files. Audio support has be be enabled.
-H hostname Name of the machine to monitor. Faces will be
displayed for each user logged in. Note that
on some systems, the -ut option should be used
with the xterm program, if you wish to prevent
each xterm showing as a separate user.
-M Used when the user is using a mail reader
which is capable of shrinking the mail
spoolfile (Elm and MH mail being two such
examples) and the default mail monitoring
facility within faces adjusts accordingly.
-P printer Printer name to monitor. If this and a mail
spool file are given with the -s option, faces
will monitor the print queue.
-S spooldir Specify an alternate mail spool directory. The
folder that will be monitored will then be
spooldir/username where username is the name
of the user currently logged in.
-U Automatically send mail to a special mail
alias, to update the faces database when a new
X-Face: record is read. By default this spe-
cial alias is facemaker. This should be
aliased (see aliases(7)) to:
facemaker: "|/usr/local/bin/face_update"
By default the face_update shell script will
not overwriting existing ikons in the faces
database. Overwriting will take place if the
-w option is specified. You should also note
that the installation of this mail alias is
not done automatically, as this might be con-
sidered a security risk on some systems.
-a Monitor the whole of the specified mail file.
The icon and open window display the appropri-
ate faces, and dynamically change size as a
new check is made and if the mail file has
altered size.
-b background
Sun icon or X11 bitmap file containing an
alternate background pattern. The default is
root grey.
-bg color Used with the X11 variant of faces to pick the
background pixel color.
-c columns Number of columns of face images in each row.
By default this is 10.
-d display Used with the X11 variant of faces to give the
display name.
-e program Name of the user program to run. This program
or shell script will generate lines which the
faces program will read, and then display the
appropriate face images. The format of these
input records is described in a later section.
-f facepath If specified, this is a colon-separated list
of paths to be searched for face images. A
null entry in the path will be replaced by the
compiled in default face directory. If not
specified, the directories specified by the
FACEPATH environment variable will be used.
If there is no FACEPATH environment variable,
the default face directory will be searched.
The default face directory is normally
/usr/local/faces. Note that in previous ver-
sions of faces, a -f option added the direc-
tory to the search path, which already con-
sisted of the system default faces. Using the
-f option now, supercedes the system default
faces, and you must include a trailing colon
in the list of paths, in order to have them
included.
-fg color Used with the X11 variant of faces to pick the
foreground pixel color.
-fn font Used with the X11 variant of faces to pick
which font to use for displaying face names
and timestamps.
-g geometry Used with the X11 variant of faces to give
geometry information.
-h height The height of each face image in pixels. Note
that this is the height of the area allocated
to each image, and not necessarily the height
of the displayed image inside.
-iconic Start the faces program up in iconic form.
-i Invert the faces images before displaying
them. For use by people who started SunView
with the -i option.
-l label The label to be used in the title line of the
faces window.
-n Do not display the number of messages from
this person. The default is to display, and a
count is shown at the bottom right corner of
the face for this person.
-p period The period in seconds before the mail spool
file or the print queue is scanned again for
new mail. The default is 60 seconds.
-rv For X11, displays the faces in pseudo-reverse
video by reversing the foreground and back-
ground colors.
-s spoolfile
Use an alternate mail spool file to monitor.
The default is /var/spool/mail/username where
username is the name of the user currently
logged in.
-t Do not display a timestamp of the last message
from this person. The default is to display,
and a timestamp is shown at the bottom left
corner of the face for this person.
-u Do not display the username on the face icon.
The default is to display, and the username
will appear over the face icon, when the win-
dow is opened.
-v Print the version number of this release of
the faces program.
-w width The width of each face image in pixels. Note
that this is the width of the area allocated
to each image, and not necessarily the width
of the displayed image inside.
-Wi Start the faces program up in iconic form.
SunView automatically uses this flag, but the
NeWS version will also.
-Wp x y Start the open window position at x y
-WP x y Start the icon position at x y
AUDIO SUPPORT
Faces is capable of playing sounds for each user when mon-
itoring for new mail. Audio support needs to be enabled,
and there must be a face.au file present for that user
(see FACE FORMATS below). A special command is used to
play the sounds. This can be overridden by a command line
option or an X resource.
FACE FORMATS
There is a special faces directory containing a multi-
level hierarchy, which by default is /usr/local/faces.
The first few levels are the machine name, where each part
of the machine name is at a separate level. One level
below this is the user name, and one level below that is
the actual face image, which can be stored in four for-
mats. If the file is named 48x48x1 then it is a Blit
ikon, if it is called sun.icon then the image is stored in
Sun icon format, if the file is named face.xbm then it is
an X11 xbm formatted image, and if the file is called
face.ps then it contains executable NeWS code. Multiple
formats can be stored in the same username directory, and
the one used will depend upon which graphics interface is
currently being used.
For example, the face.xbm file for user joe at host
machine.att.com would be stored in the hierarchy:
/com/att/machine/joe/face.xbm
It is also possible to store audio files in the faces
directory. These files are called face.au, and should be
stored under the appropriate user directory.
To access the face for the mail name machine.dom.ain!uid
take the result of the first successful open from the fol-
lowing list of files (where $DIR represents iteration over
the list of directories in FACEPATH):
$DIR/ain/dom/machine/uid/iconname
$DIR/ain/dom/uid/iconname
$DIR/ain/uid/iconname
$DIR/MISC/uid/iconname
$DIR/ain/dom/machine/unknown/iconname
$DIR/ain/dom/unknown/iconname
$DIR/ain/unknown/iconname
$DIR/MISC/unknown/iconname
If the -f argument is specified the given directory is
searched instead of /usr/local/faces. The iconname above,
consists of the following choices, in the given order:
NeWS - face.ps, sun.icon, 48x48x1, face.xbm
SunView - sun.icon, 48x48x1, face.xbm
X11 - face.xbm, sun.icon, 48x48x1
Domain names are now fully supported. For example, if mail
arrives from foo@a.b.c then faces will use the directories
c/b/a, c/b and c for the machine name. The directory MISC
hold faces for generic users such as root and uucp. If
the faces directory hierarchy is not found, then a blank
face image will be used.
Faces information is administered by a pair of ASCII files
in the faces directory that associate related machines and
faces. The machine table machine.tab attaches machines to
communities; the line
stard=sunaus
puts the machine stard in community sunaus. The machine
table may be used to alias entire communities; the line
wseng.sun.com=eng.sun.com
will cause the wseng.sun.com domain to be mapped to the
eng.sun.com community. The people table associates a com-
munity/alias pair, with a real username.
sunaus/rburridge=richb
causes the alias rburridge to be translated into the real
username richb for the community sunaus
Note that you still need to use mailtool or some other
mail reading utility to actually read the mail that this
program monitors; faces simply displays who the mail is
from.
When new mail arrives, faces will beep and flash appropri-
ately, depending upon the set parameters in the user's
faces startup file. This is looked for in the user's home
directory; first the file .facesrc is tried, and if that
file is not found, .mailrc is looked for. The file, if
found, will be examined for lines in the following form:
set bell = number
Give the number of times faces will ring the bell
when new mail arrives.
set flash = number
Give the number of times faces will flash the win-
dow when new mail arrives.
set raise
faces will raise the window when new mail arrives.
set lower
faces will lower the window when there is no mail
left in the monitored spoolfile.
set button1clear
For those who liked the behaviour of previous ver-
sions of faces, this causes button 1 to clear the
window (like typing Delete). The ``toggling''
function of button 1 is moved to button 2 if this
option is set. If you are using the X11 version,
these parameters may be set via your X resources
rather than the faces startup file. See the X
DEFAULTS section for more details.
If you are using the NeWS version and creating face images
of the face.ps form, then the following points should be
noted: All graphics operations should be performed on the
unit square; and the final image will be translated to a
64 x 64 square image at the appropriate position in the
faces display.
If you are using the -e option, then the user program or
shell script needs to generate a set of records which are
interpreted by the faces program. The first record should
be in the following fixed format, beginning at column 1:
Cols=mm Rows=nn
where mm is the size in columns for the faces window and
icon, and nn is the size in rows. A window will be gener-
ated with these dimensions.
This record is followed by the face information records.
These records can have upto six fields, each one TAB sepa-
rated. As well as providing the username and hostname,
there are four other fields which can be filled in, which
denote what is displayed on the left or the right sides of
the bottom area of each face image in the normal display
and the alternate display (normally selectable by clicking
the left mouse button).
The fields are:
username
hostname
normal left
normal right
alternate left
alternate right
Any of these fields may be left blank. There are also four
special usernames, which will display the appropriate
standard icons. These are NOMAIL, NOPAPER, NOPRINT and
NOUSERS.
There can also be one optional information record for the
faces icon display. This uses the first four of these
fields, and if this record is present, it should be before
the Cols record. If not present, then the icon will con-
tain the same display and text as the last window unforma-
tion record.
XFACE SUPPORT
Faces is capable of recognising a compressed face image in
the mail message header. It uses special X-Face: lines to
do this. It is very simple to add your compressed face
image to a mail header.
The following method works for Berkeley Mail (aka
/usr/ucb/mail), Open Windows mailtool and mush. It proba-
bly works for others too.
It is suggested that each user store the compressed image
(generated by compface ) in a file called .face in their
home directory. See the compface manual page for more
information on how to generate the compressed face image.
The first line should have the X-Face: prepended; second
and subsequent lines should have a preceding tab, and
there should be a trailing blank line. Here is a typical
.face file:
X-Face: *7O.<19S{MCsaxxe=iCc*y5!i:>e,K40m^btp"<`~gNx5>o?eJMzUng=j]%KybY
VaZ/3a4pD%#rGu7D<M$.TDpaDN8#8eJC&^^&Mr]@~}Pa,*F-ePrMg5.}e,,bu
qROdT{Vzn{!ouXy.&*#V#Q&Zf7a8lX2Kb}"$UT^VhnsJ?){wFU5r+,duO>4@L
Each user should add the line:
set sendmail=/usr/local/bin/faces.sendmail
to their ~/.mailrc file, where /usr/local/bin is the
directory where your faces binaries were installed.
A similar method exists with the Elm mailer. The user's
compressed face image should be setup in a ~/.face file,
but without the initial "X-Face:", and leading spaces
removed from each line. There is also no trailing blank
line. Here's an example:
*7O.<19S{MCsaxxe=iCc*y5!i:>e,K40m^btp"<`~gNx5>o?eJMzUng=j]%KybY
VaZ/3a4pD%#rGu7D<M$.TDpaDN8#8eJC&^^&Mr]@~}Pa,*F-ePrMg5.}e,,bu
qROdT{Vzn{!ouXy.&*#V#Q&Zf7a8lX2Kb}"$UT^VhnsJ?){wFU5r+,duO>4@L
To automatically include this into a header into an Elm
mail message, just add the following line to your
.elm/elmheaders file:
X-Face: `cat $HOME/.face`
X DEFAULTS
The X11 and XView versions of faces uses the following
resources:
audioCommand
The name of the command to use to play audio files.
audioSupport
Enable audio support (where applicable).
background
The window's background color. The default value is
white.
backgroundPixmap
The pixel map to use for tiling the background of the
faces window or icon. The default value is the
default X11 root background pattern.
bell
The number of times to ring the bell when new mail
arrives.
bellAudioFile
The name of an audio file to play instead of sounding
the bell.
button1clear
A boolean (default: false), if set, causes faces to
revert to the old button behavior, namely, button 1
clears the window, and button two toggles the display.
displayHostname
A boolean (default: false), if set, causes faces to
display the hostname rather than the username if the
icon represents a username rather than a hostname.
flash
Give the number of times to flash the window when new
mail arrives.
font
The text font. The default value is fixed.
foreground
The foreground color. The default value is black.
geometry (class Geometry)
The size and location of the faces window.
iconGeometry (class Geometry)
The size and location of the faces window.
raise
A boolean (default: false), if true caused to raise
it's window when new mail arrives.
lower
A boolean (default: false), if true causes to lower
it's window when there is no mail left in the moni-
tored spoolfile.
SEE ALSO
mail(1) elm(1) mush(1) aliases(7).
FILES
/var/spool/mail directory for system mail-
boxes
$HOME/.facesrc faces startup file
$HOME/.mailrc mail startup file (examined
if .facesrc doesn't exist)
/usr/local/faces main directory containing
the face icons.
/usr/local/faces/people.tab people/file equivalences
/usr/local/faces/machine.tab machine/community equiva-
lences
ENVIRONMENT VARIABLES
DISPLAY The X11 server to be used by the XView or
X11 faces program to display the face icons
on.
FACEDEFAULTS Name of the file containing the X resource
information for faces.
FACEPATH A colon separated list of directory paths
to search for machine/user face icons.
HOME The home directory of the current user.
Used to locate the .facesrc or .mailrc
file.
MAIL The complete pathname of the mail spool
file to monitor.
WINDOW_PARENT Used to verify that the program is execut-
ing under a valid SunView environment.
HISTORY
faces is based on the Bell Labs Edition 8 program vis-
mon(9). This program is not derived from vismon source.
BUGS
The machine and people table lookup is hopelessly ineffi-
cient and will need to be improved as the faces database
gets larger.
AUTHOR
Rich Burridge, Internet: richb@stard.Eng.Sun.COM
PHONE: +61 2 413 2666 ACSnet: richb@sunaus.sun.oz.au