View | Details | Raw Unified | Return to bug 246105 | Differences between
and this patch

Collapse All | Expand All

(-)net-mgmt/librenms/Makefile (-8 / +20 lines)
Lines 4-10 Link Here
4
PORTNAME=	librenms
4
PORTNAME=	librenms
5
PORTVERSION=	1.63
5
PORTVERSION=	1.63
6
PORTEPOCH=	1
6
PORTEPOCH=	1
7
PORTREVISION=	0
7
PORTREVISION=	1
8
CATEGORIES=	net-mgmt
8
CATEGORIES=	net-mgmt
9
MASTER_SITES=	LOCAL/dvl:vendor
9
MASTER_SITES=	LOCAL/dvl:vendor
10
DISTFILES=	${PORTNAME}-vendor-${DISTVERSIONPREFIX}${DISTVERSION}${DISTVERSIONSUFFIX}${EXTRACT_SUFX}:vendor
10
DISTFILES=	${PORTNAME}-vendor-${DISTVERSIONPREFIX}${DISTVERSION}${DISTVERSIONSUFFIX}${EXTRACT_SUFX}:vendor
Lines 14-20 Link Here
14
14
15
LICENSE=	GPLv3
15
LICENSE=	GPLv3
16
16
17
USES=		python${PY_MYSQL} shebangfix
17
USES=		shebangfix
18
18
19
# RELEASE_TIMESTAMP is used for a patch inside the vendor code
19
# RELEASE_TIMESTAMP is used for a patch inside the vendor code
20
# it represents the release date via: git show --pretty='%H|%ct' -s 1.42.01
20
# it represents the release date via: git show --pretty='%H|%ct' -s 1.42.01
Lines 37-54 Link Here
37
USE_GITHUB=	yes
37
USE_GITHUB=	yes
38
GH_ACCOUNT=	librenms
38
GH_ACCOUNT=	librenms
39
39
40
USER_RC_SUBR=	librenms
41
40
USERS=		www
42
USERS=		www
41
WWW_USER=	www
42
43
43
NO_BUILD=	yes
44
NO_BUILD=	yes
44
45
45
OPTIONS_DEFINE=	FPING IPMITOOL LIBVIRT MYSQLD NAGPLUGINS NMAP PYPOLLER WMIC DOCS EXAMPLES X11
46
OPTIONS_DEFINE=	FPING IPMITOOL LIBVIRT MYSQLD NAGPLUGINS NMAP WMIC DOCS EXAMPLES X11
46
OPTIONS_DEFAULT=	 FPING IPMITOOL LIBVIRT NAGPLUGINS NMAP PYPOLLER WMIC
47
OPTIONS_DEFAULT=	 FPING IPMITOOL LIBVIRT NAGPLUGINS NMAP PYPOLLER WMIC
48
49
OPTIONS_SINGLE=	POLLERSYSTEM	
50
OPTIONS_SINGLE_POLLERSYSTEM=	PYPOLLER PYSERVICE #conflicting python versions
51
47
FPING_DESC=	Enable fping support ping monitoring
52
FPING_DESC=	Enable fping support ping monitoring
48
IPMITOOL_DESC=	Enable support for monitoring hardware IPMI
53
IPMITOOL_DESC=	Enable support for monitoring hardware IPMI
49
MYSQLD_DESC=	Use local MySQL server
54
MYSQLD_DESC=	Use local MySQL server
50
WMIC_DESC=	Enable support for WMI polling
55
WMIC_DESC=	Enable support for WMI polling
51
PYPOLLER_DESC=	Enable Python Poller Wrapper
56
PYPOLLER_DESC=	Support for polling using cron entries
57
PYSERVICE_DESC=	Support for polling using a daemon
52
58
53
FPING_RUN_DEPENDS=	fping:net/fping
59
FPING_RUN_DEPENDS=	fping:net/fping
54
IPMITOOL_RUN_DEPENDS=	ipmitool:sysutils/ipmitool
60
IPMITOOL_RUN_DEPENDS=	ipmitool:sysutils/ipmitool
Lines 56-62 Link Here
56
NAGPLUGINS_RUN_DEPENDS=	${LOCALBASE}/libexec/nagios/check_nagios:net-mgmt/nagios-plugins
62
NAGPLUGINS_RUN_DEPENDS=	${LOCALBASE}/libexec/nagios/check_nagios:net-mgmt/nagios-plugins
57
NMAP_RUN_DEPENDS=	nmap:security/nmap
63
NMAP_RUN_DEPENDS=	nmap:security/nmap
58
PYPOLLER_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}MySQLdb>=1.2.3:databases/py-MySQLdb@${PY_FLAVOR}
64
PYPOLLER_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}MySQLdb>=1.2.3:databases/py-MySQLdb@${PY_FLAVOR}
59
PYPOLLER_VARS=	PY_MYSQL=:2.7
65
PYPOLLER_USES=		python:2.7
66
PYSERVICE_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}python-dotenv>0:www/py-python-dotenv@${PY_FLAVOR} \
67
			${PYTHON_PKGNAMEPREFIX}pymysql>0:databases/py-pymysql@${PY_FLAVOR}
