bmf is an extremely efficient Bayesian mail filter based on
Paul Graham's article, "A Plan for Spam." It's fast, small,
efficient, and more versatile than other Bayesian filters.
===> The following configuration options are available for bmf-0.9.4_2,1:
DEBUG=off: Build with debugging support
DOCS=on: Build and/or install documentation
MANPAGES=on: Build and/or install manual pages
===> Use 'make config' to modify these settings
=== How to integrate bmf ===
For maildrop(1), use only one of the following examples. The first
sample invokes bmf in its normal mode of operation and the second
invokes bmf as a filter:
### Sample One
# Invoke bmf and use return code to filter spam in one step
exception {
`bmf`
if ( $RETURNCODE == 0 )
to $MAILDIR/spam
}
### Sample Two
# Invoke bmf as a filter
exception {
xfilter "bmf -p"
if (/^X-Spam-Status: Yes/)
to $MAILDIR/spam
}
For procmail(1), use only one of the following samples. SPAM will be
filtered into $MAILDIR/spam. The first sample invokes bmf in its
normal mode of operation and the second invokes bmf as a filter.
### begin sample one ###
# Invoke bmf and use return code to filter spam in one step
:0HB
* ? bmf
| formail -A"X-Spam-Status: Yes, tests=bmf" >>$MAILDIR/spam
### begin sample two ###
# Invoke bmf as a filter
:0 fw
| bmf -p
# Filter spam
:0:
^X-Spam-Status: Yes
$MAILDIR/spam
If you put bmf in your maildrop or procmail scripts as suggested
above, it will always register an email as either spam or non-spam.
To reverse this registration and train bmf, the following mutt macros
may be useful:
macro index \ed "<enter-command>unset wait_key\n<pipe-entry>bmf -S\n<enter-command>set wait_key\n<save-message>=spam\n" "Tags a given message as SPAM"
macro index \et "<pipe-entry>bmf -t\n<enter-command>set wait_key\n" "Tests a given message to see if it is SPAM"
macro index \eu "<pipe-entry>bmf -N\n<enter-command>set wait_key\n<save-message>=inbox\n" "Untags a given message as SPAM"
These will override these commands:
<Esc>d = de-register as non-spam, register as spam, and move to spam folder.
<Esc>t = test for spamicity.
<Esc>u = de-register as spam, register as non-spam, and move to inbox folder.
Please see the ${PREFIX}/share/bmf/README for further details.
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
mail: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* <ashish@FreeBSD.org>
* Aaron Dalton <aaron@FreeBSD.org>
* Adam David <adam@FreeBSD.org>
* Adam McDougall <mcdouga9@egr.msu.edu>
* Adam Weinberger <adamw@FreeBSD.org>
* Ade Lovett <ade@FreeBSD.org>
* Akinori MUSHA aka knu <knu@idaemons.org>
* Alex Deiter <tiamat@komi.mts.ru>
* Alex Dupre <ale@FreeBSD.org>
* Alex Dupre <sysadmin@alexdupre.com>
* Alex Perel <veers@disturbed.net>
(Only the first 15 lines of the commit message are shown above )
mail/bmf: Revert erroneous update
bmf was incorrectly "updated" from 0.9.4 to 0.84 in r483094. The problem is
that 0.9.4 is a newer version than 0.84. According to Repology[1], other
packaging systems got it right. Let's correct the mistake and introduce
version 0.9.4 back into our ports tree.
[1]: https://repology.org/project/bmf/versions
PR: 232493
Submitted by: reg@
Cleanup mail/bmf
- Cleanup MYSQL option: properly declare libmysqlclient dependency,
unbreak with other mysql version/variants
- Respect CC and CFLAGS
- Remove post-patch and simplify with BINARY_ALIAS
- Do not strip binaries twice
- Generate manpages and install them again
PR: 232493
Berkeley DB cleanup, remove versions 4.0 ... 4.7.
- Mk/bsd.database.mk rewrite, new default to db5.
- db6 is eligible by default only if installed on the system.
- Bump PORTREVISION of all ports that directly depend on BerkeleyDB or
where USE_BDB is found in the port's directory
- Patch a few ports such that they will pick up or work with newer
versions.
- Add UPDATING entry
- Drive-by format fix for pks
- Drop BerkeleyDB option from mail/popular for now, requires more work.
- Exp-run logs linked from the PR below.
- Ports that do not build (IGNORE, BROKEN, etc.) have pro-forma changes
for new Berkeley DB, but are untested.
NOTE: please read UPDATING and the Wiki page before proceeding!
Announcement: http://lists.freebsd.org/pipermail/freebsd-ports-announce/2014-August/000090.html
Wiki reference: https://wiki.freebsd.org/Ports/BerkeleyDBCleanup
PR: 192690
Approved by: portmgr (implicit, PORTREVISION bump on unstaged ports)
Convert to new OPTIONS framework.
In the process, this also fixes BDB support, and actually enables
MYSQL support, which as far as I can tell was never actually enabled
in the 9 years this port has been in the tree.
- Add LDFLAGS to CONFIGURE_ENV and MAKE_ENV (as it was done with LDFLAGS)
- Fix all ports that add {CPP,LD}FLAGS to *_ENV to modify flags instead
PR: 157936
Submitted by: myself
Exp-runs by: pav
Approved by: pav
For ports maintained by ports@FreeBSD.org, remove names and/or
e-mail addresses from the pkg-descr file that could reasonably
be mistaken for maintainer contact information in order to avoid
confusion on the part of users looking for support. As a pleasant
side effect this also avoids confusion and/or frustration for people
who are no longer maintaining those ports.
By default, bmf should use the system's db library and not bdb3. Not bumping
portversion because I don't know if .db files are compatible from one lib to
the next (I suspect they're not).
Add bmf: a fast (fastest filter I know of) Bayesian Mail Filter (adaptive
spam filter && has hooks for mutt!). Works well with maildrop, procmail,
and can be integrated with all known mailing list software.