aboutsummaryrefslogtreecommitdiff
path: root/sysutils/munin-common
diff options
context:
space:
mode:
authorMathieu Arnold <mat@FreeBSD.org>2014-12-10 15:52:14 +0000
committerMathieu Arnold <mat@FreeBSD.org>2014-12-10 15:52:14 +0000
commit2ff6de7ee9df7257463fcccb9cc62815f7971552 (patch)
treee2208a6fea71c2f18a82ec66c6b61c7803a64617 /sysutils/munin-common
parent8f2eb85addde9fbe661ec02de9f6efd9ae77113c (diff)
downloadports-2ff6de7ee9df7257463fcccb9cc62815f7971552.tar.gz
ports-2ff6de7ee9df7257463fcccb9cc62815f7971552.zip
Fix the bind9_rndc plugin wrt Perl 5.18+ hash randomzation.
While there, group all patches for the three ports in munin-common, and remove an obsolete patch. PR: 195689 Submitted by: Vlad "Blackflow" K. Sponsored by: Absolight
Notes
Notes: svn path=/head/; revision=374474
Diffstat (limited to 'sysutils/munin-common')
-rw-r--r--sysutils/munin-common/files/patch-node_munin-node.conf.in19
-rw-r--r--sysutils/munin-common/files/patch-node_sbin_munin-node13
-rw-r--r--sysutils/munin-common/files/patch-node_sbin_munin-node-configure13
-rw-r--r--sysutils/munin-common/files/patch-node_sbin_munin-run12
-rw-r--r--sysutils/munin-common/files/patch-plugins_node.d.freebsd_if__.in65
-rw-r--r--sysutils/munin-common/files/patch-plugins_node.d.freebsd_if__errcoll__.in49
-rw-r--r--sysutils/munin-common/files/patch-plugins_node.d.freebsd_if__packets__.in113
-rw-r--r--sysutils/munin-common/files/patch-plugins_node.d.freebsd_iostat.in16
-rw-r--r--sysutils/munin-common/files/patch-plugins_node.d_bind9__rndc.in52
-rw-r--r--sysutils/munin-common/files/patch-plugins_node.d_hddtemp__smartctl.in11
-rw-r--r--sysutils/munin-common/files/patch-plugins_node.d_multiping.in10
-rw-r--r--sysutils/munin-common/files/patch-plugins_node.d_nutups__.in67
-rw-r--r--sysutils/munin-common/files/patch-plugins_node.d_squeezebox__.in38
-rw-r--r--sysutils/munin-common/munin.mk6
14 files changed, 479 insertions, 5 deletions
diff --git a/sysutils/munin-common/files/patch-node_munin-node.conf.in b/sysutils/munin-common/files/patch-node_munin-node.conf.in
new file mode 100644
index 000000000000..58a7ad15cc4c
--- /dev/null
+++ b/sysutils/munin-common/files/patch-node_munin-node.conf.in
@@ -0,0 +1,19 @@
+--- node/munin-node.conf.in.orig 2014-11-24 21:46:24 UTC
++++ node/munin-node.conf.in
+@@ -10,7 +10,7 @@ background 1
+ setsid 1
+
+ user root
+-group root
++group wheel
+
+ # This is the timeout for the whole transaction.
+ # Units are in sec. Default is 15 min
+@@ -30,6 +30,7 @@ ignore_file %$
+ ignore_file \.dpkg-(tmp|new|old|dist)$
+ ignore_file \.rpm(save|new)$
+ ignore_file \.pod$
++ignore_file \.sample$
+
+ # Set this if the client doesn't report the correct hostname when
+ # telnetting to localhost, port 4949
diff --git a/sysutils/munin-common/files/patch-node_sbin_munin-node b/sysutils/munin-common/files/patch-node_sbin_munin-node
new file mode 100644
index 000000000000..b0acdec0560a
--- /dev/null
+++ b/sysutils/munin-common/files/patch-node_sbin_munin-node
@@ -0,0 +1,13 @@
+--- node/sbin/munin-node.orig 2014-11-24 21:46:24 UTC
++++ node/sbin/munin-node
+@@ -54,6 +54,10 @@ sub main
+ $ENV{$key} = $1;
+ }
+
++ # plugins run in taint mode because the uid is changed, so the path
++ # must not contain writable directories.
++ $ENV{PATH}='/bin:/sbin:/usr/bin:/usr/sbin:%%PREFIX%%/bin:%%PREFIX%%/sbin';
++
+ parse_args();
+
+ my $config = Munin::Node::Config->instance();
diff --git a/sysutils/munin-common/files/patch-node_sbin_munin-node-configure b/sysutils/munin-common/files/patch-node_sbin_munin-node-configure
new file mode 100644
index 000000000000..b83164780a53
--- /dev/null
+++ b/sysutils/munin-common/files/patch-node_sbin_munin-node-configure
@@ -0,0 +1,13 @@
+--- node/sbin/munin-node-configure.orig 2014-11-24 21:46:24 UTC
++++ node/sbin/munin-node-configure
+@@ -23,6 +23,10 @@ use warnings;
+
+ use Getopt::Long;
+
++# plugins run in taint mode because the uid is changed, so the path
++# must not contain writable directories.
++$ENV{PATH}='/bin:/sbin:/usr/bin:/usr/sbin:%%PREFIX%%/bin:%%PREFIX%%/sbin';
++
+ use Munin::Common::Defaults;
+ use Munin::Node::Configure::PluginList;
+ use Munin::Node::Configure::Debug;
diff --git a/sysutils/munin-common/files/patch-node_sbin_munin-run b/sysutils/munin-common/files/patch-node_sbin_munin-run
new file mode 100644
index 000000000000..f844a2373779
--- /dev/null
+++ b/sysutils/munin-common/files/patch-node_sbin_munin-run
@@ -0,0 +1,12 @@
+--- node/sbin/munin-run.orig 2014-11-24 21:46:24 UTC
++++ node/sbin/munin-run
+@@ -52,6 +52,9 @@ sub main
+ $ENV{$key} =~ /^(.*)$/;
+ $ENV{$key} = $1;
+ }
++ # plugins run in taint mode because the uid is changed, so the path
++ # must not contain writable directories.
++ $ENV{PATH}='/bin:/sbin:/usr/bin:/usr/sbin:%%PREFIX%%/bin:%%PREFIX%%/sbin';
+
+ $0 =~ /^(.*)$/;
+ $0 = $1;
diff --git a/sysutils/munin-common/files/patch-plugins_node.d.freebsd_if__.in b/sysutils/munin-common/files/patch-plugins_node.d.freebsd_if__.in
new file mode 100644
index 000000000000..51afb50f933b
--- /dev/null
+++ b/sysutils/munin-common/files/patch-plugins_node.d.freebsd_if__.in
@@ -0,0 +1,65 @@
+--- plugins/node.d.freebsd/if_.in.orig 2014-11-24 21:46:24 UTC
++++ plugins/node.d.freebsd/if_.in
+@@ -22,7 +22,7 @@
+ INTERFACE=${0##*if_}
+
+ if [ "$1" = "autoconf" ]; then
+- if [ -x /usr/bin/netstat ]; then
++ if [ -x /sbin/ifconfig -o -x /usr/bin/netstat ]; then
+ echo yes
+ exit 0
+ else
+@@ -32,8 +32,12 @@ if [ "$1" = "autoconf" ]; then
+ fi
+
+ if [ "$1" = "suggest" ]; then
+- if [ -x /usr/bin/netstat ]; then
+- netstat -i -b -n | sed -n -e '/^faith/d' -e '/^lo[0-9]/d' -e '/^pflog/d' -e '/<Link#[0-9]*>/s/\** .*//p'
++ if [ -x /sbin/ifconfig ]
++ then
++ ifconfig -l | sed -Ee 's/[[:<:]](pfsync|faith|pf(log|sync)|lo|plip|carp|enc|fwe)[^ ]*//g' | xargs -n 1 echo
++ exit 0
++ elif [ -x /usr/bin/netstat ]; then
++ netstat -i -b -n | sed -n -e '/^faith/d' -e '/^lo[0-9]/d' -e '/^pf(log|sync)/d' -e '/<Link#[0-9]*>/s/\** .*//p'
+ exit 0
+ else
+ exit 1
+@@ -68,8 +72,14 @@ BEGIN { rsum = 0; osum = 0; }
+ /<Link#[0-9]*>/ {
+ if (NF == 10) {
+ rsum += $6; osum += $9;
+- } else {
+- rsum += $7; osum += $10;
++ } else if (NF == 11) {
++ if ($4 ~ /:/) {
++ rsum += $7; osum += $10;
++ } else {
++ rsum += $7; osum += $10;
++ }
++ } else { # NF == 12
++ rsum += $8; osum += $11;
+ }
+ }
+ END {
+@@ -83,9 +93,18 @@ else
+ if (NF == 10) {
+ print "rbytes.value", $6;
+ print "obytes.value", $9;
+- } else {
+- print "rbytes.value", $7;
+- print "obytes.value", $10;
++ } else if (NF == 11) {
++ if ($4 ~ /:/) {
++ print "rbytes.value", $7;
++ print "obytes.value", $10;
++ } else {
++ print "rbytes.value", $7;
++ print "obytes.value", $10;
++ }
++ } else { # NF == 12
++ print "rbytes.value", $8;
++ print "obytes.value", $11;
+ }
+ }'
+ fi
++
diff --git a/sysutils/munin-common/files/patch-plugins_node.d.freebsd_if__errcoll__.in b/sysutils/munin-common/files/patch-plugins_node.d.freebsd_if__errcoll__.in
new file mode 100644
index 000000000000..85ec6c6d0dce
--- /dev/null
+++ b/sysutils/munin-common/files/patch-plugins_node.d.freebsd_if__errcoll__.in
@@ -0,0 +1,49 @@
+--- plugins/node.d.freebsd/if_errcoll_.in.orig 2014-11-24 21:46:24 UTC
++++ plugins/node.d.freebsd/if_errcoll_.in
+@@ -19,7 +19,7 @@
+ INTERFACE=${0##*if_errcoll_}
+
+ if [ "$1" = "autoconf" ]; then
+- if [ -x /usr/bin/netstat ]; then
++ if [ -x /sbin/ifconfig -o -x /usr/bin/netstat ]; then
+ echo yes
+ exit 0
+ else
+@@ -29,8 +29,12 @@ if [ "$1" = "autoconf" ]; then
+ fi
+
+ if [ "$1" = "suggest" ]; then
+- if [ -x /usr/bin/netstat ]; then
+- netstat -i -b -n | sed -n -e '/^faith/d' -e '/^lo[0-9]/d' -e '/^pflog/d' -e '/<Link#[0-9]*>/s/\** .*//p'
++ if [ -x /sbin/ifconfig ]
++ then
++ ifconfig -l | sed -Ee 's/[[:<:]](pfsync|faith|pf(log|sync)|lo|plip|carp|enc|fwe)[^ ]*//g' | xargs -n 1 echo
++ exit 0
++ elif [ -x /usr/bin/netstat ]; then
++ netstat -i -b -n | sed -n -e '/^faith/d' -e '/^lo[0-9]/d' -e '/^pf(log|sync)/d' -e '/<Link#[0-9]*>/s/\** .*//p'
+ exit 0
+ else
+ exit 1
+@@ -59,9 +63,19 @@ fi;
+ print "ierrors.value", $5;
+ print "oerrors.value", $8;
+ print "collisions.value", $10;
+- } else {
++ } else if (NF == 11) {
++ if ($4 ~ /:/) {
++ print "ierrors.value", $6;
++ print "oerrors.value", $9;
++ print "collisions.value", $11;
++ } else {
++ print "ierrors.value", $5;
++ print "oerrors.value", $9;
++ print "collisions.value", $11;
++ }
++ } else { # NF == 12
+ print "ierrors.value", $6;
+- print "oerrors.value", $9;
+- print "collisions.value", $11;
++ print "oerrors.value", $10;
++ print "collisions.value", $12;
+ }
+ }'
diff --git a/sysutils/munin-common/files/patch-plugins_node.d.freebsd_if__packets__.in b/sysutils/munin-common/files/patch-plugins_node.d.freebsd_if__packets__.in
new file mode 100644
index 000000000000..23b4536a8b87
--- /dev/null
+++ b/sysutils/munin-common/files/patch-plugins_node.d.freebsd_if__packets__.in
@@ -0,0 +1,113 @@
+--- plugins/node.d.freebsd/if_packets_.in.orig 2014-12-10 15:34:51 UTC
++++ plugins/node.d.freebsd/if_packets_.in
+@@ -0,0 +1,110 @@
++#!@@GOODSH@@
++# -*- sh -*-
++#
++# Wildcard-plugin to monitor network interfaces. To monitor an
++# interface, link if_packets_<interface> to this file. E.g.
++#
++# ln -s /usr/share/munin/node/plugins-auto/if_packets_ /etc/munin/node.d/if_packets_eth0
++#
++# ...will monitor eth0.
++#
++# To aggregate all network interfaces on the system (except lo0),
++# link if_packets_aggregated to this file.
++#
++# Any device found in /usr/bin/netstat can be monitored.
++#
++# Magic markers (optional - used by munin-config and some installation
++# scripts):
++#
++#%# family=auto
++#%# capabilities=autoconf suggest
++
++INTERFACE=${0##*if_packets_}
++
++if [ "$1" = "autoconf" ]; then
++ if [ -x /sbin/ifconfig -o -x /usr/bin/netstat ]; then
++ echo yes
++ exit 0
++ else
++ echo "no (/usr/bin/netstat not found)"
++ exit 0
++ fi
++fi
++
++if [ "$1" = "suggest" ]; then
++ if [ -x /sbin/ifconfig ]
++ then
++ ifconfig -l | sed -Ee 's/[[:<:]](pfsync|faith|pf(log|sync)|lo|plip|carp|enc|fwe)[^ ]*//g' | xargs -n 1 echo
++ exit 0
++ elif [ -x /usr/bin/netstat ]; then
++ netstat -i -b -n | sed -n -e '/^faith/d' -e '/^lo[0-9]/d' -e '/^pf(log|sync)/d' -e '/<Link#[0-9]*>/s/\** .*//p'
++ exit 0
++ else
++ exit 1
++ fi
++fi
++
++if [ "$1" = "config" ]; then
++
++ echo "graph_order rpackets opackets"
++ echo "graph_title $INTERFACE pps"
++ echo 'graph_args --base 1000'
++ echo 'graph_vlabel packets per ${graph_period} in (-) / out (+)'
++ echo 'graph_category network'
++ echo "graph_info This graph shows the packets counter of the $INTERFACE network interface. Please note that the traffic is shown in packets per second."
++ echo 'rpackets.label received'
++ echo 'rpackets.type COUNTER'
++ echo 'rpackets.graph no'
++
++ echo 'rpackets.min 0'
++ echo 'opackets.label pps'
++ echo 'opackets.type COUNTER'
++ echo 'opackets.negative rpackets'
++
++ echo 'opackets.min 0'
++ echo "opackets.info Packets sent (+) and received (-) on the $INTERFACE network interface."
++ exit 0
++fi
++
++if [ "$INTERFACE" = "aggregated" ]; then
++ /usr/bin/netstat -i -b -n | grep -v '^lo' | awk '
++BEGIN { rsum = 0; osum = 0; }
++/<Link#[0-9]*>/ {
++ if (NF == 10) {
++ rsum += $4; osum += $7;
++ } else if (NF == 11) {
++ if ($4 ~ /:/) {
++ rsum += $5; osum += $8;
++ } else {
++ rsum += $4; osum += $8;
++ }
++ } else { # NF == 12
++ rsum += $6; osum += $9;
++ }
++}
++END {
++ printf "rpackets.value %i\n", rsum;
++ printf "opackets.value %i\n", osum;
++}'
++
++else
++ /usr/bin/netstat -i -b -n -I $INTERFACE | awk '
++/<Link#[0-9]*>/ {
++ if (NF == 10) {
++ print "rpackets.value", $4;
++ print "opackets.value", $7;
++ } else if (NF == 11) {
++ if ($4 ~ /:/) {
++ print "rpackets.value", $5;
++ print "opackets.value", $8;
++ } else {
++ print "rpackets.value", $4;
++ print "opackets.value", $8;
++ }
++ } else { # NF == 12
++ print "rpackets.value", $5;
++ print "opackets.value", $9;
++ }
++}'
++fi
++
diff --git a/sysutils/munin-common/files/patch-plugins_node.d.freebsd_iostat.in b/sysutils/munin-common/files/patch-plugins_node.d.freebsd_iostat.in
new file mode 100644
index 000000000000..5ee2534c53f6
--- /dev/null
+++ b/sysutils/munin-common/files/patch-plugins_node.d.freebsd_iostat.in
@@ -0,0 +1,16 @@
+--- plugins/node.d.freebsd/iostat.in.orig 2014-11-24 21:46:24 UTC
++++ plugins/node.d.freebsd/iostat.in
+@@ -56,13 +56,11 @@ if [ "$1" = "config" ]; then
+ for d in $drives; do
+ echo "${d}_read.label ${d}"
+ echo "${d}_read.type DERIVE"
+- echo "${d}_read.max 2000"
+ echo "${d}_read.min 0"
+ echo "${d}_read.graph no"
+ echo "${d}_write.label ${d}"
+ echo "${d}_write.info I/O on device ${d}"
+ echo "${d}_write.type DERIVE"
+- echo "${d}_write.max 2000"
+ echo "${d}_write.min 0"
+ echo "${d}_write.negative ${d}_read"
+ done
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..be5344bbb3ee
--- /dev/null
+++ b/sysutils/munin-common/files/patch-plugins_node.d_bind9__rndc.in
@@ -0,0 +1,52 @@
+--- plugins/node.d/bind9_rndc.in.orig 2014-11-24 21:46:24 UTC
++++ plugins/node.d/bind9_rndc.in
+@@ -63,6 +63,7 @@ use strict;
+ my $rndc = defined($ENV{rndc}) ? $ENV{rndc} : '/usr/sbin/rndc';
+ my $querystats = $ENV{querystats} || '/var/run/named.stats';
+ my %IN;
++my @IN_KEYS;
+
+ # attempt to create log file if it doesn't exist
+ if ( ! -r $querystats ) {
+@@ -124,20 +125,13 @@ chomp $line;
+ if ($line eq '++ Incoming Requests ++') {
+ # new format
+
+- %IN = (
+- requests => 0,
+- responses => 0,
+- success => 0,
+- auth_answer => 0,
+- nonauth_answer => 0,
+- nxrrset => 0,
+- failure => 0,
+- nxdomain => 0,
+- recursion => 0,
+- duplicates => 0,
+- transfers => 0,
+- rejections => 0,
+- );
++ @IN_KEYS = ('requests', 'responses', 'success', 'auth_answer',
++ 'nonauth_answer', 'nxrrset', 'failure', 'nxdomain',
++ 'recursion', 'duplicates', 'transfers', 'rejections');
++ %IN = ();
++ for my $key (@IN_KEYS) {
++ $IN{$key} = 0;
++ }
+
+ # jump to server stats section
+ while ($line ne '++ Name Server Statistics ++') {
+@@ -197,11 +191,11 @@ if (defined($ARGV[0]) and ($ARGV[0] eq '
+ print "graph_vlabel queries / \${graph_period}\n";
+ print "graph_category BIND\n";
+
+- for my $key (keys %IN) {
++ for my $key (@IN_KEYS) {
+ print "query_$key.label $key\n";
+ print "query_$key.type DERIVE\n";
+ print "query_$key.min 0\n";
+ }
+ } else {
+- print "query_$_.value $IN{$_}\n" for keys %IN;
++ print "query_$_.value $IN{$_}\n" for @IN_KEYS;
+ }
diff --git a/sysutils/munin-common/files/patch-plugins_node.d_hddtemp__smartctl.in b/sysutils/munin-common/files/patch-plugins_node.d_hddtemp__smartctl.in
new file mode 100644
index 000000000000..b1679c440b70
--- /dev/null
+++ b/sysutils/munin-common/files/patch-plugins_node.d_hddtemp__smartctl.in
@@ -0,0 +1,11 @@
+--- plugins/node.d/hddtemp_smartctl.in.orig 2014-11-24 21:46:24 UTC
++++ plugins/node.d/hddtemp_smartctl.in
+@@ -162,7 +162,7 @@ if ($^O eq 'linux') {
+
+ } elsif ($^O eq 'freebsd') {
+ opendir(DEV, '/dev');
+- @drives = grep /^ad[0-9]+$/, readdir DEV;
++ @drives = grep /^ad[0-9]+$|^ada[0-9]+$/, readdir DEV;
+ closedir(DEV);
+ } elsif ($^O eq 'solaris') {
+ @drives = map { s@.*/@@ ; $_ } glob '/dev/rdsk/c*t*d*s2';
diff --git a/sysutils/munin-common/files/patch-plugins_node.d_multiping.in b/sysutils/munin-common/files/patch-plugins_node.d_multiping.in
new file mode 100644
index 000000000000..7f3e2995214c
--- /dev/null
+++ b/sysutils/munin-common/files/patch-plugins_node.d_multiping.in
@@ -0,0 +1,10 @@
+--- plugins/node.d/multiping.in.orig 2014-11-24 21:46:24 UTC
++++ plugins/node.d/multiping.in
+@@ -59,6 +59,7 @@ if [ -z "$host" ]; then
+ host=${host:-${file_host:-www.google.com}}
+ fi
+
++site=0
+ if [ "$1" = "config" ]; then
+ echo graph_title Ping times
+ echo 'graph_args --base 1000 -l 0'
diff --git a/sysutils/munin-common/files/patch-plugins_node.d_nutups__.in b/sysutils/munin-common/files/patch-plugins_node.d_nutups__.in
new file mode 100644
index 000000000000..00d982968c5e
--- /dev/null
+++ b/sysutils/munin-common/files/patch-plugins_node.d_nutups__.in
@@ -0,0 +1,67 @@
+--- plugins/node.d/nutups_.in.orig 2014-11-24 21:46:24 UTC
++++ plugins/node.d/nutups_.in
+@@ -7,20 +7,25 @@
+ #
+ # usage: ups_upsid_function
+ #
++# env.upsc <command> (default: "/bin/upsc")
++# env.upsconf <filename> (default: "/etc/nut/ups.conf")
++#
+ #%# family=contrib
+ #%# capabilities=autoconf suggest
+
+ UPS=$(basename $0 | cut -d_ -f2)
+ FUNCTION=$(basename $0 | cut -d_ -f3)
++UPSC=${upsc:-/bin/upsc}
++UPSCONF=${upsconf:-/etc/nut/ups.conf}
+
+ if [ "$1" = "autoconf" ]; then
+- [ -x /bin/upsc ] && [ -r /etc/nut/ups.conf ] && echo yes && exit 0
+- echo "no (/bin/upsc or /etc/nut/ups.conf not found)"
++ [ -x $UPSC ] && [ -r $UPSCONF ] && echo yes && exit 0
++ echo "no ($UPSC or $UPSCONF not found)"
+ exit 0
+ fi
+
+ if [ "$1" = "suggest" ]; then
+- grep '^\[[^]]*\]$' /etc/nut/ups.conf \
++ grep '^\[[^]]*\]$' $UPSCONF \
+ | tr -d '][' \
+ | while read ups; do
+ for i in voltages freq charge current; do
+@@ -42,7 +47,7 @@ voltages() {
+ echo "${i}.min 0"
+ done
+ else
+- upsc $UPS | sed -n '/volt/{
++ $UPSC $UPS | sed -n '/volt/{
+ s/://
+ /nominal/s/.* /nominal.value /
+ /voltage/s/\.[^ ]*/.value/
+@@ -64,7 +69,7 @@ charge() {
+ echo "${i}.min 0"
+ done
+ else
+- upsc $UPS | sed -n '/charge/{
++ $UPSC $UPS | sed -n '/charge/{
+ s/^[^:]*\.//g
+ s/:/.value/
+ p
+@@ -87,7 +92,7 @@ frequency() {
+ echo "acfreq.max 100"
+ echo "acfreq.min 5"
+ else
+- upsc $UPS | sed -n '/freq/{s/.*:/acfreq.value/;p}'
++ $UPSC $UPS | sed -n '/freq/{s/.*:/acfreq.value/;p}'
+ fi
+ }
+
+@@ -102,7 +107,7 @@ current() {
+ echo "current.max 100"
+ echo "current.min 0"
+ else
+- upsc $UPS | sed -n '/current/{s/.*:/current.value/;p}'
++ $UPSC $UPS | sed -n '/current/{s/.*:/current.value/;p}'
+ fi
+ }
+
diff --git a/sysutils/munin-common/files/patch-plugins_node.d_squeezebox__.in b/sysutils/munin-common/files/patch-plugins_node.d_squeezebox__.in
new file mode 100644
index 000000000000..9b70cf35cecf
--- /dev/null
+++ b/sysutils/munin-common/files/patch-plugins_node.d_squeezebox__.in
@@ -0,0 +1,38 @@
+--- plugins/node.d/squeezebox_.in.orig 2014-11-24 21:46:24 UTC
++++ plugins/node.d/squeezebox_.in
+@@ -157,7 +157,7 @@ if [ "$CMD" = "years" ]; then
+ printf "graph_order y"
+ echo $years_array | sed 's/ / y/g'
+
+- for i in `seq 0 $no_of_years`; do
++ for i in `jot - 0 $no_of_years`; do
+ year=$(echo ${arr1[$i]})
+ if [ $year = 0 ]; then
+ echo y0.label No year
+@@ -172,7 +172,7 @@ if [ "$CMD" = "years" ]; then
+ done
+ exit 0
+ fi
+- for i in `seq 0 $no_of_years`; do
++ for i in `jot - 0 $no_of_years`; do
+ year=$(echo ${arr1[$i]})
+ printf "y%s.value " ${year}
+ printf "%b" "albums 0 0 year:${year}\nexit\n" | $NC $HOST $PORT | sed 's/%3A/:/g' | cut -d ':' -f 3
+@@ -183,7 +183,7 @@ elif [ "$CMD" = "signalstrength" -o "$CM
+ echo "graph_category Squeezebox"
+ COUNT=$(printf "%b" "player count ?\nexit\n" | $NC $HOST $PORT | cut -d " " -f 3)
+ (( COUNT-- ))
+- for ID in $(seq 0 $COUNT); do
++ for ID in $(jot - 0 $COUNT); do
+ MAC=$(printf "%b" "player id $ID ?\nexit\n" | $NC $HOST $PORT | cut -d " " -f 4 | sed 's/%3A/:/g')
+ NAME=$(printf "%b" "player name $MAC ?\nexit\n" | $NC $HOST $PORT | cut -d " " -f 4 | sed 's/%20/ /g')
+ MAC2=$(echo $MAC | sed 's/://g; s/\./_/g')
+@@ -193,7 +193,7 @@ elif [ "$CMD" = "signalstrength" -o "$CM
+ fi
+ COUNT=$(printf "%b" "player count ?\nexit\n" | $NC $HOST $PORT | cut -d " " -f 3)
+ (( COUNT-- ))
+- for ID in $(seq 0 $COUNT); do
++ for ID in $(jot - 0 $COUNT); do
+ MAC=$(printf "%b" "player id $ID ?\nexit\n" | $NC $HOST $PORT | cut -d " " -f 4 | sed 's/%3A/:/g')
+ VAL=$(printf "%b" "$MAC $CMD ?\nexit\n"| $NC $HOST $PORT | cut -d " " -f 2- | sed "s/$CMD //")
+ MAC2=$(echo $MAC| sed 's/://g')
diff --git a/sysutils/munin-common/munin.mk b/sysutils/munin-common/munin.mk
index bc08f5c92382..b7cc6d73ac9e 100644
--- a/sysutils/munin-common/munin.mk
+++ b/sysutils/munin-common/munin.mk
@@ -1,11 +1,7 @@
MUNIN_VERSION= 2.0.25
MUNIN_SITES= SF/${PORTNAME}/stable/${MUNIN_VERSION}
DISTINFO_FILE= ${PORTSDIR}/sysutils/munin-common/distinfo
-
-.if ${PKGNAMESUFFIX} != -common
-EXTRA_PATCHES+= ${PORTSDIR}/sysutils/munin-common/files/patch-Makefile \
- ${PORTSDIR}/sysutils/munin-common/files/patch-Makefile.config
-.endif
+PATCHDIR= ${.CURDIR}/../../sysutils/munin-common/files
PORTSCOUT= limit:^2\.0\.