diff options
Diffstat (limited to 'net-mail/mailgraph/mailgraph-1.14-r2.ebuild')
-rw-r--r-- | net-mail/mailgraph/mailgraph-1.14-r2.ebuild | 125 |
1 files changed, 125 insertions, 0 deletions
diff --git a/net-mail/mailgraph/mailgraph-1.14-r2.ebuild b/net-mail/mailgraph/mailgraph-1.14-r2.ebuild new file mode 100644 index 000000000000..304884db2a41 --- /dev/null +++ b/net-mail/mailgraph/mailgraph-1.14-r2.ebuild @@ -0,0 +1,125 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 +inherit eutils user + +DESCRIPTION="A mail statistics RRDtool frontend for Postfix" +HOMEPAGE="http://mailgraph.schweikert.ch/" +SRC_URI="http://mailgraph.schweikert.ch//pub/${P}.tar.gz" + +LICENSE="GPL-2" +# Change SLOT to 0 when appropriate +SLOT="1.14" +KEYWORDS="amd64 x86" +IUSE="" + +RDEPEND="dev-lang/perl + dev-perl/File-Tail + >=net-analyzer/rrdtool-1.2.2[graph,perl]" +DEPEND=">=sys-apps/sed-4" + +pkg_setup() { + # add user and group for mailgraph daemon + # also add mgraph to the group adm so it's able to + # read syslog logfile /var/log/messages (should be owned by + # root:adm with permission 0640) + enewgroup mgraph + enewuser mgraph -1 -1 /var/empty mgraph,adm +} + +src_prepare() { + sed -i \ + -e "s|\(my \$rrd = '\).*'|\1/var/lib/mailgraph/mailgraph.rrd'|" \ + -e "s|\(my \$rrd_virus = '\).*'|\1/var/lib/mailgraph/mailgraph_virus.rrd'|" \ + mailgraph.cgi || die "sed mailgraph.cgi failed" +} + +src_install() { + # for the RRDs + dodir /var/lib + diropts -omgraph -gmgraph -m0750 + dodir /var/lib/mailgraph + keepdir /var/lib/mailgraph + + # log and pid file + diropts "" + dodir /var/log + dodir /var/run + diropts -omgraph -gadm -m0750 + dodir /var/log/mailgraph + keepdir /var/log/mailgraph + + # logrotate config for mailgraph log + diropts "" + dodir /etc/logrotate.d + insopts -m0644 + insinto /etc/logrotate.d + newins "${FILESDIR}"/mailgraph.logrotate-new mailgraph + + # mailgraph daemon + newbin mailgraph.pl mailgraph + + # mailgraph CGI script + exeinto /usr/share/${PN} + doexe mailgraph.cgi + insinto /usr/share/${PN} + doins mailgraph.css + + # init/conf files for mailgraph daemon + newinitd "${FILESDIR}"/mailgraph.initd-new mailgraph + newconfd "${FILESDIR}"/mailgraph.confd-new mailgraph + + # docs + dodoc README CHANGES +} + +pkg_postinst() { + # Fix ownerships - previous versions installed these with + # root as owner + if [[ ${REPLACING_VERSIONS} < 1.13 ]] ; then + if [[ -d /var/lib/mailgraph ]] ; then + chown mgraph:mgraph /var/lib/mailgraph + fi + if [[ -d /var/log/mailgraph ]] ; then + chown mgraph:adm /var/log/mailgraph + fi + if [[ -d /var/run/mailgraph ]] ; then + chown mgraph:adm /var/run/mailgraph + fi + fi + elog "Mailgraph will run as user mgraph with group adm by default." + elog "This can be changed in /etc/conf.d/mailgraph if it doesn't fit." + elog "Remember to adjust MG_DAEMON_LOG, MG_DAEMON_PID and MG_DAEMON_RRD" + elog "as well!" + ewarn "Please make sure the MG_LOGFILE (default: /var/log/messages) is readable" + ewarn "by group adm or change MG_DAEMON_GID in /etc/conf.d/mailgraph accordingly!" + ewarn + ewarn "Please make sure *all* mail related logs (MTA, spamfilter, virus scanner)" + ewarn "go to the file /var/log/messages or change MG_LOGFILE in" + ewarn "/etc/conf.d/mailgraph accordingly! Otherwise mailgraph won't get to know" + ewarn "the corresponding events (virus/spam mail found etc.)." + elog + elog "Checking for user apache:" + if egetent passwd apache >&/dev/null; then + elog "Adding user apache to group mgraph so the included" + elog "CGI script is able to read the mailgraph RRD files" + if ! gpasswd -a apache mgraph >&/dev/null; then + eerror "Failed to add user apache to group mgraph!" + eerror "Please check manually." + fi + else + elog + elog "User apache not found, maybe we will be running a" + elog "webserver with a different UID?" + elog "If that's the case, please add that user to the" + elog "group mgraph manually to enable the included" + elog "CGI script to read the mailgraph RRD files:" + elog + elog "\tgpasswd -a <user> mgraph" + fi + ewarn + ewarn "mailgraph.cgi is installed in /usr/share/${PN}/" + ewarn "You need to put it somewhere accessible though a web-server." +} |