PACKAGE(1)

NAME
package - register package user via mailagent

SYNOPSIS
package address system version patchlevel [ mailpatches | notifypatches ]

DESCRIPTION
This command is not intended to be run directly by a user, but may appear in any mail whose subject is set to Command. Such mail will be processed by the mailagent(1), which will extract all lines beginning with @SH, which may specify this command. The mailagent first sets environment variables that will be used by the command.

Package is used to notify the author of a package about its users. It is normally generated automatically by the MailAuthor.U unit when the user runs Configure.

If the patchlevel specified is not the latest for that system and version, mail is immediately sent suggesting that they upgrade and remindng them how to request the latest patches.

The final parameter, if included may be set to mailpatches to specify that the user would like to have future patches mailed to them, or notifypatches to specify that a mail notification of future patches should be sent, rather than the entire patch.

The user's address and notification request are saved in the file users in the package's directory.

Package performs an approximate address match in order to avoid duplicate entries. Whenever this elimination occurs, a warning message is issued in the logfile. Two addresses will be said equivalent if one of them has an added machine name or if they are really equal. Therefore, the following addresses are equivalent:

ram@acri.fr
ram@main.acri.fr

whereas the following two are not equivalent, unfortunately:

ram@acri.acri.fr
ram@main.acri.fr

When a user is asking to be left alone, it is important to let him know if the request failed, because he will be annoyed when the next set of patches is issued and he still gets them despite his previous request. Therefore, if no approximate match occurs, a warning message is sent back, with a list of addresses that are close to his own e-mail address, but not equivalent. Fortunately, the following addresses are considered close:

ram@acri.fr
ram@somewhere.com
raphael@main.acri.fr
manfredi@acri.acri.fr

because they either have the same login (important when someone changes company) or share the same domain or sub-domain part.

In order to edit the users file, the edusers script should be used. For one thing, it will let you edit the users file from whatever package you name in the command line, but it will also properly lock the file so that the execution of package will stall for the duration of the manual edition (provided you have a strict locking policy defined in your ~/.mailagent configuration file).

FORWARDING
Package supports command forwarding as described in the mailhelp(1) page.

FILES
~/.mailagent
    configuration file for mailagent.
System/users
    list of users of that system.
    This file consists of single line records, one for each registered user. Each record consists of three tab-separated fields.

    The first field indicates the level of updates requested by the user by a single letter as follows:
    M   Mail future patches directly to the user when they are issued.
    N   Notify the user of future patches.
    U   The users chose to let the author know that they have tried the program, but does not wish to know about future updates.
    L   The user is no longer interested in the program and wants to be left alone.

    The second field is their last notified patch level, or a dash (-) if it is not known.

    The third field is the user's Email address.
Log/agentlog
    mailagent's log file

AUTHORS
Graham Stoney <greyham@research.canon.oz.au>
Raphael Manfredi <Raphael_Manfredi@pobox.com> (minor enhancements)

SEE ALSO
edusers(1), mailagent(1), metaconfig(1).