There's a great deal of flexibility in how SpamAssassin and Procmail are used. In order to best understand your options, you must understand a little of how these programs work.
When delivering mail, the mail server (postfix) checks to see if you have a file called .forward in your home directory. If you have one, it gets its delivery instructions from there (more on that later). If you don't, it runs your mail through procmail.
In the absence of a .forward file, postfix runs procmail with no options (this is important). When procmail is run with no options, it first looks for commands in the file /etc/procmailrc and then in ~/.procmailrc.
First, procmail runs the mail through the commands in /etc/procmailrc. Here, this file contains the following commands:
:0fw | /usr/bin/spamcThis "filters" the mail throught SA. The mail is sent in and comes modified to reflect the results of the scan. This probably just means that a few headers are added.
If it exists, procmail continues to process the mail through your personal procmail config file, .procmailrc. You can put commands here to direct mail flagged as spam to a special mailbox that you check only occasionally. (DO NOT have mail automatically deleted. SpamAssassin DOES make mistakes.)
All mail will be forwarded to this address. Neither procmail nor SpamAssassin will ever be invoked. This is useful if you have multiple accounts and would like to centralize all your mail.
This is exactly the same as the default behavior. All mail is "piped" (hence the "|") through procmail. It's provided here only as an example.
This tells procmail to use the file /home/einstein/username/.procmailrc and only that file. The mail will not be passed through SpamAssassin unless you do it yourself from within that file. This is useful if you don't want to invoke SpamAssassin, either to spare the server the work, or because you intend to invoke it yourself with different options. Obviously, you must use your home directory.
This just delivers the mail, with no procmail or SpamAssassin. Again, replace "username" with your real user name.
MAILDIR=$HOME/mail LOGFILE=$HOME/mail/log :0: * ^X-Spam-Status: Yes spam