[Kolab-devel] Debian Packages for Kolab

Paul Boddie paul at boddie.org.uk
Thu Oct 24 14:20:57 CEST 2013


Hello,

I recently shared some thoughts on the Kolab packages with Torsten Grote and 
Hugo Roy (and also in a blog article), and I thought I should post some of 
them here for further discussion.

First of all, credit is due to Paul Klos for getting the packages into a form 
that allowed me (and others) to try them out. I doubt that I would have been 
so motivated to try Kolab if the software hadn't been available in packaged 
form.

Now, I am no Debian packaging expert, but a few things occurred to me and I'll 
repeat them below to see what others have to say.

The setup-kolab script should be integrated into package post-installation 
and/or be robust enough to be run several times in potentially different ways. 
Consider the scripts provided with PostgreSQL on Debian for doing 
administration, for example: https://wiki.debian.org/PostgreSql

In other words, setup-kolab shouldn't be a "one shot" program which doesn't 
like being run again, or where it isn't clear what it does if it is run again. 
Although an all-in-one approach to setting stuff up can be beneficial, I think 
it needs to be complemented by approaches that allow people to keep their 
existing configuration. Maybe setup-kolab does this, but I didn't get this 
impression. (I also wonder if a choice of sensible defaults might reduce the 
need for setup-kolab, but I accept that various policy matters have to be 
specified somewhere, and so setup-kolab may not be completely redundant.)

The authentication aspects of Kolab might be better supported using things 
other than passwords where appropriate. I imagine that this can be tricky for 
the Web applications, but for server-side tasks where the administrator has 
root already (and can therefore read and write various configuration files), 
having key-based logins (or even trust-based logins) might be cleaner than 
having passwords in configuration files. Looking at Debian packages with 
similar application architectures might be informative.

On this front, I aim to look a bit more at the other groupware systems 
provided by Debian [*] such as Citadel, SOGo and OpenChange. Other kinds of 
systems are also relevant here because managing credentials is a widespread 
problem. Suggestions are appreciated!

[*] https://wiki.debian.org/Groupware

It's a bit unfortunate that Kolab prefers 389 to other LDAP servers and has 
preferences for other things that effectively make those things unsupported. I 
imagine it could take a lot of work to support everything that could 
potentially support Kolab, but having seen issues with Exim and Postfix, it 
might be nice to allow existing choices to be respected (and also not require 
people to start from scratch). There shouldn't be any reason why installing 
Kolab wouldn't be adding the "icing to the cake" provided by already-installed 
mail, IMAP and LDAP infrastructure, in other words adding the extra facilities 
of Kolab, even if one might insist that only new "instances" (of mailboxes, 
databases and so on) or migrated ones would be usable by Kolab.

Again, the other groupware packages may support choices of dependencies, and 
it will be interesting to see how they manage this. For example, the citadel-
server package configuration mentions the following:

Suggests: postfix | exim4 | citadel-mta | mail-transport-agent

Of course, actually supporting multiple dependency options may require more 
work because it's unlikely that all these things work in the same way and will 
thus need explicit support in Kolab.

Finally, I wonder whether targeting "sid" (unstable) rather than "wheezy" 
(stable) isn't best for packaging work given that the Debian packaging 
community usually prefers this, and also things like the 389 packages are 
already in "sid" but must presumably be backported to "wheezy" to provide 
Kolab packages. Naturally, backported packages can be made available as a 
consequence of the main packaging effort.

Any comments on the above?

Paul


More information about the devel mailing list