Package: opendmarc
Version: 1.4.2-5
Severity: wishlist

Dear Maintainer,

Installing opendmarc pulls several dozen Mio worth of dependencies, a database client in particular.

This database client, and almost all of the other heavy dependencies as well, are only needed for the regular sending of aggregate reporting to the mail servers that have been the victim of attempted spoofing attempts. This is a functionality that is potentially of interest to very few people.

In comparison, the milter part of opendmarc actually needs very little. The two binaries opendmarc and opendmarc-check, relying on the libopendmarc and libspf shared libraries, implement the part of the DMARC protocol needed to decide whether to reject a spoofed mail.

For this reason, it would be desirable to split the two functionalities into two distinct packages : opendmarc, that would only contain the milter service, and opendmarc-reporter, that would ship the utilities needed for the reporting. Only the second package would depend on the database client and would need debconf during configuration.

This split is actually quite easy to implement. It turns out that the configuration option "--with-sql-backend" has no effect at all on the produced binaries (only on the perl scripts), so the rules file can stay almost unchanged. It is simply a matter of distributing each executable (and their associated manpage) in the relevant package. I have implemented this split in https://salsa.debian.org/ricorambo/opendmarc, and I have tested it (only installing and using the milter part).

If you have the time, would you consider reviewing those changes and eventually integrating them ? I am aware that it is not going to be possible for trixie.

Do not hesitate to ask if anything I've done is unclear.

Best,

Aymeric

-- System Information:
Debian Release: 12.10
 APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.1.0-33-amd64 (SMP w/16 CPU threads; PREEMPT)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Reply via email to