FACE(6) FACE(6)
NAME
face - face files
DESCRIPTION
The directory /lib/face contains a hierarchy of images of
people. In that directory are subdirectories named by the
sizes of the corresponding image files: 48x48x1 (48 by 48
pixels, one bit per pixel); 48x48x2 (48 by 48 pixels, two
bits per pixel); 512x512x8 (512 by 512 pixels, eight bits
per pixel); 512x512x24 (512 by 512 pixels, twenty-four bits
per pixel (3 times 8 bits per color)). The large files
serve no special purpose; they are stored either as bitmaps
(see bitmap(6)) or as picture files (see picfile(9.6). The
small files are the `icons' displayed by seemail (see
mail(1)); their format is special.
Icons are stored as text, one line of the file to one scan
line of display. Each line is divided into 8-bit, 16-bit,
or 32-bit big-endian words, stored as a list of comma-
separated hexadecimal C constants, such as:
0x9200, 0x1bb0, 0x003e,
This odd format is historical and the programs that read it
are somewhat forgiving about blanks and the need for commas.
The files /lib/face/*/.dict hold a correspondence between
users at machines and face files. The format is
machine/user directory/file.ver
The machine is the domain name of the machine sending the
message, and user the name of the user sending it, as
recorded in /sys/log/mail. The directory is a further sub-
directory of (say) /lib/face/48x48x1, named by a single let-
ter corresponding to the first character of the user names.
The file is the name of the file, typically but not always
the user name, and ver is a number to distinguish different
images, for example to distinguish the image for Bill Gates
from the image for Bill Joy, both of which might otherwise
be called b/bill. For example, Bill Gates might be repre-
sented by the line
microsoft.com/bill b/bill.1
If multiple entries exist for a user in the various .dict
files, seemail chooses the highest pixel size less than or
equal to that of the display on which it is running.
Finally, or rather firstly, the file /lib/face/.machinelist
Page 1 Plan 9 (printed 11/9/25)
FACE(6) FACE(6)
contains a list of machine/domain pairs, one per line, to
map any of a set of machines to a single domain name to be
looked up in the .dict files. The machine name may be a
regular expression, so for example the entry
.*research.att.com astro
maps any of the machines in AT&T Research into the shorthand
name astro, which then appears as a domain name in the .dict
files.
SEE ALSO
mail(1), tweak(1), bitmap(6)
Page 2 Plan 9 (printed 11/9/25)