From Cyrus

Jump to: navigation,


[Page Tools]


Contribute Financially

If you wish to provide financial support to the Cyrus Project, send a check payable to Carnegie Mellon University to:

Project Cyrus
Computing Services
Carnegie Mellon University
5000 Forbes Ave
Pittsburgh, PA 15213

Website Content Contributions

The bulk of this site has been created using MediaWiki software to easily allow for external contributions. If you're already a registered user, you can begin editing content now. If you're not, please register now.

Contribute Code

The Cyrus Team always welcomes patches sent to the appropriate Cyrus Mailing Lists

If you want to get involved, you'll want to read about #Anonymous GIT Access and #Cyrus Bugzilla.


  • Internal Cyrus documentation moved online ( doc/internal from Cyrus IMAPd), including stuff like discussion of the CyrusSkiplist format, CyrusImapdMailbox Format and so on...
  • Notes about autoconf/automake versions

Anonymous GIT Access

This file is for those who are reading Cyrus sources via anonymous GIT, or those who would like to. If you're someone who would like to work with the source code and get more frequent updates, keeping in mind that we take some liberties with proper GIT use, you might want to get Cyrus via anonymous GIT.

If You Are Not A Programmer
If you're not a programmer, please don't do this. If you're not at least a little experienced with C, configure, and IMAP, please stick with the tarball releases at

To browse the sources, please visit

To obtain a local working copy of the sources:

git clone git://

You will need autoconf, yacc (bison) and lex (flex) to build GIT from the repository because we don't keep generated files in the repository, along with the usual tools to build Cyrus (a compiler, a Unix box, a network.) To create the configure script, do the following:

aclocal -I cmulocal

Write access can be given out as well, please contact the Cyrus Development mailing list to indicate your interest in continuously contributing to Cyrus IMAP.

Please note that the version in the repository is not the version we are running. We have a seperate system that resembles version control for releases of software on the Andrew system, and sometimes changes don't get propagated back to GIT.

What is here is supposed to be stable. It's supposed to work, and compile, and not have amazingly broken changes that can't possibly work. But that may not be the case --and since you decided to use the sources in GIT, you shouldn't complain when something doesn't work. You should submit a patch.

There is no warranty on the Cyrus software. There is no warranty on anything in GIT, and even less of a guarantee of it working. (There. You've been warned.)

Please refer to Sending Feedback if you would like to submit a bug, feature request or (best of all) patch.

Thanks to Ryan Troll for putting the time in to make the CVS server work and actually documenting it (this is now a legacy situation, but many thanks go out to Ryan nonetheless!).

Thanks to Bron Gondwana and Jeroen van Meeuwen for converting the three related CVS repositories into one GIT repository.