SirAdmin … a GUI replacement for cyradm

Update

I've decided to move this over to my Google Sites pages, in the hope that someone will pick up the source code and run with it, as I have no real desire to work on the code anymore, but I regularly get emails from people who find this to be a useful tool.

You can get the application here: SirAdmin.app.zip

You can get the source code here: SirAdmin-source.zip

I initially wrote SirAdmin as a diagnostic tool, so that when users reported problems with certain mailboxes, my IT support staff who were not comfortable with the command line interface of cyradm could assign themselves an ACL to view such mailboxes in their own email client in order to quickly diagnose whether the reported problem was server-side or client-side.

However, it quickly became apparent that the usefuleness of this app extended beyond that, in that it allows non-admin users to share mailboxes with one another.

If you’re not familiar with cyradm, it is a command line tool that ships with the Cyrus IMAP server. You can see the man page for it here at developer.apple.com, and O’Reilly have published Chapter 9: Cyrus System Administration for free from their book Managing IMAP.

So my app SirAdmin is essentially a GUI replacement for cyradm, in that it allows you to locally or remotely administer your Cyrus IMAP server. I’ve tested it against the Cyrus server from Mac OS X Server 10.3 and 10.4, as well as Cyrus running on RedHat. It isn’t merely a wrapper around the cyradm code by the way. All the bugs are my own… :)

It does require OS X 10.4 on the client, where you are running the application, although you can talk to 10.3 IMAP servers

It allows you to create, rename, delete and reconstruct mailboxes, and also allows you to set Access Control Lists for IMAP mailboxes. 

This is perhaps the most useful function, in that as an admin you can create globally shared mailboxes, or as a user you can choose to share out parts of your IMAP mailbox hierarchy with other users. 

It also gives you an easy interface to be able to configure “plus addressing”, where you can send emails topostuser+aSharedMailbox@your.mail.doman and have them be delivered directly to a particular mailbox, rather than to the inbox of a particular user.

Here are some screenshots to illustrate what you can do:

It's still a work in development, the obviously missing features are:

It could also do with more diagnostic info, like number of messages in a mailbox, last message received, view message excerpts, etc.

but it currently does some nifty stuff like:

Thanks go out to: