diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /mail-filter/spamassassin | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'mail-filter/spamassassin')
-rw-r--r-- | mail-filter/spamassassin/Manifest | 2 | ||||
-rw-r--r-- | mail-filter/spamassassin/files/3.0.0-spamd.conf | 46 | ||||
-rw-r--r-- | mail-filter/spamassassin/files/3.3.1-spamd.init | 46 | ||||
-rw-r--r-- | mail-filter/spamassassin/files/secrets.cf | 14 | ||||
-rw-r--r-- | mail-filter/spamassassin/files/spamassassin.service | 14 | ||||
-rw-r--r-- | mail-filter/spamassassin/files/spamassassin.service-r1 | 15 | ||||
-rw-r--r-- | mail-filter/spamassassin/files/spamassassin.service.conf | 10 | ||||
-rw-r--r-- | mail-filter/spamassassin/metadata.xml | 14 | ||||
-rw-r--r-- | mail-filter/spamassassin/spamassassin-3.4.0.ebuild | 212 | ||||
-rw-r--r-- | mail-filter/spamassassin/spamassassin-3.4.1.ebuild | 221 |
10 files changed, 594 insertions, 0 deletions
diff --git a/mail-filter/spamassassin/Manifest b/mail-filter/spamassassin/Manifest new file mode 100644 index 000000000000..d91b4e1f3f48 --- /dev/null +++ b/mail-filter/spamassassin/Manifest @@ -0,0 +1,2 @@ +DIST Mail-SpamAssassin-3.4.0.tar.bz2 1065544 SHA256 553b39bae969b4ba20854c0a0fa1eba2a6aa0f4e103b530e0da4e152cdce4714 SHA512 4a04604a0331a9c23cd10d4fb58e5ca5d3e592bbeffacf0f89b379e5b46118f8b1500d671606a2407115f90fb633a713c8ed557f0db155f4645e263175b0946c WHIRLPOOL 401d61a0ab8bd906b14effb0125aeb3b1a87cdd115484b0787410a03208208e6dfb3c7a440c82ff2334c093555ac7e4eae8b9fc735de5e503f1396a172cec927 +DIST Mail-SpamAssassin-3.4.1.tar.bz2 2710985 SHA256 a0c1c9808f0684b389594eb8b2ccbace6486546593493f9308c9554563d14651 SHA512 91d50e2ce6520e3e1c7bc66da133a0815be34ced15e26b6e6c17af5a03d5c62f41d8086f25f65084d6634497148cf5439977d7d4a44d7c3e307535beac6629af WHIRLPOOL 1465fcbc0456c9a671087d395c2a9998e3852a47153a0f6770158a2a311196490274c620aab89e2a6ff163defa72b8e785032f9450e7903df355544d957e8908 diff --git a/mail-filter/spamassassin/files/3.0.0-spamd.conf b/mail-filter/spamassassin/files/3.0.0-spamd.conf new file mode 100644 index 000000000000..b3cd1acd8fa3 --- /dev/null +++ b/mail-filter/spamassassin/files/3.0.0-spamd.conf @@ -0,0 +1,46 @@ +# Config file for /etc/init.d/spamd + + +# ***WARNING*** +# spamd was not designed to listed to an untrusted network. spamd +# is vulnerable to DoS attacks (and eternal doom) if used to listen +# to an untrusted network. +# + + +# Some options: +# +# -c to create a per user configuration file +# -H [dir] to switch home dirs for helper apps, dir optional +# -i [ip] to listen on the specified IP, +# 127.0.0.1 if omitted, +# 0.0.0.0 (ie. all) if given without value; +# must be used in combination with -A to actually allow +# connections from anybody but localhost +# -m limit to set the number of children, default 5 +# -u user the user to run spamd as +# -L if you want to run no net tests +# +# for more help look in man spamd +# +# Note: if you plan on using the -u flag to spamd you will need to +# make sure the location of the PID file is writable by that user. +# This can be done by making the directory /var/run/spamd and +# changing the owner to the UID that runs spamd. You will then +# need to edit $pidfile in /etc/init.d/spamd. This should fix the +# problem with stop/restart in the init scripts. +# +# See http://bugs.gentoo.org/show_bug.cgi?id=70124 for a full +# explanation. + +SPAMD_OPTS="-m 5 -c -H" + +# spamd stores its pid in this file. If you use the -u option to +# run spamd under another user, you might need to adjust it. + +PIDFILE="/run/spamd.pid" + +# SPAMD_NICELEVEL lets you set the 'nice'ness of the running +# spamd process + +# SPAMD_NICELEVEL=5 diff --git a/mail-filter/spamassassin/files/3.3.1-spamd.init b/mail-filter/spamassassin/files/3.3.1-spamd.init new file mode 100644 index 000000000000..ac78e2200a17 --- /dev/null +++ b/mail-filter/spamassassin/files/3.3.1-spamd.init @@ -0,0 +1,46 @@ +#!/sbin/runscript +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +# NB: Config is in /etc/conf.d/spamd + +# Provide a default location if they haven't in /etc/conf.d/spamd +PIDFILE=${PIDFILE:-/run/spamd.pid} + +extra_started_commands="reload" + +depend() { + need net + before mta + use logger +@USEPOSTGRES@ use postgresql +@USEMYSQL@ use mysql +} + +start() { + ebegin "Starting spamd" + start-stop-daemon --start --quiet \ + --name spamd \ + --nicelevel ${SPAMD_NICELEVEL:-0} \ + --pidfile ${PIDFILE} \ + --exec /usr/sbin/spamd -- -d -r ${PIDFILE} \ + ${SPAMD_OPTS} + retval=$? + if ! [ -f "${PIDFILE}" ]; then + sleep 1 + fi + eend ${retval} "Failed to start spamd" +} + +stop() { + ebegin "Stopping spamd" + start-stop-daemon --stop --quiet --pidfile ${PIDFILE} + eend $? "Failed to stop spamd" +} + +reload() { + ebegin "Reloading configuration" + start-stop-daemon --signal HUP --quiet --pidfile ${PIDFILE} + eend $? +} diff --git a/mail-filter/spamassassin/files/secrets.cf b/mail-filter/spamassassin/files/secrets.cf new file mode 100644 index 000000000000..efa31a6fbc00 --- /dev/null +++ b/mail-filter/spamassassin/files/secrets.cf @@ -0,0 +1,14 @@ +# The below sample from bug 91430 is an example of using mysql +# for spam filter storage + +#(Tell Spamassissin to use MySQL for bayes data +#bayes_store_module Mail::SpamAssassin::BayesStore::SQL +#bayes_sql_dsn DBI:mysql:sa_bayes:localhost:3306 +#bayes_sql_username db_name +#bayes_sql_password another_very_secret_password + +#(Tell Spamassissin to use MySQL for AWL data +#auto_whitelist_factory Mail::SpamAssassin::SQLBasedAddrList +#user_awl_dsn DBI:mysql:sa_bayes:localhost:3306 +#user_awl_sql_username db_name +#user_awl_sql_password another_very_secret_password diff --git a/mail-filter/spamassassin/files/spamassassin.service b/mail-filter/spamassassin/files/spamassassin.service new file mode 100644 index 000000000000..5c9e9edc2960 --- /dev/null +++ b/mail-filter/spamassassin/files/spamassassin.service @@ -0,0 +1,14 @@ +[Unit] +Description=Spamassassin daemon +After=syslog.target network.target + +[Service] +Type=forking +PIDFile=/var/run/spamd.pid +ExecStart=/usr/sbin/spamd -d --pidfile /var/run/spamd.pid -m 5 -c -H +StandardOutput=syslog +StandardError=syslog +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/mail-filter/spamassassin/files/spamassassin.service-r1 b/mail-filter/spamassassin/files/spamassassin.service-r1 new file mode 100644 index 000000000000..3d145817f129 --- /dev/null +++ b/mail-filter/spamassassin/files/spamassassin.service-r1 @@ -0,0 +1,15 @@ +[Unit] +Description=Spamassassin daemon +After=syslog.target network.target + +[Service] +Type=forking +PIDFile=/run/spamd.pid +ExecStart=/usr/sbin/spamd -d --pidfile /run/spamd.pid -m 5 $SPAMD_OPTS +ExecReload=/bin/kill -HUP $MAINPID +StandardOutput=syslog +StandardError=syslog +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/mail-filter/spamassassin/files/spamassassin.service.conf b/mail-filter/spamassassin/files/spamassassin.service.conf new file mode 100644 index 000000000000..9fc1f6294525 --- /dev/null +++ b/mail-filter/spamassassin/files/spamassassin.service.conf @@ -0,0 +1,10 @@ +# Here you can append some options to spamd process, please +# double check that you make needed changes in service file if +# you use options requiring it +# Some options: +# +# -c to create a per user configuration file +# -H [dir] to switch home dirs for helper apps, dir optional + +[Service] +Environment="SPAMD_OPTS= -c -H" diff --git a/mail-filter/spamassassin/metadata.xml b/mail-filter/spamassassin/metadata.xml new file mode 100644 index 000000000000..822c9ad63fc5 --- /dev/null +++ b/mail-filter/spamassassin/metadata.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>maintainer-needed@gentoo.org</email> + </maintainer> +<use> + <flag name='qmail'>Build qmail functionality and docs</flag> + <flag name='bayes'> + Require a database (MySQL, SQLite, Postgres, or BerkDB) backend to + enable the Bayesian filtering database. + </flag> +</use> +</pkgmetadata> diff --git a/mail-filter/spamassassin/spamassassin-3.4.0.ebuild b/mail-filter/spamassassin/spamassassin-3.4.0.ebuild new file mode 100644 index 000000000000..13a5bd8ef54b --- /dev/null +++ b/mail-filter/spamassassin/spamassassin-3.4.0.ebuild @@ -0,0 +1,212 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit perl-module toolchain-funcs eutils systemd readme.gentoo + +MY_P=Mail-SpamAssassin-${PV//_/-} +S=${WORKDIR}/${MY_P} +DESCRIPTION="SpamAssassin is an extensible email filter which is used to identify spam" +HOMEPAGE="http://spamassassin.apache.org/" +SRC_URI="mirror://apache/spamassassin/source/${MY_P}.tar.bz2" + +LICENSE="Apache-2.0 GPL-2" +SLOT="0" +KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos" +IUSE="+berkdb qmail ssl doc ldap mysql postgres sqlite ipv6" + +REQUIRED_USE="|| ( berkdb mysql postgres sqlite )" + +DEPEND=">=dev-lang/perl-5.8.8-r8 + virtual/perl-MIME-Base64 + >=virtual/perl-Pod-Parser-1.510.0-r2 + virtual/perl-Storable + virtual/perl-Time-HiRes + >=dev-perl/HTML-Parser-3.43 + >=dev-perl/Mail-DKIM-0.37 + >=dev-perl/Net-DNS-0.53 + dev-perl/Digest-SHA1 + dev-perl/libwww-perl + >=virtual/perl-Archive-Tar-1.23 + app-crypt/gnupg + >=virtual/perl-IO-Zlib-1.04 + >=dev-util/re2c-0.12.0 + dev-perl/Mail-SPF + >=dev-perl/NetAddr-IP-4.0.1 + dev-perl/Geo-IP + dev-perl/Encode-Detect + dev-perl/Net-Patricia + ssl? ( + dev-perl/IO-Socket-SSL + dev-libs/openssl + ) + berkdb? ( + virtual/perl-DB_File + ) + ldap? ( dev-perl/perl-ldap ) + mysql? ( + dev-perl/DBI + dev-perl/DBD-mysql + ) + postgres? ( + dev-perl/DBI + dev-perl/DBD-Pg + ) + sqlite? ( + dev-perl/DBI + dev-perl/DBD-SQLite + ) + ipv6? ( + || ( dev-perl/IO-Socket-INET6 + virtual/perl-IO-Socket-IP ) + )" +RDEPEND="${DEPEND}" + +SRC_TEST="do" + +src_configure() { + # - Set SYSCONFDIR explicitly so we can't get bitten by bug 48205 again + # (just to be sure, nobody knows how it could happen in the first place). + myconf="SYSCONFDIR=${EPREFIX}/etc DATADIR=${EPREFIX}/usr/share/spamassassin" + + # If ssl is enabled, spamc can be built with ssl support + if use ssl; then + myconf+=" ENABLE_SSL=yes" + else + myconf+=" ENABLE_SSL=no" + fi + + # Set the path to the Perl executable explictly. This will be used to + # create the initial sharpbang line in the scripts and might cause + # a versioned app name end in there, see + # <http://bugs.gentoo.org/show_bug.cgi?id=62276> + myconf+=" PERL_BIN=${EPREFIX}/usr/bin/perl" + + # Add Gentoo tag to make it easy for the upstream devs to spot + # possible modifications or patches. + #version_tag="g${PV:6}${PR}" + #version_str="${PV//_/-}-${version_tag}" + + # Create the Gentoo config file before Makefile.PL is called so it + # is copied later on. + #echo "version_tag ${version_tag}" > rules/11_gentoo.cf + + # Setting the following env var ensures that no questions are asked. + perl-module_src_configure + # Configure spamc + emake CC="$(tc-getCC)" LDFLAGS="${LDFLAGS}" spamc/Makefile +} + +src_compile() { + export PERL_MM_USE_DEFAULT=1 + + # Now compile all the stuff selected. + perl-module_src_compile + + if use qmail; then + emake spamc/qmail-spamc + fi + +} + +src_install () { + perl-module_src_install + + # Create the stub dir used by sa-update and friends + keepdir /var/lib/spamassassin + + # Move spamd to sbin where it belongs. + dodir /usr/sbin + mv "${ED}"/usr/bin/spamd "${ED}"/usr/sbin/spamd || die "move spamd failed" + + if use qmail; then + dobin spamc/qmail-spamc + fi + + ln -s mail/spamassassin "${ED}"/etc/spamassassin || die + + # Disable plugin by default + sed -i -e 's/^loadplugin/\#loadplugin/g' "${ED}"/etc/mail/spamassassin/init.pre || die + + # Add the init and config scripts. + newinitd "${FILESDIR}"/3.3.1-spamd.init spamd + newconfd "${FILESDIR}"/3.0.0-spamd.conf spamd + + systemd_newunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service + systemd_install_serviced "${FILESDIR}"/${PN}.service.conf + + if use postgres; then + sed -i -e 's:@USEPOSTGRES@::' "${ED}/etc/init.d/spamd" || die + + dodoc sql/*_pg.sql + else + sed -i -e '/@USEPOSTGRES@/d' "${ED}/etc/init.d/spamd" || die + fi + + if use mysql; then + sed -i -e 's:@USEMYSQL@::' "${ED}/etc/init.d/spamd" || die + + dodoc sql/*_mysql.sql + else + sed -i -e '/@USEMYSQL@/d' "${ED}/etc/init.d/spamd" || die + fi + + dodoc NOTICE TRADEMARK CREDITS INSTALL.VMS UPGRADE USAGE \ + sql/README.bayes sql/README.awl procmailrc.example sample-nonspam.txt \ + sample-spam.txt spamd/PROTOCOL spamd/README.vpopmail \ + spamd-apache2/README.apache + + # Rename some docu files so they don't clash with others + newdoc spamd/README README.spamd + newdoc sql/README README.sql + newdoc ldap/README README.ldap + + if use qmail; then + dodoc spamc/README.qmail + fi + + cp "${FILESDIR}"/secrets.cf "${ED}"/etc/mail/spamassassin/secrets.cf.example || die + fperms 0400 /etc/mail/spamassassin/secrets.cf.example + + cat <<-EOF > "${T}/local.cf.example" + # Sensitive data, such as database connection info, should be stored in + # /etc/mail/spamassassin/secrets.cf with appropriate permissions +EOF + + insinto /etc/mail/spamassassin/ + doins "${T}/local.cf.example" +} + +pkg_postinst() { + elog "If you plan on using the -u flag to spamd, please read the notes" + elog "in /etc/conf.d/spamd regarding the location of the pid file.\n" + elog "If you build ${PN} with optional dependancy support," + elog "you can enable them in /etc/mail/spamassassin/init.pre\n" + elog "You need to configure your database to be able to use Bayes filter" + elog "with database backend, otherwise it will still use (and need) the" + elog "Berkeley DB support." + elog "Look at the sql/README.bayes file in the documentation directory" + elog "for how to configure it.\n" + elog "If you plan to use Vipul's Razor, note that versions up to and" + elog "including version 2.82 include a bug that will slow down the entire" + elog "perl interpreter. Version 2.83 or later fixes this." + elog "If you do not plan to use this plugin, be sure to comment out" + elog "its loadplugin line in /etc/mail/spamassassin/v310.pre.\n" + elog "The DKIM plugin is now enabled by default for new installs," + elog "if the perl module Mail::DKIM is installed." + elog "However, installation of SpamAssassin will not overwrite existing" + elog ".pre configuration files, so to use DKIM when upgrading from a" + elog "previous release that did not use DKIM, a directive:\n" + elog "loadplugin Mail::SpamAssassin::Plugin::DKIM" + elog "will need to be uncommented in file 'v312.pre', or added" + elog "to some other .pre file, such as local.pre.\n" + ewarn "Rules are no longer included with SpamAssassin out of the box". + ewarn "You will need to immediately run sa-update, or download" + ewarn "the additional rules .tgz package and run sa-update --install" + ewarn "with it, to get a ruleset.\n" + elog "If you run sa-update and receive a GPG validation error." + elog "Then you need to import an updated sa-update key." + elog "sa-update --import /usr/share/spamassassin/sa-update-pubkey.txt\n" +} diff --git a/mail-filter/spamassassin/spamassassin-3.4.1.ebuild b/mail-filter/spamassassin/spamassassin-3.4.1.ebuild new file mode 100644 index 000000000000..2e818ed2a9e0 --- /dev/null +++ b/mail-filter/spamassassin/spamassassin-3.4.1.ebuild @@ -0,0 +1,221 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit perl-module toolchain-funcs eutils systemd readme.gentoo + +MY_P=Mail-SpamAssassin-${PV//_/-} +S=${WORKDIR}/${MY_P} +DESCRIPTION="An extensible mail filter which can identify and tag spam" +HOMEPAGE="http://spamassassin.apache.org/" +SRC_URI="mirror://apache/spamassassin/source/${MY_P}.tar.bz2" + +LICENSE="Apache-2.0 GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos" +IUSE="+bayes berkdb qmail ssl doc ldap mysql postgres sqlite ipv6" + +# You can do without a database unless you need the Bayes features. +REQUIRED_USE="bayes? ( || ( berkdb mysql postgres sqlite ) )" + +DEPEND=">=dev-lang/perl-5.8.8-r8 + virtual/perl-MIME-Base64 + >=virtual/perl-Pod-Parser-1.510.0-r2 + virtual/perl-Storable + virtual/perl-Time-HiRes + >=dev-perl/HTML-Parser-3.43 + >=dev-perl/Mail-DKIM-0.37 + >=dev-perl/Net-DNS-0.53 + dev-perl/Digest-SHA1 + dev-perl/libwww-perl + >=virtual/perl-Archive-Tar-1.23 + app-crypt/gnupg + >=virtual/perl-IO-Zlib-1.04 + >=dev-util/re2c-0.12.0 + dev-perl/Mail-SPF + >=dev-perl/NetAddr-IP-4.0.1 + dev-perl/Geo-IP + dev-perl/Encode-Detect + dev-perl/Net-Patricia + ssl? ( + dev-perl/IO-Socket-SSL + dev-libs/openssl + ) + berkdb? ( + virtual/perl-DB_File + ) + ldap? ( dev-perl/perl-ldap ) + mysql? ( + dev-perl/DBI + dev-perl/DBD-mysql + ) + postgres? ( + dev-perl/DBI + dev-perl/DBD-Pg + ) + sqlite? ( + dev-perl/DBI + dev-perl/DBD-SQLite + ) + ipv6? ( + || ( dev-perl/IO-Socket-INET6 + virtual/perl-IO-Socket-IP ) + )" +RDEPEND="${DEPEND}" + +SRC_TEST="do" + +src_prepare() { + # Merged upstream + #epatch "${FILESDIR}/net-dns-0.76_compatibility.patch" + perl-module_src_prepare +} + +src_configure() { + # - Set SYSCONFDIR explicitly so we can't get bitten by bug 48205 again + # (just to be sure, nobody knows how it could happen in the first place). + myconf="SYSCONFDIR=${EPREFIX}/etc" + myconf+=" DATADIR=${EPREFIX}/usr/share/spamassassin" + + # If ssl is enabled, spamc can be built with ssl support. + if use ssl; then + myconf+=" ENABLE_SSL=yes" + else + myconf+=" ENABLE_SSL=no" + fi + + # Set the path to the Perl executable explictly. This will be used to + # create the initial sharpbang line in the scripts and might cause + # a versioned app name end in there, see + # <http://bugs.gentoo.org/show_bug.cgi?id=62276> + myconf+=" PERL_BIN=${EPREFIX}/usr/bin/perl" + + # Setting the following env var ensures that no questions are asked. + perl-module_src_configure + # Configure spamc + emake CC="$(tc-getCC)" LDFLAGS="${LDFLAGS}" spamc/Makefile +} + +src_compile() { + export PERL_MM_USE_DEFAULT=1 + + # Now compile all the stuff selected. + perl-module_src_compile + + if use qmail; then + emake spamc/qmail-spamc + fi +} + +src_install () { + perl-module_src_install + + # Create the stub dir used by sa-update and friends + keepdir /var/lib/spamassassin + + # Move spamd to sbin where it belongs. + dodir /usr/sbin + mv "${ED}"/usr/bin/spamd "${ED}"/usr/sbin/spamd || die "move spamd failed" + + if use qmail; then + dobin spamc/qmail-spamc + fi + + ln -s mail/spamassassin "${ED}"/etc/spamassassin || die + + # Disable plugin by default + sed -i -e 's/^loadplugin/\#loadplugin/g' \ + "${ED}"/etc/mail/spamassassin/init.pre \ + || die "failed to disable plugins by default" + + # Add the init and config scripts. + newinitd "${FILESDIR}"/3.3.1-spamd.init spamd + newconfd "${FILESDIR}"/3.0.0-spamd.conf spamd + + systemd_newunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service + systemd_install_serviced "${FILESDIR}"/${PN}.service.conf + + if use postgres; then + sed -i -e 's:@USEPOSTGRES@::' "${ED}/etc/init.d/spamd" || die + + dodoc sql/*_pg.sql + else + sed -i -e '/@USEPOSTGRES@/d' "${ED}/etc/init.d/spamd" || die + fi + + if use mysql; then + sed -i -e 's:@USEMYSQL@::' "${ED}/etc/init.d/spamd" || die + + dodoc sql/*_mysql.sql + else + sed -i -e '/@USEMYSQL@/d' "${ED}/etc/init.d/spamd" || die + fi + + dodoc NOTICE TRADEMARK CREDITS INSTALL.VMS UPGRADE USAGE \ + sql/README.bayes sql/README.awl procmailrc.example sample-nonspam.txt \ + sample-spam.txt spamd/PROTOCOL spamd/README.vpopmail \ + spamd-apache2/README.apache + + # Rename some docu files so they don't clash with others + newdoc spamd/README README.spamd + newdoc sql/README README.sql + newdoc ldap/README README.ldap + + if use qmail; then + dodoc spamc/README.qmail + fi + + insinto /etc/mail/spamassassin/ + insopts -m0400 + newins "${FILESDIR}"/secrets.cf secrets.cf.example + + cat <<-EOF > "${T}/local.cf.example" + # Sensitive data, such as database connection info, should be stored in + # /etc/mail/spamassassin/secrets.cf with appropriate permissions +EOF + + insopts -m0644 + doins "${T}/local.cf.example" +} + +pkg_postinst() { + elog "If you plan on using the -u flag to spamd, please read the notes" + elog "in /etc/conf.d/spamd regarding the location of the pid file." + elog + elog "If you build ${PN} with optional dependancy support," + elog "you can enable them in /etc/mail/spamassassin/init.pre" + elog + elog "You need to configure your database to be able to use Bayes filter" + elog "with database backend, otherwise it will still use (and need) the" + elog "Berkeley DB support." + elog "Look at the sql/README.bayes file in the documentation directory" + elog "for how to configure it." + elog + elog "If you plan to use Vipul's Razor, note that versions up to and" + elog "including version 2.82 include a bug that will slow down the entire" + elog "perl interpreter. Version 2.83 or later fixes this." + elog "If you do not plan to use this plugin, be sure to comment out" + elog "its loadplugin line in /etc/mail/spamassassin/v310.pre." + elog + elog "The DKIM plugin is now enabled by default for new installs," + elog "if the perl module Mail::DKIM is installed." + elog "However, installation of SpamAssassin will not overwrite existing" + elog ".pre configuration files, so to use DKIM when upgrading from a" + elog "previous release that did not use DKIM, a directive:" + elog + elog "loadplugin Mail::SpamAssassin::Plugin::DKIM" + elog "will need to be uncommented in file 'v312.pre', or added" + elog "to some other .pre file, such as local.pre." + elog + ewarn "Rules are no longer included with SpamAssassin out of the box". + ewarn "You will need to immediately run sa-update, or download" + ewarn "the additional rules .tgz package and run sa-update --install" + ewarn "with it, to get a ruleset." + elog + elog "If you run sa-update and receive a GPG validation error." + elog "Then you need to import an updated sa-update key." + elog "sa-update --import /usr/share/spamassassin/sa-update-pubkey.txt" + elog +} |