2012-07-08 00:32:30 +02:00
|
|
|
{ stdenv, fetchurl, buildPerlPackage, perl, HTMLParser, NetDNS, NetAddrIP, DBFile
|
2012-10-07 18:55:07 +02:00
|
|
|
, HTTPDate, MailDKIM, LWP, IOSocketSSL, makeWrapper, gnupg1
|
2012-07-08 00:32:30 +02:00
|
|
|
}:
|
|
|
|
|
2012-09-27 15:29:01 +02:00
|
|
|
# TODO: Add the Perl modules ...
|
|
|
|
#
|
|
|
|
# DBI
|
|
|
|
# Encode::Detect
|
|
|
|
# IP::Country::Fast
|
|
|
|
# Mail::SPF
|
|
|
|
# Net::Ident
|
|
|
|
# Razor2::Client::Agent
|
2012-07-08 00:32:30 +02:00
|
|
|
#
|
|
|
|
|
|
|
|
buildPerlPackage rec {
|
|
|
|
name = "SpamAssassin-3.3.2";
|
|
|
|
|
|
|
|
src = fetchurl {
|
|
|
|
url = "http://apache.imsam.info/spamassassin/source/Mail-${name}.tar.bz2";
|
|
|
|
sha256 = "01d2jcpy423zfnhg123wlhzysih1hmb93nxfspiaajzh9r5rn8y7";
|
|
|
|
};
|
|
|
|
|
2012-09-27 15:29:01 +02:00
|
|
|
buildInputs = [ makeWrapper HTMLParser NetDNS NetAddrIP DBFile HTTPDate MailDKIM
|
2012-10-07 18:55:07 +02:00
|
|
|
LWP IOSocketSSL ];
|
2012-07-08 00:32:30 +02:00
|
|
|
|
2012-08-03 13:21:29 +02:00
|
|
|
# Enabling 'taint' mode is desirable, but that flag disables support
|
|
|
|
# for the PERL5LIB environment variable. Needs further investigation.
|
|
|
|
makeFlags = "PERL_BIN=${perl}/bin/perl PERL_TAINT=no";
|
2012-07-08 00:32:30 +02:00
|
|
|
|
2012-09-27 15:28:14 +02:00
|
|
|
makeMakerFlags = "CONFDIR=/etc/spamassassin LOCALSTATEDIR=/var/lib/spamassassin";
|
|
|
|
|
2012-07-08 00:32:30 +02:00
|
|
|
doCheck = false;
|
|
|
|
|
2012-08-03 13:21:29 +02:00
|
|
|
postInstall = ''
|
2012-09-27 15:28:14 +02:00
|
|
|
mv "rules/"* $out/share/spamassassin/
|
|
|
|
|
2012-08-03 13:21:29 +02:00
|
|
|
for n in "$out/bin/"*; do
|
2012-09-27 15:29:01 +02:00
|
|
|
wrapProgram "$n" --prefix PERL5LIB : "$PERL5LIB" --prefix PATH : "${gnupg1}/bin"
|
2012-08-03 13:21:29 +02:00
|
|
|
done
|
|
|
|
'';
|
|
|
|
|
2012-07-08 00:32:30 +02:00
|
|
|
meta = {
|
|
|
|
homepage = "http://spamassassin.apache.org/";
|
|
|
|
description = "Open-Source Spam Filter";
|
|
|
|
license = stdenv.lib.licenses.asl20;
|
|
|
|
platforms = stdenv.lib.platforms.linux;
|
|
|
|
maintainers = [ stdenv.lib.maintainers.simons ];
|
|
|
|
};
|
|
|
|
}
|