Michael,

> I am the maintainer for the FreeBsd SA port and about to release patches
> that change the default state directory from /var/lib/spamassassin to
> /usr/local/lib/spamassassin
> This makes it more consistent with FBSD's directory structure (they
> don't use /var/lib for anything).

I'm not sure if /usr/local/lib/spamassassin is any better than the
unusual /var/lib/spamassassin. The 'man 7 hier' suggests the lib/
is mainly for shared libraries and ar libraries, and rules files
do not fit well into such category.

If updated rules are supposed to go into /var, then perhaps the place
for them is /var/db/spamassassin -- but I guess not: /var is for
'multi-purpose log, temporary, transient, and spool files');

Or maybe /usr/local/share/spamassassin-var ('man 7 hier' suggests
that architecture-independent files, possibly NFS-mounted, belong
under /usr/local/share/, but /usr/local/share/spamassassin is
unfortunately already used for another purpose).

Perhaps the closest thing is /usr/local/libdata/, intended
for 'miscellaneous utility data files'.

The change will cause some confusion with current practices,
with talks on the mailing list, and a mismatch in documentation.

If doing the change, don't forget to patch the default for
LOCALSTATEDIR in Makefile.PL (which ends up as LOCAL_STATE_DIR
option default). There is a corresponding default in amavisd-new
(but is only needed with versions of SA older than 3.1.5).

> The reason its important, is if you do use something like 'sa-update
> --updatedir /usr/local/share/spamassassin  or ../etc/mail/spamassassin,
> THREE sets of plugins are loaded:

Don't assume anybody is using --updatedir /usr/local/share/spamassassin.
It is plain wrong, and this was discussed when sa-update became popular,
both on the SA-user list a number of times, as well as on the amavis-user
ML, so I hope nobody does it anymore. It is a waste of effort catering
for such a misuse.

  Mark

Reply via email to