Source Code

Required dependencies

The Citadel system relies on the following libraries in order to provide its full set of functionality. (If you are using pre-built packages, or the Easy Install system, these libraries will be brought in for you automatically.)

  • Berkeley DB is used as the system's primary data store
  • libical for calendar services
  • libSieve for server-side sorting and filtering of incoming email
  • The Expat XML parser to handle RSS feeds, Jabber/XMPP service, etc.
  • libcurl for RSS and OpenID support

Optional dependencies

These will be used if they are present, otherwise the Citadel system will still build but with some minor features missing.

  • OpenSSL for SSL/TLS encrypted protocols
  • Shared Mime Info Citadel can utilize shared mimeinfo to identify filetypes.
  • WebCit can use Icons named to follow the Freedesktop icon Specification as they're used by gnome, kde and so on. For example /usr/share/icons/gnome/24×24/mimetypes could be symlinked into your webcit/static/icons directory so you could use them.
  • mod_auth_citadel if you want to integrate other web-applications running in apache with your citadel accounts
  • SELinux integration for the Citadel Services: http://sourceforge.net/projects/citadelselinux/ contributed by Stuart Cianos

libcitadel

http://easyinstall.citadel.org/libcitadel-7.72.tar.gz

libcitadel contains common code which is shared across all of the components which make up the Citadel system. Its installation is mandatory. Please install it first. (If you are using pre-built packages, or the Easy Install system, this library will be brought in for you automatically.)

Citadel server

http://easyinstall.citadel.org/citadel-7.72.tar.gz

This is the most recent stable version of Citadel. This version is known to work on recent versions of Linux, FreeBSD and Solaris; it should work on other systems as well. See howto compile against EasyInstall in case of you wanting to temporarily replace your citserver. It contains both the server and a text-mode client. You can build an entire working system with this, or you can just build the client and connect to some other existing system. It also provides connectivity through:

  • SMTP (Port 25 by default)
  • POP3 (Port 110 by default; SSL Enabled on port 995)
  • IMAP (Port 143 by default; SSL Enabled on port 993)
  • Citadel (Port 504; used by dedicated Citadel clients)
  • SMTP-MSA (Port 587; requires SMTP authentication)
  • ManageSieve (Port 2020; edit your mail filtering scripts with your favorite GUI client)
  • Postfix TCP dictionary (if you have an upstream mail hub running Postfix, it can use this service to verify valid email addresses on your Citadel)
  • lmtp.socket (Local mail transport, for use with an external MTA if for some reason you do not wish to use Citadel's built in SMTP service)
  • lmtp-unfiltered.socket (same as above, but without spam filtering)
  • citadel.socket (Citadel protocol)

WebCit

http://easyinstall.citadel.org/webcit-7.72.tar.gz

WebCit provides an elegant, modern web user interface to Citadel, allowing users to access (and privileged users to administer) the system from any web browser. It also allows GroupDAV and Webcal (DAV) clients to connect. WebCit is installed in addition to a working Citadel server; it will not run by itself and it will not run over a non-Citadel server. In almost all cases you will want to run both services (although you can run them on different hosts if you want to).

Third-party contributions

Here are add-ons and other programs provided by Citadel users.

Source code via SVN

Developers can also download the current development sources using anonymous SVN. If you intend to do development work on the Citadel code then you should work with the SVN version, but do not attempt to run a production system on unreleased code.

 
 
UP
© 2010 Uncensored Communications Group
UP