68
PYSERVICE_USES=		python:3.6+
60
X11_RUN_DEPENDS=	Magick-config:graphics/ImageMagick6 \
69
X11_RUN_DEPENDS=	Magick-config:graphics/ImageMagick6 \
61
			mtr:net/mtr
70
			mtr:net/mtr
62
X11_RUN_DEPENDS_OFF=	Magick-config:graphics/ImageMagick6-nox11 \
71
X11_RUN_DEPENDS_OFF=	Magick-config:graphics/ImageMagick6-nox11 \
Lines 92-98 Link Here
92
		../${PORTNAME}-vendor-${PORTVERSION}/tecnickcom/tcpdf/tools/tcpdf_addfont.php
101
		../${PORTNAME}-vendor-${PORTVERSION}/tecnickcom/tcpdf/tools/tcpdf_addfont.php
93
102
94
SUB_FILES+=	pkg-message
103
SUB_FILES+=	pkg-message
95
SUB_LIST+=	PHP="${PHPBASE}/bin/php" PYTHON=${PYTHON_CMD}
104
SUB_LIST+=	PHP="${PHPBASE}/bin/php" PYTHON=${PYTHON_CMD} \
105
		USER="${WWWOWN}" GROUP="${WWWGRP}" WWWDIR="${WWWDIR}"
96
106
97
ROOT_FILES=	addhost.php adduser.php alerts.php artisan billing-calculate.php \
107
ROOT_FILES=	addhost.php adduser.php alerts.php artisan billing-calculate.php \
98
		build-base.php build.sql check-services.php composer.json \
108
		build-base.php build.sql check-services.php composer.json \
Lines 135-141 Link Here
135
145
136
post-patch:
146
post-patch:
137
	@${REINPLACE_CMD}    's|%%PORTNAME%%|${PORTNAME}|g'                   ${WRKSRC}/config.php.default
147
	@${REINPLACE_CMD}    's|%%PORTNAME%%|${PORTNAME}|g'                   ${WRKSRC}/config.php.default
138
	@${REINPLACE_CMD}    's|%%WWW_USER%%|${WWW_USER}|g'                   ${WRKSRC}/config.php.default
148
	@${REINPLACE_CMD}    's|%%WWW_USER%%|${WWWOWN}|g'                     ${WRKSRC}/config.php.default
139
	@${REINPLACE_CMD}    's|%%LOCALBASE%%|${LOCALBASE}|g'                 ${WRKSRC}/poller-wrapper.py ${WRKSRC}/poller.php
149
	@${REINPLACE_CMD}    's|%%LOCALBASE%%|${LOCALBASE}|g'                 ${WRKSRC}/poller-wrapper.py ${WRKSRC}/poller.php
140
	@${REINPLACE_CMD}    's|%%PORTVERSION%%|${PORTVERSION}|g'             ${WRKSRC}/includes/common.php
150
	@${REINPLACE_CMD}    's|%%PORTVERSION%%|${PORTVERSION}|g'             ${WRKSRC}/includes/common.php
141
	@${REINPLACE_CMD}    's|%%RELEASE_TIMESTAMP%%|${RELEASE_TIMESTAMP}|g' ${WRKSRC}/includes/common.php
151
	@${REINPLACE_CMD}    's|%%RELEASE_TIMESTAMP%%|${RELEASE_TIMESTAMP}|g' ${WRKSRC}/includes/common.php
Lines 168-173 Link Here
168
# these values should be outside the www tree now
178
# these values should be outside the www tree now
169
	${MKDIR} ${STAGEDIR}/var/log/${PORTNAME}
179
	${MKDIR} ${STAGEDIR}/var/log/${PORTNAME}
170
	${MKDIR} ${STAGEDIR}/var/db/${PORTNAME}
180
	${MKDIR} ${STAGEDIR}/var/db/${PORTNAME}
181
	${MKDIR} ${STAGEDIR}/var/run/${PORTNAME}
