blob: dae8a7763f1359548f23f38eb7ba3b2bef148579 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
|
# New ports collection makefile for: monitorix
# Date created: 15 Aug 2010
# Whom: Olli Hauer <ohauer@FreeBSD.org>
#
# $FreeBSD$
#
PORTNAME= monitorix
PORTVERSION= 1.5.1
CATEGORIES= sysutils
MASTER_SITES= http://monitorix.org/
MAINTAINER= admin@mjbrune.org
COMMENT= A web based monitoring system
LIB_DEPENDS= rrd:${PORTSDIR}/databases/rrdtool
BUILD_DEPENDS= ${SITE_PERL}/LWP/Parallel.pm:${PORTSDIR}/www/p5-ParallelUA
LICENSE= GPLv2
OPTIONS= REPORTS "Mail HTML reports to a given address" off
.include <bsd.port.options.mk>
MAN5= monitorix.conf.5
MANCOMPRESSED= no
NO_BUILD= yes
CGIDIR?= ${PREFIX}/www/cgi-bin
#REPORTS?= true
# owner of $WWWROOT/imgs
WWW_OWNER?= ${WWWOWN}
WWW_GROUP?= ${WWWGRP}
DATADIR= ${INSTDIR}
REPORT_LANG= ca de en it
INSTDIR= ${PREFIX}/${PORTNAME}
# WWWROOT: (WWWDIR - portname), we need the resulting path for a variable in monitorix.conf
WWWROOT= ${WWWDIR:S,${PORTNAME},,}
SUB_FILES= pkg-message
SUB_LIST= PERL=${PERL} INSTDIR=${INSTDIR}
PLIST_SUB+= CGIDIR=${CGIDIR:S,${PREFIX}/,,} WWW_OWNER=${WWW_OWNER} WWW_GROUP=${WWW_GROUP}
WWW_FILES= logo_top.png logo_bot.png monitorixico.png
DOCS= COPYING Changes README README.FreeBSD README.nginx TODO \
monitorix-alert.sh monitorix-apache.conf
REPORT_FILES= imgs_email/blank.png imgs_email/logo.jpg imgs_email/signature.png \
imgs_email/title.jpg traffic_report.html traffic_report.sh
.if defined(WITH_REPORTS)
RUN_DEPENDS+= metamail>=2.7:${PORTSDIR}/mail/metamail
PLIST_SUB+= REPORTS=""
.else
PLIST_SUB+= REPORTS="@comment "
.endif
pre-everything::
@${ECHO_MSG} ""
@${ECHO_MSG} "You may set following options:"
@${ECHO_MSG} ""
@${ECHO_MSG} "DATADIR=${DATADIR} Where do you put RRD databases?"
@${ECHO_MSG} "CGIDIR=${CGIDIR} Where do you put cgi?"
@${ECHO_MSG} "WWWDIR=${WWWDIR} Where do you put httpd's document root?"
@${ECHO_MSG} ""
post-patch:
.for f in cgi conf pl
@${REINPLACE_CMD} -e "s|/usr/bin/perl|${PERL}|" ${WRKSRC}/monitorix.${f}
.endfor
# Notes about the adjustments for default configuration:
# - set FreeBSD as OSTYPE
# - set a generic WWWROOT, since we can include it in the webserver config
# - milter-greylist use a new database path on FreeBSD
# - FreeBSD's interface name came from the NIC, the lo0 interface is almost everytime present
# - file/directory handling outside ${PREFIX} with ports is silly. We don't want to rewrite
# monitorix.pl therefore we use ${PREFIX} instead /var/db/!
@${REINPLACE_CMD} -e 's|our \$$OSTYPE = \"Linux-RHFC\"|our \$$OSTYPE = \"FreeBSD\"|' \
-e "s|/usr/local/www/apache22/data|${WWWROOT}|" \
-e "s|/var/lib/milter-greylist/db/greylist.db|/var/milter-greylist/greylist.db|" \
-e "s|eth0|lo0|g" -e "s|/var/db/monitorix/|${INSTDIR}/|" \
-e "s|%%INSTDIR%%|${INSTDIR}|g" ${WRKSRC}/monitorix.conf
.for d in ${REPORT_LANG}
@${REINPLACE_CMD} -e "s|^rm|${RM}|g" -e "s|/bin/sed|${SED}|g" \
-e "s|/usr/bin/metasend|${PREFIX}/bin/metasend|g" \
-e "s|\"tmp|\"/tmp/${PORTNAME}_report|g" ${WRKSRC}/reports/${d}/traffic_report.sh
.endfor
do-install:
@${INSTALL_SCRIPT} ${WRKSRC}/monitorix.pl ${PREFIX}/sbin/
@${MKDIR} ${WWWDIR}/imgs
@${CHOWN} ${WWW_OWNER}:${WWW_GROUP} ${WWWDIR}/imgs
@for f in ${WWW_FILES}; do \
${INSTALL_DATA} ${WRKSRC}/$${f} ${WWWDIR}/; \
done
@${MKDIR} ${CGIDIR}
@${INSTALL_SCRIPT} ${WRKSRC}/monitorix.cgi ${CGIDIR}/
.for m in ${MAN5}
@${INSTALL_MAN} ${WRKSRC}/man/man5/$m ${PREFIX}/man/man5/
.endfor
.if defined(WITH_REPORTS)
. for l in ${REPORT_LANG}
@${MKDIR} ${PREFIX}/${PORTNAME}/reports/${l}/imgs_email
. for f in ${REPORT_FILES}
@${INSTALL_DATA} ${WRKSRC}/reports/${l}/${f} ${PREFIX}/${PORTNAME}/reports/${l}/${f}
. endfor
. endfor
.endif
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
@for doc in ${DOCS}; do \
${INSTALL_DATA} ${WRKSRC}/$${doc} ${DOCSDIR}; \
done
.endif
post-install:
@${INSTALL_DATA} ${WRKSRC}/monitorix.conf ${PREFIX}/etc/monitorix.conf.sample
@if [ ! -f ${PREFIX}/etc/monitorix.conf ]; then \
${CP} -p ${PREFIX}/etc/monitorix.conf.sample ${PREFIX}/etc/monitorix.conf ; \
fi
@${MKDIR} ${DATADIR}/usage
@${CAT} ${PKGMESSAGE}
.include <bsd.port.mk>
|