[Freedombox-discuss] [GSoC21] Interest in FreedomBox email project

Steven Chamberlain steven at pyro.eu.org
Sun Apr 11 21:29:39 BST 2021

hjenkins wrote:
> >Do you mean, using PostgreSQL to store configuration (e.g. the lists of
> >domains and email accounts on the system)?
> Yes. Since it needs some database, MariaDB or whatever; having a choice
> would be good.

Do you think a DBMS like MariaDB/PostgreSQL is definitely needed?*

In traditional UNIX, the accounts database on most systems is the text
file /etc/passwd, and this seems performant enough even with 500 users
or so, and therefore most people never bother configuring LDAP or
anything else (some alternatives are mentioned in nsswitch.conf(5)).

> There already exist open-source conversion tools, such that you can export
> an existing dataset and import it to a different backend in another format.

I would mention that Postfix has the interesting postmap(1) utility to
"compile" text files of key-value pairs into BerkeleyDB-like databases
with indices. That still may be not worth doing unless you have 50
users or more.

Exim has plenty of options for key-value databases too. Text files are
the most popular form, but are sometimes noticably slow (you can
maybe see this if you run `exim -qf -d` when there many messages in the
queue, although network latencies are usually much bigger).

* actually, if we want SpamAssassin to do Bayesian filtering, then a
DBMS might be needed for that anyway, due to the size of the dataset
and the need for fast indices when querying it.

Maybe there good are reasons to use a DBMS other than performance?

Fioddor Superconcentrado wrote:
> Formally, our target are home servers (family and friends). Small
> organisations are benefiting from FreedomBox, but if requirements are
> incompatible, go for the small SoC computers.

I would like to make home servers the target of my proposal. But
FreedomBox can (already) offer benefits to organisations with more

* The ability to migrate easily.
  Many commercial offerings set arbitrary limits on e.g. the number of
  accounts or set their pricing based on those, so they also make it
  deliberately hard to migrate to something else.
  If an organisation "outgrows" FreedomBox, they should be able to copy
  their mailboxes and configuration to another system, without the
  inconvenience of all users having to reconfigure their email software,
  and we should even provide documentation on how to do that.
  (This way, we may get fewer bug reports that email on the FreedomBox
  is too slow with 1000 users :) ).

* The ability to integrate.
  If a FreedomBox administrator needs a bigger email server, we should
  not prevent them from continuing to administer user accounts on the
  FreedomBox whilst actually hosting email on a separate server.
  (This could be an argument to use MariaDB/PostgreSQL for that, but it
  should not be the only reason. Maybe it makes our testing easier.)
  The standard / minimal working email setup should hopefully be clear
  from our specification, so that an administrator can replicate it, and
  make informed choices on e.g. using a different MTA for performance
  An application like RoundCube doesn't really care if mails are stored
  locally or anywhere else, that just needs to be configurable.

Kind regards,
Steven Chamberlain
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 648 bytes
Desc: Digital signature
URL: <http://alioth-lists.debian.net/pipermail/freedombox-discuss/attachments/20210411/fb1f82e6/attachment.sig>

More information about the Freedombox-discuss mailing list