diff --git a/sysutils/munin-common/Makefile b/sysutils/munin-common/Makefile index 29416d90c11b..396798339354 100644 --- a/sysutils/munin-common/Makefile +++ b/sysutils/munin-common/Makefile @@ -1,26 +1,27 @@ PORTNAME= munin PORTVERSION= ${MUNIN_VERSION} CATEGORIES= sysutils perl5 -MASTER_SITES= ${MUNIN_SITES} PKGNAMESUFFIX= -common MAINTAINER= flo@FreeBSD.org COMMENT= Common components between a munin node and server WWW= https://munin-monitoring.org/ +LICENSE_FILE= ${WRKSRC}/COPYING + BUILD_DEPENDS= p5-Module-Build>=0:devel/p5-Module-Build \ p5-Net-SSLeay>=0:security/p5-Net-SSLeay RUN_DEPENDS= p5-Net-SSLeay>=0:security/p5-Net-SSLeay USES= cpe gmake perl5 .include "${.CURDIR}/../munin-common/munin.mk" ALL_TARGET= build-common INSTALL_TARGET= install-common NO_ARCH= yes post-install: ${MKDIR} ${STAGEDIR}${LOGDIR} ${STAGEDIR}${STATEDIR} ${STAGEDIR}${SPOOLDIR} ${STAGEDIR}${DBDIR} .include diff --git a/sysutils/munin-common/distinfo b/sysutils/munin-common/distinfo index 39b55e3097c1..331606eb6a81 100644 --- a/sysutils/munin-common/distinfo +++ b/sysutils/munin-common/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1679676638 -SHA256 (munin-2.0.73.tar.gz) = 027853d848206d6f1b06c230baeb2b28a47915f8b73a0aad4f18d497c840350a -SIZE (munin-2.0.73.tar.gz) = 2252776 +TIMESTAMP = 1704717976 +SHA256 (munin-monitoring-munin-2.0.75_GH0.tar.gz) = 9ea2c8d81b96a19e8f26bb9ee6b2cc35790997a53e574c2d4beaf170e5173553 +SIZE (munin-monitoring-munin-2.0.75_GH0.tar.gz) = 2258514 diff --git a/sysutils/munin-common/files/patch-getversion b/sysutils/munin-common/files/patch-getversion new file mode 100644 index 000000000000..7cc33d5dceea --- /dev/null +++ b/sysutils/munin-common/files/patch-getversion @@ -0,0 +1,13 @@ +--- getversion.orig 2023-10-25 08:03:45 UTC ++++ getversion +@@ -74,8 +74,8 @@ generate_version_string_from_dir() { + + if [ -s "RELEASE" ]; then + cat RELEASE +-elif [ "`git rev-parse --is-inside-work-tree 2>/dev/null`" = "true" ]; then +- generate_version_string ++#elif [ "`git rev-parse --is-inside-work-tree 2>/dev/null`" = "true" ]; then ++# generate_version_string + elif [ -n "`generate_version_string_from_dir`" ]; then + generate_version_string_from_dir + else diff --git a/sysutils/munin-common/files/patch-plugins_lib_Munin_Plugin_SNMP.pm b/sysutils/munin-common/files/patch-plugins_lib_Munin_Plugin_SNMP.pm new file mode 100644 index 000000000000..5fce36ffa573 --- /dev/null +++ b/sysutils/munin-common/files/patch-plugins_lib_Munin_Plugin_SNMP.pm @@ -0,0 +1,38 @@ +--- plugins/lib/Munin/Plugin/SNMP.pm.orig 2014-11-24 21:46:24 UTC ++++ plugins/lib/Munin/Plugin/SNMP.pm +@@ -104,7 +104,7 @@ well. + + =cut + +- my ($host, $port, $version, $tail); ++ my ($host, $port, $version, $tail, $domain); + + # Decode plugin/symlink name and extract meaning from it - if possible. + if ($0 =~ /^(?:.*\/)?snmp(v3)?_([^_]+)_(.*)/) { +@@ -122,8 +122,9 @@ well. + $host = $ENV{host} || $host || die "Could not find hostname"; + $version = $ENV{version} || $version || '2'; + $port = $ENV{port} || $port || 161; ++ $domain = $ENV{domain} || $domain || 'UDP/IPv4'; + +- return ($host, $port, $version, $tail); ++ return ($host, $port, $version, $tail, $domain); + } + + +@@ -205,13 +206,14 @@ Security is handled differently for vers + + =cut + +- my ($host, $port, $version, $tail) = config_session(); ++ my ($host, $port, $version, $tail, $domain) = config_session(); + + # Common options. + my @options = ( + -hostname => $host, + -port => $port, + -version => $version, ++ -domain => $domain, + ); + + # User defined options diff --git a/sysutils/munin-common/files/patch-plugins_node.d_bind9__rndc.in b/sysutils/munin-common/files/patch-plugins_node.d_bind9__rndc.in new file mode 100644 index 000000000000..559801bbcadc --- /dev/null +++ b/sysutils/munin-common/files/patch-plugins_node.d_bind9__rndc.in @@ -0,0 +1,24 @@ +--- plugins/node.d/bind9_rndc.in.orig 2018-03-25 14:01:24 UTC ++++ plugins/node.d/bind9_rndc.in +@@ -13,6 +13,7 @@ The following environment variables are + env.rndc /usr/sbin/rndc + env.rndc_options + env.querystats /var/run/named.stats ++ env.rndckeyfile /etc/namedb/rndc.key + + The user/group that runs the plugin must have read access to the stats + file. To change user or group (usually Munin plugins are run as +@@ -62,9 +63,11 @@ License not documented. + use strict; + + my $rndc = defined($ENV{rndc}) ? $ENV{rndc} : '/usr/sbin/rndc'; +-my $rndc_options = defined($ENV{rndc_options}) ? $ENV{rndc_options} : ''; ++my $rndckeyfile = $ENV{rndckeyfile} ? $ENV{rndckeyfile} : '/etc/namedb/rndc.key'; + my $querystats = $ENV{querystats} || '/var/run/named.stats'; + my %IN; ++my @IN_KEYS; ++my @args = ("$rndc","-k","$rndckeyfile","stats"); + + # attempt to create log file if it doesn't exist + if ( ! -r $querystats ) { + diff --git a/sysutils/munin-common/files/patch-test-mktemp b/sysutils/munin-common/files/patch-test-mktemp new file mode 100644 index 000000000000..66608aad9e8e --- /dev/null +++ b/sysutils/munin-common/files/patch-test-mktemp @@ -0,0 +1,11 @@ +--- test-mktemp.orig 2023-02-08 07:57:20 UTC ++++ test-mktemp +@@ -53,7 +53,7 @@ MKTEMP='mktemp -p /tmp/ $1' + testfun temp.XXXXXX + + # FreeBSD way +-MKTEMP="mktemp -t /tmp" ++MKTEMP="mktemp -t $1" + testfun temp.XXXXXX + + # Plain mktemp diff --git a/sysutils/munin-common/munin.mk b/sysutils/munin-common/munin.mk index cbab1a42a9a9..d2850e847c2f 100644 --- a/sysutils/munin-common/munin.mk +++ b/sysutils/munin-common/munin.mk @@ -1,37 +1,38 @@ LICENSE= GPLv2 -MUNIN_VERSION= 2.0.73 -MUNIN_SITES= SF/munin/stable/${MUNIN_VERSION} +MUNIN_VERSION= 2.0.75 +USE_GITHUB= yes +GH_ACCOUNT= munin-monitoring DISTINFO_FILE= ${.CURDIR}/../../sysutils/munin-common/distinfo PATCHDIR= ${.CURDIR}/../../sysutils/munin-common/files PORTSCOUT= limitw:1,even DBDIR?= /var/${PORTNAME} DBDIRNODE?= /var/${PORTNAME} LOGDIR?= /var/log/${PORTNAME} STATEDIR?= /var/run/${PORTNAME} SPOOLDIR?= /var/spool/${PORTNAME} MUNIN_DIRS= BINDIR=${PREFIX}/bin \ CGIDIR=${PREFIX}/www/cgi-bin \ CONFDIR=${ETCDIR} \ DBDIR=${DBDIR} \ DBDIRNODE=${DBDIRNODE} \ DOCDIR=${DOCSDIR} \ HTMLDIR=${WWWDIR} \ LIBDIR=${DATADIR} \ LOGDIR=${LOGDIR} \ SBINDIR=${PREFIX}/sbin \ STATEDIR=${STATEDIR} \ SPOOLDIR=${SPOOLDIR} MAKE_ARGS= ${MUNIN_DIRS} \ BASH=${LOCALBASE}/bin/bash \ PERL=${PERL} PERLLIB=${PREFIX}/${SITE_PERL_REL} USERS= munin GROUPS= munin PLIST_SUB= ${MUNIN_DIRS} USER=${USERS} GROUP=${GROUPS} SUB_LIST= ${MUNIN_DIRS} USER=${USERS} GROUP=${GROUPS} CPE_VENDOR= munin-monitoring MAKE_JOBS_UNSAFE= Try to use things before making thems. diff --git a/sysutils/munin-master/Makefile b/sysutils/munin-master/Makefile index cd6e59c28cb5..2bd23d7d22f9 100644 --- a/sysutils/munin-master/Makefile +++ b/sysutils/munin-master/Makefile @@ -1,63 +1,64 @@ PORTNAME= munin PORTVERSION= ${MUNIN_VERSION} CATEGORIES= sysutils perl5 -MASTER_SITES= ${MUNIN_SITES} PKGNAMESUFFIX= -master MAINTAINER= flo@FreeBSD.org COMMENT= Collector part of Munin WWW= https://munin-monitoring.org/ +LICENSE_FILE= ${WRKSRC}/COPYING + BUILD_DEPENDS= munin-common>=${MUNIN_VERSION}:sysutils/munin-common \ p5-CGI>=0:www/p5-CGI \ p5-DateTime-HiRes>=0:devel/p5-DateTime-HiRes \ p5-File-Copy-Recursive>=0:devel/p5-File-Copy-Recursive \ p5-HTML-Template>=0:www/p5-HTML-Template \ p5-IO-Socket-INET6>=0:net/p5-IO-Socket-INET6 \ p5-Log-Log4perl>=0:devel/p5-Log-Log4perl \ p5-Module-Build>=0:devel/p5-Module-Build \ p5-Net-SSLeay>=0:security/p5-Net-SSLeay \ p5-Params-Validate>=0:devel/p5-Params-Validate \ rrdtool>=0:databases/rrdtool RUN_DEPENDS= munin-common>=${MUNIN_VERSION}:sysutils/munin-common \ p5-CGI-Fast>=0:www/p5-CGI-Fast \ p5-CGI>=0:www/p5-CGI \ p5-Date-Manip>=0:devel/p5-Date-Manip \ p5-DateTime-HiRes>=0:devel/p5-DateTime-HiRes \ p5-FCGI>=0:www/p5-FCGI \ p5-File-Copy-Recursive>=0:devel/p5-File-Copy-Recursive \ p5-HTML-Template>=0:www/p5-HTML-Template \ p5-IO-Socket-INET6>=0:net/p5-IO-Socket-INET6 \ p5-Log-Log4perl>=0:devel/p5-Log-Log4perl \ p5-Net-SSLeay>=0:security/p5-Net-SSLeay \ p5-Params-Validate>=0:devel/p5-Params-Validate \ p5-URI>=0:net/p5-URI \ rrdtool>=0:databases/rrdtool USES= cpe gmake perl5 .include "${.CURDIR}/../munin-common/munin.mk" ALL_TARGET= infiles build-master build-man INSTALL_TARGET= install-master-prime NO_ARCH= yes PORTSCOUT= ignore:1 SUB_FILES= pkg-message PLIST_SUB+= WWWGRP=${WWWGRP} \ WWWOWN=${WWWOWN} post-install: (cd ${WRKSRC}/build/doc; \ ${INSTALL_MAN} munin.conf.5 ${STAGEDIR}${MAN5PREFIX}/man/man5; \ ${INSTALL_MAN} munin-cron.8 munin-graph.8 munin-html.8 munin-limits.8 munin-update.8 ${STAGEDIR}${MAN8PREFIX}/man/man8; \ ) - (cd ${STAGEDIR}${ETCDIR}; for i in `find . -type f`; do mv $$i $$i.sample; done) + (cd ${STAGEDIR}${ETCDIR}; for i in `find . -type f`; do ${MV} $$i $$i.sample; done) ${MV} ${STAGEDIR}${WWWDIR}/.htaccess ${STAGEDIR}${WWWDIR}/.htaccess.sample ${INSTALL_DATA} ${FILESDIR}/newsyslog ${STAGEDIR}${ETCDIR}/munin-master.newsyslog ${MKDIR} ${STAGEDIR}${LOCALBASE}/etc/cron.d ${INSTALL_DATA} ${FILESDIR}/cron ${STAGEDIR}${ETCDIR}/munin-master.cron .include diff --git a/sysutils/munin-node/Makefile b/sysutils/munin-node/Makefile index 7743572eb7ae..1f85fc8fa442 100644 --- a/sysutils/munin-node/Makefile +++ b/sysutils/munin-node/Makefile @@ -1,103 +1,106 @@ PORTNAME= munin PORTVERSION= ${MUNIN_VERSION} CATEGORIES= sysutils perl5 -MASTER_SITES= ${MUNIN_SITES} PKGNAMESUFFIX= -node MAINTAINER= flo@FreeBSD.org COMMENT= Node-specific part of Munin WWW= https://munin-monitoring.org/ +LICENSE_FILE= ${WRKSRC}/COPYING + BUILD_DEPENDS= bash:shells/bash \ munin-common>=${MUNIN_VERSION}:sysutils/munin-common \ p5-DateTime-HiRes>=0:devel/p5-DateTime-HiRes \ p5-Log-Log4perl>=0:devel/p5-Log-Log4perl \ p5-Module-Build>=0:devel/p5-Module-Build \ p5-Net-Server>=0:net/p5-Net-Server RUN_DEPENDS= bash:shells/bash \ munin-common>=${MUNIN_VERSION}:sysutils/munin-common \ p5-Cache-Cache>=0:devel/p5-Cache-Cache \ p5-DateTime-HiRes>=0:devel/p5-DateTime-HiRes \ p5-libwww>=0:www/p5-libwww \ p5-List-MoreUtils>0:lang/p5-List-MoreUtils \ p5-Log-Log4perl>=0:devel/p5-Log-Log4perl \ p5-Net-CIDR>=0:net-mgmt/p5-Net-CIDR \ p5-Net-Server>=0:net/p5-Net-Server USES= cpe gmake perl5 shebangfix +USE_GITHUB= yes +GH_ACCOUNT= munin-monitoring USE_RC_SUBR= munin-asyncd munin-node SHEBANG_FILES= node/bin/munindoc node/sbin/munin-node \ node/sbin/munin-node-configure node/sbin/munin-run .include "${.CURDIR}/../munin-common/munin.mk" ALL_TARGET= build-node build-plugins build/node/_bin/munin-async \ build/node/_bin/munin-asyncd INSTALL_TARGET= install-node-prime install-async-prime install-plugins-prime REINPLACE_ARGS= -i "" NO_ARCH= yes PORTSCOUT= ignore:1 SUB_FILES= pkg-message plugins.conf OPTIONS_DEFINE= JAVA PERL PYTHON SNMP OPTIONS_DEFAULT= PERL PYTHON SNMP OPTIONS_SUB= yes JAVA_DESC= Include JAVA plugins PERL_DESC= Include all Perl modules (adds dependencies) PYTHON_DESC= Include Python plugins SNMP_DESC= Include SNMP plugins JAVA_USE= JAVA=yes JAVA_INSTALL_TARGET= install-plugins-java JAVA_VARS= JAVA_BUILD=yes \ JAVA_RUN=yes PERL_RUN_DEPENDS= p5-DBD-Pg>=0:databases/p5-DBD-Pg \ p5-Net-DNS>=0:dns/p5-Net-DNS \ p5-Net-IP>=0:net-mgmt/p5-Net-IP \ p5-XML-LibXML>=0:textproc/p5-XML-LibXML \ p5-XML-Parser>=0:textproc/p5-XML-Parser PYTHON_USES= python SNMP_BUILD_DEPENDS= p5-Net-SNMP>=0:net-mgmt/p5-Net-SNMP SNMP_RUN_DEPENDS= p5-Net-SNMP>=0:net-mgmt/p5-Net-SNMP post-patch: @${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' \ ${WRKSRC}/node/sbin/munin-node \ ${WRKSRC}/node/sbin/munin-node-configure \ ${WRKSRC}/node/sbin/munin-run @${RM} ${WRKSRC}/node/sbin/munin-node.bak \ ${WRKSRC}/node/sbin/munin-node-configure.bak \ ${WRKSRC}/node/sbin/munin-run.bak @${REINPLACE_CMD} \ -e 's|^\(BASH[[:space:]]*:=\).*|\1 ${bash_CMD}|' \ -e 's|^\(JAVARUN[[:space:]]*:=\).*|\1 ${java_CMD}|' \ -e 's|^\(PERL[[:space:]]*:=\).*|\1 ${perl_CMD}|' \ -e 's|^\(PYTHON[[:space:]]*:=\).*|\1 ${python_CMD}|' \ -e 's|^\(RUBY[[:space:]]*:=\).*|\1 ${ruby_CMD}|' \ ${WRKSRC}/Makefile.config @${FIND} ${WRKSRC}/node/sbin -type f -name "*.orig" -delete post-install: ${MKDIR} ${STAGEDIR}${DBDIR}/plugin-state ${STAGEDIR}${SPOOLDIR}/async ${INSTALL_SCRIPT} ${.CURDIR}/plugins/* ${STAGEDIR}${DATADIR}/plugins/ ${INSTALL_DATA} ${WRKSRC}/build/node/munin-node.conf \ ${STAGEDIR}${ETCDIR}/munin-node.conf.sample ${INSTALL_DATA} ${WRKDIR}/plugins.conf \ ${STAGEDIR}${ETCDIR}/plugins.conf.sample (cd ${WRKSRC}/node/blib/bindoc; \ ${INSTALL_MAN} munin-node-configure.1 munin-node.1 munin-run.1 ${STAGEDIR}${MAN1PREFIX}/man/man1; \ ) (cd ${WRKSRC}/build/doc; \ ${INSTALL_MAN} munin-node.conf.5 ${STAGEDIR}${MAN5PREFIX}/man/man5; \ ${INSTALL_MAN} munin.8 ${STAGEDIR}${MAN8PREFIX}/man/man8; \ ) ${INSTALL_DATA} ${FILESDIR}/newsyslog ${STAGEDIR}${ETCDIR}/munin-node.newsyslog .include