# Copyright 1999-2005 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ inherit eutils DESCRIPTION="Policyd daemon for postfix" HOMEPAGE="http://policyd.sf.net/" SRC_URI="http://policyd.sourceforge.net/${PN}-v${PV}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="x86 amd64" IUSE="" DEPEND=">=mail-mta/postfix-2.1.5 >=dev-db/mysql-4.0.24 >=dev-libs/openssl-0.9.7e-r1" RESTRICT="nomirror" S=${WORKDIR}/${PN}-v${PV} src_unpack() { einfo "src unpack start" unpack ${A} cd ${S} # epatch ${FILESDIR}/${PV}-generic.patch || die "epatch patches.patch failed" # epatch ${FILESDIR}/${PV}-cleanup-${PR}.patch || die "epatch patches.patch failed" # epatch ${FILESDIR}/${PV}-helo.patch || die "epatch patches.patch failed" # epatch ${FILESDIR}/${PV}-throttle.patch || die "epatch throttle.patch failed" einfo "src unpack end" } src_compile() { # make sane default config einfo "make sane defaults" cd ${S} cat policyd.conf | sed -e s/UID=0/UID=65534/ | sed -e s/GID=0/GID=65534/ | sed -e s/DAEMON=0/DAEMON=1/ | sed -e s/DEBUG=3/DEBUG=0/ | sed -e s/DATABASE_KEEPALIVE=0/DATABASE_KEEPALIVE=1/ > policyd.conf.new rm policyd.conf mv policyd.conf.new policyd.conf einfo "sane defaults maked" # compile it einfo "src compile start" emake build || die "emake failed" einfo "src compile end" } src_install() { einfo "src install start" insopts -o root -g nobody -m 0750 dosbin policyd cleanup stats # install config insinto /etc # keep this file sane since we have mysql password in it insopts -o root -g nobody -m 0640 doins policyd.conf # install hourly cron exeinto /etc/cron.hourly insopts -o root -g nobody -m 0700 newexe ${FILESDIR}/${PN}.gentoo.cron ${PN}.cron # install daily stats, it will just make the stats to logs exeinto /etc/cron.daily insopts -o root -g nobody -m 0700 newexe ${FILESDIR}/${PN}-stats.cron ${PN}.stats.cron # install docs dodoc Changelog.txt DATABASE.mysql License.txt README.txt doc/support.txt doc/blacklist_helo.sql doc/whitelist.sql # install init newinitd ${FILESDIR}/${PN}.gentoo.init ${PN} einfo "src install end" } pkg_postinst() { einfo "To make use of policyd, please update your postfix config:" einfo "Add \"check_policy_service inet:127.0.0.1:10031\" to" einfo "smtpd_recipient restrictions setting in your /etc/postfix/main.cf" einfo "and restart postfix." einfo "Also remember to make the daemon start durig system boot:" einfo " rc-update add policyd default" ewarn "Read the documentation for more info." # einfo "There is a bug in the stats program that needs fixing so i created seperate conf for stats." einfo "Follow the maillist please." # ewarn "This is beta quallity" # echo # ebeep 5 # epause 5 }