171
182
172
do-install-DOCS-on:
183
do-install-DOCS-on:
173
	${MKDIR} ${STAGEDIR}/${DOCSDIR}
184
	${MKDIR} ${STAGEDIR}/${DOCSDIR}
Lines 200-205 Link Here
200
	@${ECHO_CMD} "@dir(www,www,0775) ${WWWDIR}/storage/framework/views" >> ${TMPPLIST}
211
	@${ECHO_CMD} "@dir(www,www,0775) ${WWWDIR}/storage/framework/views" >> ${TMPPLIST}
201
	@${ECHO_CMD} "@dir(www,www,0775) /var/log/${PORTNAME}" >> ${TMPPLIST}
212
	@${ECHO_CMD} "@dir(www,www,0775) /var/log/${PORTNAME}" >> ${TMPPLIST}
202
	@${ECHO_CMD} "@dir(www,www,0775) /var/db/${PORTNAME}" >> ${TMPPLIST}
213
	@${ECHO_CMD} "@dir(www,www,0775) /var/db/${PORTNAME}" >> ${TMPPLIST}
214
	@${ECHO_CMD} "@dir(www,www,0775) /var/run/${PORTNAME}" >> ${TMPPLIST}
203
.for f in ${OTHER_DIRS}
215
.for f in ${OTHER_DIRS}
204
	@${ECHO_CMD} "@dir(root,www,0775) ${WWWDIR}/${f}" >> ${TMPPLIST}
216
	@${ECHO_CMD} "@dir(root,www,0775) ${WWWDIR}/${f}" >> ${TMPPLIST}
205
.endfor
217
.endfor
(-)net-mgmt/librenms/files/librenms.in (+41 lines)
Line 0 Link Here
1
#!/bin/sh
2
3
# $FreeBSD$
4
#
5
# PROVIDE: librenms
6
# REQUIRE: SERVERS
7
# KEYWORD: shutdown
8
#
9
# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
10
# to enable this service:
11
#
12
# librenms_enable:	Set to NO by default.
13
#			Set it to YES to enable librenms
14
# librenms_user:	The user account used to run the daemon.
15
#			Default: %%USER%%
16
# librenms_group:	The group account used to run the daemon.
17
#			Default: %%GROUP%%
18
# librenms_pid:		Path of the pid file.
19
#			Default /var/run/librenms/librenms.pid
20
#
21
# Contributed by: Dries Michiels (driesm.michiels@gmail.com)
22
23
. /etc/rc.subr
24
25
name=librenms
26
rcvar="${name}_enable"
27
28
load_rc_config $name
29
30
: ${librenms_enable:="NO"}
31
: ${librenms_user:="%%USER%%"}
32
: ${librenms_group:="%%GROUP%%"}
33
: ${librenms_pid:="/var/run/librenms/librenms.pid"}
34
35
pidfile="$librenms_pid"
36
procname="%%PYTHON%%"
37
command="/usr/sbin/daemon"
38
39
command_args="-S -p $pidfile $procname %%WWWDIR%%/librenms-service.py -m"
40
41
run_rc_command "$1"
(-)net-mgmt/librenms/files/pkg-message.in (+6 lines)
Lines 9-14 Link Here
9
9
10
with the following notes:
10
with the following notes:
11
- Installation directory is %%WWWDIR%%
11
- Installation directory is %%WWWDIR%%
12
13
When installed using the PYPOLLER option (default)
12
- The following lines should be added to /etc/crontab:
14
- The following lines should be added to /etc/crontab:
13
15
14
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
16
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
Lines 21-26 Link Here
21
01	*	*	*	*	www	%%PHP%% %%WWWDIR%%/billing-calculate.php >> /dev/null 2>&1
23
01	*	*	*	*	www	%%PHP%% %%WWWDIR%%/billing-calculate.php >> /dev/null 2>&1
22
*/5	*	*	*	*	www	%%PHP%% %%WWWDIR%%/check-services.php >> /dev/null 2>&1
24
*/5	*	*	*	*	www	%%PHP%% %%WWWDIR%%/check-services.php >> /dev/null 2>&1
23
25
26
When installed using the PYSERVICE option (non-default)
27
- The poller service should be enabled in rc.conf with:
28
sysrc librenms_enable="YES"
29
24
For a fresh install, you need to create an APP_KEY:
30
For a fresh install, you need to create an APP_KEY:
25
31
26
cd %%WWWDIR%%
32
cd %%WWWDIR%%

Return to bug 246105