It uses something similar to the MH format, where each message is contained in its own file, plus a database. Maildir, unless I'm mistaken, is still a single file per mailbox.

Cyrus is just the IMAP server. It does not replace your MTA (sendmail, qmail, postfix, exim, etc.). It does not write data into home directories, as all messages are stored in Cyrus's own store, but you can specify the directory that's in (so you could put it in /home/cyrus if you wanted), and you can actually have multiple stores, but I've never had a server quite large enough to bother dealing with that.

It doesn't work with procmail by default (in fact, I'll bet in your case it will take procmail's place, since you're probably using procmail as your MDA). However, it provides a facility called sieve that performs the same type of filtering. In addition, you can usually set up your MTA to deliver directly into specific mailboxes based on extended email addresses. For example, the address [email protected] could be extended to [email protected] to have mail delivered directly to user's ``box'' maildrop, assuming that the permissions were set up on it correctly. Which brings me to the fact that you can set permissions on your mailboxes so that other IMAP users can use them, including mailboxes not owned by any user that can be used as bulletin boards.

It is, by far, IMHO, the best IMAP server out there, and has been since it's introduction. It is somewhat complicated to set up, especially initial user administration (since Cyrus users are not necessarily tied to Unix users, which is nice, since that means fewer potential security holes), but it's worth it.
_________________________
Bitt Faulk