Gentoo Archives: gentoo-commits

From: Thomas Deutschmann <whissi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-admin/collectd/files/, app-admin/collectd/, profiles/arch/amd64/, ...
Date: Wed, 21 Sep 2016 23:58:40
Message-Id: 1474502309.26b428cbf35e52dde7e530fc81ae3652e3fe8d48.whissi@gentoo
1 commit: 26b428cbf35e52dde7e530fc81ae3652e3fe8d48
2 Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
3 AuthorDate: Wed Sep 21 23:55:38 2016 +0000
4 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
5 CommitDate: Wed Sep 21 23:58:29 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=26b428cb
7
8 app-admin/collectd: Bump to v5.6.0
9
10 New plugins:
11 - chrony
12 - cpusleep
13 - gps
14 - lua
15 - mqtt
16 - notify_nagios
17 - xencpu
18
19 Package-Manager: portage-2.3.1
20
21 app-admin/collectd/Manifest | 1 +
22 app-admin/collectd/collectd-5.6.0.ebuild | 495 +++++++++++++++++++++
23 .../files/collectd-5.6.0-fix-apache-plugin.patch | 26 ++
24 .../collectd/files/collectd-5.6.0-gentoo.patch | 153 +++++++
25 .../collectd/files/collectd-5.6.0-issue-1896.patch | 76 ++++
26 app-admin/collectd/metadata.xml | 7 +
27 profiles/arch/amd64/package.use.mask | 4 +
28 profiles/arch/x86/package.use.mask | 4 +
29 profiles/base/package.use.mask | 4 +
30 9 files changed, 770 insertions(+)
31
32 diff --git a/app-admin/collectd/Manifest b/app-admin/collectd/Manifest
33 index c5865d3..31a5a53 100644
34 --- a/app-admin/collectd/Manifest
35 +++ b/app-admin/collectd/Manifest
36 @@ -1 +1,2 @@
37 DIST collectd-5.5.2.tar.bz2 1800476 SHA256 017f3a4062187e594d8ab6af685655fb82a8a942dc574668e68242bdb8ba820f SHA512 9d311db4f3677b95e3a47c03af01bdf1127957f6fccb6c601455632d0ea3b39e3f4cd9a6f8f510083e208714bbb0da2e04aaa574a90b0ad6fe984506675475b3 WHIRLPOOL 98ed4fb29eec0ae660d3e1651380a3f17f7bf7f22e687633c4a44974bc84e49cf8de11fd6fea349bfe24809ac3c29a407459a1203b72bcf741e1587c6c0b1773
38 +DIST collectd-5.6.0.tar.bz2 1818470 SHA256 f0ffbbd91fac3682bd324a74b9b4c9eabe781394b303b5cfd457c4cfbe748623 SHA512 5eecd7fe1619850b29e7853e0ab8f9eb7688d0fdf5687cf04930c75a94181c53d7dc0601a1dfa02417bdeb63cccf09b87acd7129e7f155b8d11147ec46982ed8 WHIRLPOOL 690e50f16318e9df39eac62010f8b0a57059356deeedd72505cc4a980876261a198edac095317f97b03913167dcfc49bf9f3b46986bbc3653628856e3a005111
39
40 diff --git a/app-admin/collectd/collectd-5.6.0.ebuild b/app-admin/collectd/collectd-5.6.0.ebuild
41 new file mode 100644
42 index 00000000..e64baa9
43 --- /dev/null
44 +++ b/app-admin/collectd/collectd-5.6.0.ebuild
45 @@ -0,0 +1,495 @@
46 +# Copyright 1999-2016 Gentoo Foundation
47 +# Distributed under the terms of the GNU General Public License v2
48 +# $Id$
49 +
50 +EAPI="6"
51 +
52 +PYTHON_COMPAT=( python{2_7,3_4,3_5} )
53 +JAVA_PKG_OPT_USE="collectd_plugins_java"
54 +
55 +inherit autotools fcaps flag-o-matic java-pkg-opt-2 linux-info multilib perl-functions python-single-r1 systemd user
56 +
57 +DESCRIPTION="Collects system statistics and provides mechanisms to store the values"
58 +
59 +HOMEPAGE="https://collectd.org/"
60 +SRC_URI="${HOMEPAGE}/files/${P}.tar.bz2"
61 +
62 +LICENSE="GPL-2"
63 +SLOT="0"
64 +KEYWORDS="~amd64 ~arm ~x86"
65 +IUSE="contrib debug java kernel_Darwin kernel_FreeBSD kernel_linux perl selinux static-libs udev xfs"
66 +
67 +# The plugin lists have to follow here since they extend IUSE
68 +
69 +# Plugins that don't build (e.g. dependencies not in Gentoo)
70 +# apple_sensors: Requires libIOKit
71 +# aquaero: Requires aerotools-ng/libaquaero5
72 +# barometer: Requires libi2c (i2c_smbus_read_i2c_block_data)
73 +# grpc: Requires libgrpc
74 +# lpar: Requires libperfstat (AIX only)
75 +# mic: Requires Intel Many Integrated Core Architecture API
76 +# (part of Intel's Xeon Phi software)
77 +# netapp: Requires libnetapp (http://communities.netapp.com/docs/DOC-1110)
78 +# pf: Requires BSD packet filter
79 +# pinba: Requires MySQL Pinba engine (http://pinba.org/)
80 +# tape: Requires libkstat (Solaris only)
81 +# write_mongodb: https://github.com/collectd/collectd/issues/492
82 +# write_riemann: Requires riemann-c-client
83 +# xmms: Requires libxmms (v1)
84 +# zone: Solaris only...
85 +COLLECTD_IMPOSSIBLE_PLUGINS="apple_sensors aquaero barometer grpc lpar mic
86 + netapp pf pinba tape write_kafka write_mongodb write_riemann xmms
87 + zone"
88 +
89 +# Plugins that have been (compile) tested and can be enabled via COLLECTD_PLUGINS
90 +COLLECTD_TESTED_PLUGINS="aggregation amqp apache apcups ascent battery bind
91 + ceph cgroups chrony conntrack contextswitch cpu cpufreq cpusleep
92 + csv curl curl_json curl_xml dbi df disk dns drbd email entropy
93 + ethstat exec fhcount filecount fscache gmond gps hddtemp interface
94 + ipc ipmi iptables ipvs irq java lua load logfile log_logstash lvm
95 + madwifi match_empty_counter match_hashed match_regex match_timediff
96 + match_value mbmon md memcachec memcached memory modbus mqtt
97 + multimeter mysql netlink network network nfs nginx notify_desktop
98 + notify_email notify_nagios ntpd numa nut olsrd onewire openldap
99 + openvpn oracle perl ping postgresql powerdns processes protocols
100 + python python redis routeros rrdcached rrdtool sensors serial
101 + sigrok smart snmp statsd swap syslog table tail tail_csv
102 + target_notification target_replace target_scale target_set tcpconns
103 + teamspeak2 ted thermal threshold tokyotyrant turbostat unixsock
104 + uptime users uuid varnish virt vmem vserver wireless write_graphite
105 + write_http write_kafka write_log write_redis write_sensu write_tsdb
106 + xencpu zfs_arc zookeeper"
107 +
108 +COLLECTD_DISABLED_PLUGINS="${COLLECTD_IMPOSSIBLE_PLUGINS}"
109 +
110 +COLLECTD_ALL_PLUGINS=${COLLECTD_TESTED_PLUGINS}
111 +
112 +for plugin in ${COLLECTD_ALL_PLUGINS}; do
113 + IUSE="${IUSE} collectd_plugins_${plugin}"
114 +done
115 +unset plugin
116 +
117 +# Now come the dependencies.
118 +
119 +COMMON_DEPEND="
120 + dev-libs/libgcrypt:=
121 + dev-libs/libltdl:0=
122 + perl? ( dev-lang/perl:=[ithreads] )
123 + udev? ( virtual/udev )
124 + xfs? ( sys-fs/xfsprogs )
125 + collectd_plugins_amqp? ( net-libs/rabbitmq-c )
126 + collectd_plugins_apache? ( net-misc/curl:0= )
127 + collectd_plugins_ascent? ( net-misc/curl:0= dev-libs/libxml2:2= )
128 + collectd_plugins_bind? ( dev-libs/libxml2:2= )
129 + collectd_plugins_ceph? ( dev-libs/yajl:= )
130 + collectd_plugins_curl? ( net-misc/curl:0= )
131 + collectd_plugins_curl_json? ( net-misc/curl:0= dev-libs/yajl:= )
132 + collectd_plugins_curl_xml? ( net-misc/curl:0= dev-libs/libxml2:2= )
133 + collectd_plugins_dbi? ( dev-db/libdbi )
134 + collectd_plugins_dns? ( net-libs/libpcap )
135 + collectd_plugins_gmond? ( sys-cluster/ganglia )
136 + collectd_plugins_gps? ( sci-geosciences/gpsd )
137 + collectd_plugins_ipmi? ( >=sys-libs/openipmi-2.0.16-r1 )
138 + collectd_plugins_iptables? ( >=net-firewall/iptables-1.4.13:0= )
139 + collectd_plugins_log_logstash? ( dev-libs/yajl:= )
140 + collectd_plugins_lua? ( dev-lang/lua:0= )
141 + collectd_plugins_lvm? ( sys-fs/lvm2 )
142 + collectd_plugins_memcachec? ( dev-libs/libmemcached )
143 + collectd_plugins_modbus? ( dev-libs/libmodbus )
144 + collectd_plugins_mqtt? ( app-misc/mosquitto )
145 + collectd_plugins_mysql? ( >=virtual/mysql-5.0 )
146 + collectd_plugins_netlink? ( net-libs/libmnl )
147 + collectd_plugins_nginx? ( net-misc/curl:0= )
148 + collectd_plugins_notify_desktop? ( x11-libs/libnotify )
149 + collectd_plugins_notify_email? ( net-libs/libesmtp )
150 + collectd_plugins_nut? ( >=sys-power/nut-2.7.2-r2 )
151 + collectd_plugins_openldap? ( net-nds/openldap )
152 + collectd_plugins_onewire? ( >=sys-fs/owfs-3.1:= )
153 + collectd_plugins_oracle? ( dev-db/oracle-instantclient-basic )
154 + collectd_plugins_perl? ( dev-lang/perl:=[ithreads] )
155 + collectd_plugins_ping? ( net-libs/liboping )
156 + collectd_plugins_postgresql? ( dev-db/postgresql:= )
157 + collectd_plugins_python? ( ${PYTHON_DEPS} )
158 + collectd_plugins_redis? ( dev-libs/hiredis:= )
159 + collectd_plugins_routeros? ( net-libs/librouteros )
160 + collectd_plugins_rrdcached? ( net-analyzer/rrdtool:= )
161 + collectd_plugins_rrdtool? ( net-analyzer/rrdtool:= )
162 + collectd_plugins_sensors? ( sys-apps/lm_sensors )
163 + collectd_plugins_sigrok? ( <sci-libs/libsigrok-0.4 )
164 + collectd_plugins_smart? ( dev-libs/libatasmart )
165 + collectd_plugins_snmp? ( net-analyzer/net-snmp )
166 + collectd_plugins_tokyotyrant? ( net-misc/tokyotyrant )
167 + collectd_plugins_varnish? ( www-servers/varnish )
168 + collectd_plugins_virt? ( app-emulation/libvirt:= dev-libs/libxml2:2= )
169 + collectd_plugins_write_http? ( net-misc/curl:0= )
170 + collectd_plugins_write_kafka? ( >=dev-libs/librdkafka-0.9.0.99:= )
171 + collectd_plugins_write_redis? ( dev-libs/hiredis:= )
172 + collectd_plugins_xencpu? ( app-emulation/xen-tools )
173 +
174 + kernel_FreeBSD? (
175 + collectd_plugins_disk? ( sys-libs/libstatgrab:= )
176 + collectd_plugins_interface? ( sys-libs/libstatgrab:= )
177 + collectd_plugins_load? ( sys-libs/libstatgrab:= )
178 + collectd_plugins_memory? ( sys-libs/libstatgrab:= )
179 + collectd_plugins_swap? ( sys-libs/libstatgrab:= )
180 + collectd_plugins_users? ( sys-libs/libstatgrab:= )
181 + )"
182 +
183 +# Enforcing <=sys-kernel/linux-headers-4.4 due to #577846
184 +DEPEND="${COMMON_DEPEND}
185 + collectd_plugins_iptables? ( <=sys-kernel/linux-headers-4.4 )
186 + collectd_plugins_java? ( >=virtual/jdk-1.6 )
187 + virtual/pkgconfig"
188 +
189 +RDEPEND="${COMMON_DEPEND}
190 + collectd_plugins_java? ( >=virtual/jre-1.6 )
191 + collectd_plugins_syslog? ( virtual/logger )
192 + selinux? ( sec-policy/selinux-collectd )"
193 +
194 +REQUIRED_USE="
195 + collectd_plugins_python? ( ${PYTHON_REQUIRED_USE} )
196 + collectd_plugins_smart? ( udev )"
197 +
198 +PATCHES=(
199 + "${FILESDIR}"/${PN}-5.6.0-gentoo.patch
200 + "${FILESDIR}"/${PN}-5.6.0-issue-1896.patch
201 + "${FILESDIR}"/${PN}-5.6.0-fix-apache-plugin.patch
202 +)
203 +
204 +# @FUNCTION: collectd_plugin_kernel_linux
205 +# @DESCRIPTION:
206 +# USAGE: <plugin name> <kernel_options> <severity>
207 +# kernel_options is a list of kernel configurations options; the check tests whether at least
208 +# one of them is enabled. If no, depending on the third argument an elog, ewarn, or eerror message
209 +# is emitted.
210 +collectd_plugin_kernel_linux() {
211 + local multi_opt opt
212 + if has ${1} ${COLLECTD_ALL_PLUGINS}; then
213 + if use collectd_plugins_${1}; then
214 + for opt in ${2}; do
215 + if linux_chkconfig_present ${opt}; then
216 + return 0;
217 + fi
218 + done
219 + multi_opt=${2//\ /\ or\ }
220 + case ${3} in
221 + (info)
222 + elog "The ${1} plugin can use kernel features that are disabled now; enable ${multi_opt} in your kernel"
223 + ;;
224 + (warn)
225 + ewarn "The ${1} plugin uses kernel features that are disabled now; enable ${multi_opt} in your kernel"
226 + ;;
227 + (error)
228 + eerror "The ${1} plugin needs kernel features that are disabled now; enable ${multi_opt} in your kernel"
229 + ;;
230 + (*)
231 + die "function collectd_plugin_kernel_linux called with invalid third argument"
232 + ;;
233 + esac
234 + fi
235 + fi
236 +}
237 +
238 +collectd_linux_kernel_checks() {
239 + if ! linux_chkconfig_present PROC_FS; then
240 + ewarn "/proc file system support is disabled, many plugins will not be able to read any statistics from your system unless you enable PROC_FS in your kernel"
241 + fi
242 +
243 + if ! linux_chkconfig_present SYSFS; then
244 + ewarn "/sys file system support is disabled, many plugins will not be able to read any statistics from your system unless you enable SYSFS in your kernel"
245 + fi
246 +
247 + # battery.c: /proc/pmu/battery_%i
248 + # battery.c: /proc/acpi/battery
249 + collectd_plugin_kernel_linux battery ACPI_BATTERY warn
250 +
251 + # cgroups.c: /sys/fs/cgroup/
252 + collectd_plugin_kernel_linux cgroups CGROUPS warn
253 +
254 + # cpufreq.c: /sys/devices/system/cpu/cpu%d/cpufreq/
255 + collectd_plugin_kernel_linux cpufreq SYSFS warn
256 + collectd_plugin_kernel_linux cpufreq CPU_FREQ_STAT warn
257 +
258 + # drbd.c: /proc/drbd
259 + collectd_plugin_kernel_linux drbd BLK_DEV_DRBD warn
260 +
261 + # conntrack.c: /proc/sys/net/netfilter/*
262 + collectd_plugin_kernel_linux conntrack NETFILTER warn
263 +
264 + # fscache.c: /proc/fs/fscache/stats
265 + collectd_plugin_kernel_linux fscache FSCACHE warn
266 +
267 + # nfs.c: /proc/net/rpc/nfs
268 + # nfs.c: /proc/net/rpc/nfsd
269 + collectd_plugin_kernel_linux nfs NFS_COMMON warn
270 +
271 + # serial.c: /proc/tty/driver/serial
272 + # serial.c: /proc/tty/driver/ttyS
273 + collectd_plugin_kernel_linux serial SERIAL_CORE warn
274 +
275 + # swap.c: /proc/meminfo
276 + collectd_plugin_kernel_linux swap SWAP warn
277 +
278 + # thermal.c: /proc/acpi/thermal_zone
279 + # thermal.c: /sys/class/thermal
280 + collectd_plugin_kernel_linux thermal ACPI_THERMAL warn
281 +
282 + # turbostat.c: /dev/cpu/%d/msr
283 + collectd_plugin_kernel_linux turbostat X86_MSR warn
284 +
285 + # vmem.c: /proc/vmstat
286 + collectd_plugin_kernel_linux vmem VM_EVENT_COUNTERS warn
287 +
288 + # vserver.c: /proc/virtual
289 + collectd_plugin_kernel_linux vserver VSERVER warn
290 +
291 + # uuid.c: /sys/hypervisor/uuid
292 + collectd_plugin_kernel_linux uuid SYSFS info
293 +
294 + # wireless.c: /proc/net/wireless
295 + collectd_plugin_kernel_linux wireless "WIRELESS MAC80211 IEEE80211" warn
296 +
297 + # zfs_arc.c: /proc/spl/kstat/zfs/arcstats
298 + collectd_plugin_kernel_linux zfs_arc "SPL ZFS" warn
299 +}
300 +
301 +pkg_setup() {
302 + if use kernel_linux; then
303 + linux-info_pkg_setup
304 +
305 + if linux_config_exists; then
306 + einfo "Checking your linux kernel configuration:"
307 + collectd_linux_kernel_checks
308 + else
309 + elog "Cannot find a linux kernel configuration. Continuing anyway."
310 + fi
311 + fi
312 +
313 + if use collectd_plugins_java; then
314 + java-pkg-opt-2_pkg_setup
315 + fi
316 +
317 + use collectd_plugins_python && python-single-r1_pkg_setup
318 +
319 + enewgroup collectd
320 + enewuser collectd -1 -1 /var/lib/collectd collectd
321 +}
322 +
323 +src_prepare() {
324 + default
325 +
326 + # There's some strange prefix handling in the default config file, resulting in
327 + # paths like "/usr/var/..."
328 + #sed -i -e "s:@prefix@/var:/var:g" src/collectd.conf.in || die
329 +
330 + #sed -i -e "s:/etc/collectd/collectd.conf:/etc/collectd.conf:g" contrib/collectd.service || die
331 +
332 + # fix installdirs for perl, bug 444360
333 + #sed -i -e 's/INSTALL_BASE=$(DESTDIR)$(prefix) //' bindings/Makefile.am || die
334 +
335 + if use collectd_plugins_java; then
336 + # Set javac -source and -target flags according to (R)DEPEND.
337 + sed -i -e "s/\$(JAVAC)/\0 $(java-pkg_javac-args)/g" bindings/java/Makefile.am || die
338 + fi
339 +
340 + ebegin "Removing bundled libltdl"
341 + rm -rf libltdl || die
342 + eend 0
343 +
344 + eautoreconf
345 +}
346 +
347 +src_configure() {
348 + # Now come the lists of os-dependent plugins. Any plugin that is not listed anywhere here
349 + # should work independent of the operating system.
350 +
351 + local linux_plugins="barometer battery cpu cpufreq disk drbd entropy
352 + ethstat interface iptables ipvs irq ipc load memory md netlink nfs
353 + numa processes serial swap tcpconns thermal turbostat users vmem
354 + wireless zfc_arc"
355 +
356 + local need_libstatgrab=0
357 + local libstatgrab_plugins="cpu disk interface load memory swap users"
358 + local bsd_plugins="cpu tcpconns ${libstatgrab_plugins} zfc_arc"
359 +
360 + local darwin_plugins="apple_sensors battery cpu disk interface memory processes tcpconns"
361 +
362 + local osdependent_plugins="${linux_plugins} ${bsd_plugins} ${darwin_plugins}"
363 + local myos_plugins=""
364 + if use kernel_linux; then
365 + einfo "Enabling Linux plugins."
366 + myos_plugins=${linux_plugins}
367 + elif use kernel_FreeBSD; then
368 + einfo "Enabling FreeBSD plugins."
369 + myos_plugins=${bsd_plugins}
370 + elif use kernel_Darwin; then
371 + einfo "Enabling Darwin plugins."
372 + myos_plugins=${darwin_plugins}
373 + fi
374 +
375 + local myconf="--disable-werror"
376 +
377 + # Do we debug?
378 + myconf+=" $(use_enable debug)"
379 +
380 + # udev support?
381 + # Required for smart plugin via REQUIRED_USE; Optional for disk plugin
382 + if use udev; then
383 + myconf+=" --with-libudev"
384 + else
385 + myconf+=" --without-libudev"
386 + fi
387 +
388 + local plugin
389 +
390 + # Disable what needs to be disabled.
391 + for plugin in ${COLLECTD_DISABLED_PLUGINS}; do
392 + myconf+=" --disable-${plugin}"
393 + done
394 +
395 + # Set enable/disable for each single plugin.
396 + for plugin in ${COLLECTD_ALL_PLUGINS}; do
397 + if has ${plugin} ${osdependent_plugins}; then
398 + # plugin is os-dependent ...
399 + if has ${plugin} ${myos_plugins}; then
400 + # ... and available in this os
401 + myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
402 + # ... must we link against libstatgrab? Bug #541518
403 + if use kernel_FreeBSD && has ${plugin} ${libstatgrab_plugins}; then
404 + einfo "We must link against libstatgrab due to plugin \"${plugin}\" ..."
405 + need_libstatgrab=1
406 + fi
407 + else
408 + # ... and NOT available in this os
409 + if use collectd_plugins_${plugin}; then
410 + ewarn "You try to enable the ${plugin} plugin, but it is not available for this"
411 + ewarn "kernel. Disabling it automatically."
412 + fi
413 + myconf+=" --disable-${plugin}"
414 + fi
415 + elif [[ "${plugin}" = "collectd_plugins_perl" ]]; then
416 + if use collectd_plugins_perl && ! use perl; then
417 + ewarn "Perl plugin disabled as perl bindings disabled by -perl use flag"
418 + myconf+= --disable-perl
419 + else
420 + myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
421 + fi
422 + else
423 + myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
424 + fi
425 + done
426 +
427 + if [ "${need_libstatgrab}" -eq 1 ]; then
428 + myconf+=" --with-libstatgrab"
429 + else
430 + myconf+=" --without-libstatgrab"
431 + fi
432 +
433 + # JAVA_HOME is set by eclasses.
434 + if use collectd_plugins_java; then
435 + myconf+=" --with-java"
436 + fi
437 +
438 + # Need libiptc ONLY for iptables. If we try to use it otherwise bug 340109 happens.
439 + # lots of libs are only needed for plugins, if they are disabled, also disable the lib
440 + use collectd_plugins_iptables || myconf+=" --with-libiptc=no"
441 + use collectd_plugins_openldap || myconf+=" --with-libldap=no"
442 + use collectd_plugins_redis || use collectd_plugins_write_redis || myconf+=" --with-libhiredis=no"
443 + use collectd_plugins_smart || myconf+=" --with-libatasmart=no"
444 + use collectd_plugins_gps || myconf+=" --with-libgps=no"
445 +
446 + if use perl; then
447 + myconf+=" --with-perl-bindings=INSTALLDIRS=vendor"
448 + else
449 + myconf+=" --without-perl-bindings"
450 + fi
451 +
452 + # No need for v5upgrade
453 + myconf+=" --disable-target_v5upgrade"
454 +
455 + # Python
456 + if use collectd_plugins_python; then
457 + myconf+=" --with-libpython=yes"
458 + export PYTHON_CONFIG=$(python_get_PYTHON_CONFIG)
459 + else
460 + myconf+=" --with-libpython=no"
461 + fi
462 +
463 + # XFS support
464 + myconf+=" $(use_enable xfs)"
465 +
466 + # Finally, run econf.
467 + KERNEL_DIR="${KERNEL_DIR}" econf --config-cache \
468 + $(use_enable static-libs static) \
469 + --localstatedir=/var ${myconf}
470 +}
471 +
472 +src_install() {
473 + emake DESTDIR="${D%/}" install
474 +
475 + perl_delete_localpod
476 +
477 + find "${ED}"usr/ -name "*.la" -delete || die
478 +
479 + if use collectd_plugins_java; then
480 + java-pkg_regjar "${ED}"usr/share/${PN}/java/*.jar
481 + fi
482 +
483 + fowners root:collectd /etc/collectd.conf
484 + fperms u=rw,g=r,o= /etc/collectd.conf
485 +
486 + dodoc AUTHORS ChangeLog NEWS README TODO
487 +
488 + if use contrib ; then
489 + insinto /usr/share/doc/${PF}
490 + doins -r contrib
491 + fi
492 +
493 + keepdir /var/lib/${PN}
494 + fowners collectd:collectd /var/lib/${PN}
495 +
496 + newinitd "${FILESDIR}/${PN}.initd-r1" ${PN}
497 + newconfd "${FILESDIR}/${PN}.confd-r1" ${PN}
498 + systemd_dounit "contrib/systemd.${PN}.service"
499 +
500 + insinto /etc/logrotate.d
501 + newins "${FILESDIR}/${PN}.logrotate" ${PN}
502 +
503 + sed -i -e 's:^.*PIDFile "/var/run/collectd.pid":PIDFile "/run/collectd/collectd.pid":' "${ED}"etc/collectd.conf || die
504 + sed -i -e 's:^# SocketFile "/var/run/collectd-unixsock":# SocketFile "/run/collectd/collectd.socket":' "${ED}"etc/collectd.conf || die
505 + sed -i -e 's:^.*LoadPlugin perl$:# The new, correct way to load the perl plugin -- \n# <LoadPlugin perl>\n# Globals true\n# </LoadPlugin>:' "${ED}"etc/collectd.conf || die
506 + sed -i -e 's:^.*LoadPlugin python$:# The new, correct way to load the python plugin -- \n# <LoadPlugin python>\n# Globals true\n# </LoadPlugin>:' "${ED}"etc/collectd.conf || die
507 +}
508 +
509 +pkg_postinst() {
510 + local caps=()
511 + use collectd_plugins_ping && caps+=('cap_net_raw')
512 + use collectd_plugins_iptables && caps+=('cap_net_admin')
513 + use collectd_plugins_filecount && caps+=('cap_dac_read_search')
514 +
515 + if [ ${#caps[@]} -gt 0 ]; then
516 + local caps_str=$(IFS=","; echo "${caps[*]}")
517 + fcaps ${caps_str} usr/sbin/collectd
518 + elog "Capabilities for ${EROOT}usr/sbin/collectd set to:"
519 + elog " ${caps_str}+ep"
520 + elog
521 + fi
522 +
523 + elog "Note: Collectd is only the collector."
524 + elog " You need to install 'data' sources (applications) locally or"
525 + elog " remotely on your own."
526 +
527 + elog
528 + elog "Collectd is configured to run as unprivileged user by default."
529 + elog "You may want to revisit the configuration."
530 + elog
531 +
532 + if use collectd_plugins_email; then
533 + ewarn "The email plug-in is deprecated. To submit statistics please use the unixsock plugin."
534 + fi
535 +
536 + if use contrib; then
537 + elog "The scripts in /usr/share/doc/${PF}/collection3 for generating graphs need dev-perl/HTML-Parser,"
538 + elog "dev-perl/config-general, dev-perl/regexp-common, and net-analyzer/rrdtool[perl] to be installed."
539 + fi
540 +}
541
542 diff --git a/app-admin/collectd/files/collectd-5.6.0-fix-apache-plugin.patch b/app-admin/collectd/files/collectd-5.6.0-fix-apache-plugin.patch
543 new file mode 100644
544 index 00000000..e3afaeb
545 --- /dev/null
546 +++ b/app-admin/collectd/files/collectd-5.6.0-fix-apache-plugin.patch
547 @@ -0,0 +1,26 @@
548 +From 60ec28dd104bdeef4c5ed6882fb2b663ca9da2eb Mon Sep 17 00:00:00 2001
549 +From: Florian Forster <octo@××××××××.org>
550 +Date: Sun, 11 Sep 2016 20:31:31 +0200
551 +Subject: [PATCH] apache plugin: End statements with semi-colons.
552 +MIME-Version: 1.0
553 +Content-Type: text/plain; charset=UTF-8
554 +Content-Transfer-Encoding: 8bit
555 +
556 +If only I knew why this wasn't considered a syntax error …
557 +---
558 + src/apache.c | 2 +-
559 + 1 file changed, 1 insertion(+), 1 deletion(-)
560 +
561 +diff --git a/src/apache.c b/src/apache.c
562 +index c515e3c..5b6914c 100644
563 +--- a/src/apache.c
564 ++++ b/src/apache.c
565 +@@ -250,7 +250,7 @@ static int config_add (oconfig_item_t *ci)
566 + ssnprintf (callback_name, sizeof (callback_name),
567 + "apache/%s/%s",
568 + (st->host != NULL) ? st->host : hostname_g,
569 +- (st->name != NULL) ? st->name : "default"),
570 ++ (st->name != NULL) ? st->name : "default");
571 +
572 + status = plugin_register_complex_read (/* group = */ NULL,
573 + /* name = */ callback_name,
574
575 diff --git a/app-admin/collectd/files/collectd-5.6.0-gentoo.patch b/app-admin/collectd/files/collectd-5.6.0-gentoo.patch
576 new file mode 100644
577 index 00000000..dd8c157
578 --- /dev/null
579 +++ b/app-admin/collectd/files/collectd-5.6.0-gentoo.patch
580 @@ -0,0 +1,153 @@
581 +From 8fe20883e248572690798e4dd1423511aa2f4e5d Mon Sep 17 00:00:00 2001
582 +From: Thomas Deutschmann <whissi@g.o>
583 +Date: Thu, 22 Sep 2016 00:53:58 +0200
584 +Subject: [PATCH 1/3] Remove bundled libltdl
585 +
586 +---
587 + Makefile.am | 6 ------
588 + configure.ac | 8 ++++----
589 + 2 files changed, 4 insertions(+), 10 deletions(-)
590 +
591 +diff --git a/Makefile.am b/Makefile.am
592 +index 03bdd39..ad04a3c 100644
593 +--- a/Makefile.am
594 ++++ b/Makefile.am
595 +@@ -1,11 +1,5 @@
596 +-ACLOCAL_AMFLAGS = -I libltdl/m4
597 +-
598 + SUBDIRS =
599 +
600 +-if BUILD_INCLUDED_LTDL
601 +-SUBDIRS += libltdl
602 +-endif
603 +-
604 + SUBDIRS += proto src bindings .
605 +
606 + AM_CPPFLAGS = $(LTDLINCL)
607 +diff --git a/configure.ac b/configure.ac
608 +index 9a6da11..68e15e0 100644
609 +--- a/configure.ac
610 ++++ b/configure.ac
611 +@@ -3,7 +3,6 @@ AC_PREREQ([2.60])
612 + AC_INIT([collectd],[m4_esyscmd(./version-gen.sh)])
613 + AC_CONFIG_SRCDIR(src/target_set.c)
614 + AC_CONFIG_HEADERS(src/config.h)
615 +-AC_CONFIG_AUX_DIR([libltdl/config])
616 +
617 + dnl older automake's default of ARFLAGS=cru is noisy on newer binutils;
618 + dnl we don't really need the 'u' even in older toolchains. Then there is
619 +@@ -13,7 +12,6 @@ m4_divert_text([DEFAULTS], [: "${ARFLAGS=cr} ${AR_FLAGS=cr}"])
620 + m4_ifdef([LT_PACKAGE_VERSION],
621 + # libtool >= 2.2
622 + [
623 +- LT_CONFIG_LTDL_DIR([libltdl])
624 + LT_INIT([dlopen])
625 + LTDL_INIT([convenience])
626 + AC_DEFINE(LIBTOOL_VERSION, 2, [Define to used libtool version.])
627 +@@ -25,12 +23,14 @@ m4_ifdef([LT_PACKAGE_VERSION],
628 + AC_SUBST(LTDLINCL)
629 + AC_SUBST(LIBLTDL)
630 + AC_LIBTOOL_DLOPEN
631 +- AC_CONFIG_SUBDIRS(libltdl)
632 + AC_DEFINE(LIBTOOL_VERSION, 1, [Define to used libtool version.])
633 + ]
634 + )
635 +
636 +-AM_CONDITIONAL([BUILD_INCLUDED_LTDL], [test "x$LTDLDEPS" != "x"])
637 ++if test "x$LTDLDEPS" != "x"
638 ++then
639 ++ AC_MSG_ERROR(["system's libltdl is too old! Should never happen. Please file a bug at https://bugs.gentoo.org"])
640 ++fi
641 +
642 + AM_INIT_AUTOMAKE([subdir-objects tar-pax dist-bzip2 no-dist-gzip foreign])
643 + m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
644 +--
645 +2.10.0
646 +
647 +
648 +From 0b00f519ce183b8ceaab5cf8e56f574ecd2cb7c4 Mon Sep 17 00:00:00 2001
649 +From: Thomas Deutschmann <whissi@g.o>
650 +Date: Thu, 22 Sep 2016 00:54:08 +0200
651 +Subject: [PATCH 2/3] Remove libhal dependency
652 +
653 +X-Gentoo-Bug: 353839
654 +X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=353839
655 +---
656 + configure.ac | 24 ------------------------
657 + 1 file changed, 24 deletions(-)
658 +
659 +diff --git a/configure.ac b/configure.ac
660 +index 68e15e0..1700c44 100644
661 +--- a/configure.ac
662 ++++ b/configure.ac
663 +@@ -1663,30 +1663,6 @@ AM_CONDITIONAL(BUILD_WITH_LIBRESOLV, test "x$with_libresolv" = "xyes")
664 +
665 + dnl Check for HAL (hardware abstraction library)
666 + with_libhal="no"
667 +-PKG_CHECK_MODULES([HAL], [hal],
668 +- [
669 +- SAVE_LIBS="$LIBS"
670 +- LIBS="$HAL_LIBS $LIBS"
671 +- AC_CHECK_LIB([hal], [libhal_device_property_exists],
672 +- [
673 +- SAVE_CPPFLAGS="$CPPFLAGS"
674 +- CPPFLAGS="$HAL_CFLAGS $CPPFLAGS"
675 +- AC_CHECK_HEADERS([libhal.h],
676 +- [
677 +- with_libhal="yes"
678 +- BUILD_WITH_LIBHAL_CFLAGS="$HAL_CFLAGS"
679 +- BUILD_WITH_LIBHAL_LIBS="$HAL_LIBS"
680 +- ])
681 +- CPPFLAGS="$SAVE_CPPFLAGS"
682 +- ],
683 +- [ : ]
684 +- )
685 +- LIBS="$SAVE_LIBS"
686 +- ],
687 +- [ : ]
688 +-)
689 +-AC_SUBST(BUILD_WITH_LIBHAL_CFLAGS)
690 +-AC_SUBST(BUILD_WITH_LIBHAL_LIBS)
691 +
692 +
693 + SAVE_LIBS="$LIBS"
694 +--
695 +2.10.0
696 +
697 +
698 +From 380c61888bed5856319fa32816d8f2f4c88ee7bc Mon Sep 17 00:00:00 2001
699 +From: Thomas Deutschmann <whissi@g.o>
700 +Date: Thu, 22 Sep 2016 00:54:19 +0200
701 +Subject: [PATCH 3/3] Link Oracle plug-in against libocci
702 +
703 +Author: Aurelien Minet
704 +X-Gentoo-Bug: 347607
705 +X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=347607
706 +---
707 + configure.ac | 4 ++--
708 + 1 file changed, 2 insertions(+), 2 deletions(-)
709 +
710 +diff --git a/configure.ac b/configure.ac
711 +index 1700c44..83909a0 100644
712 +--- a/configure.ac
713 ++++ b/configure.ac
714 +@@ -3587,14 +3587,14 @@ AC_ARG_WITH(oracle, [AS_HELP_STRING([--with-oracle@<:@=ORACLE_HOME@:>@], [Path t
715 + ])
716 + if test "x$ORACLE_HOME" != "x"
717 + then
718 +- with_oracle_cppflags="-I$ORACLE_HOME/rdbms/public"
719 ++ with_oracle_cppflags="-I$ORACLE_HOME/rdbms/public -locci"
720 +
721 + if test -e "$ORACLE_HOME/lib/ldflags"
722 + then
723 + with_oracle_libs=`cat "$ORACLE_HOME/lib/ldflags"`
724 + fi
725 + #with_oracle_libs="-L$ORACLE_HOME/lib $with_oracle_libs -lclntsh"
726 +- with_oracle_libs="-L$ORACLE_HOME/lib -lclntsh"
727 ++ with_oracle_libs="-L$ORACLE_HOME/lib -lclntsh -locci"
728 + fi
729 + if test "x$with_oracle" = "xyes"
730 + then
731 +--
732 +2.10.0
733 +
734
735 diff --git a/app-admin/collectd/files/collectd-5.6.0-issue-1896.patch b/app-admin/collectd/files/collectd-5.6.0-issue-1896.patch
736 new file mode 100644
737 index 00000000..afcd8d0
738 --- /dev/null
739 +++ b/app-admin/collectd/files/collectd-5.6.0-issue-1896.patch
740 @@ -0,0 +1,76 @@
741 +From ba52f94929822b1968f05cfbb37985af2e0b83a4 Mon Sep 17 00:00:00 2001
742 +From: Florian Forster <octo@××××××××.org>
743 +Date: Tue, 13 Sep 2016 10:44:46 +0200
744 +Subject: [PATCH] curl_json plugin: Skip unexpected non-map values.
745 +
746 +Assume, for example, the config `Key "*/foo"`. This config expects JSON
747 +in the form:
748 +
749 + {
750 + "bar": {
751 + "foo": 1337
752 + }
753 + }
754 +
755 +If the available JSON is instead:
756 +
757 + {
758 + "error_code": 0,
759 + "bar": {
760 + "foo": 1337
761 + }
762 + }
763 +
764 +the code will take a look at the zero associated with "error_code" and
765 +determine that a map (with key "foo") is expected instead. Previously
766 +the code would continue, eventually calling `cj_get_type()` which
767 +expects that `key->type` is a valid pointer, resulting in a segmentation
768 +fault.
769 +
770 +This patch does three things to ensure that this segmentation fault does
771 +not happen again:
772 +
773 +1. `cj_get_type()` checks its argument to make sure it is valid before
774 + dereferencing any pointers.
775 +2. In case a non-map is found when a map is expected, the code will
776 + return instead of limping on.
777 +3. After calling `cj_cb_inc_array_index()`, which may update the key,
778 + make sure that it actually did and that key is valid now.
779 +
780 +Fixes: #1896
781 +---
782 + src/curl_json.c | 10 ++++++++--
783 + 1 file changed, 8 insertions(+), 2 deletions(-)
784 +
785 +diff --git a/src/curl_json.c b/src/curl_json.c
786 +index 4188f37..a547ddc 100644
787 +--- a/src/curl_json.c
788 ++++ b/src/curl_json.c
789 +@@ -143,6 +143,9 @@ static int cj_get_type (cj_key_t *key)
790 + {
791 + const data_set_t *ds;
792 +
793 ++ if ((key == NULL) || !CJ_IS_KEY (key))
794 ++ return -EINVAL;
795 ++
796 + ds = plugin_get_ds (key->type);
797 + if (ds == NULL)
798 + {
799 +@@ -226,12 +229,15 @@ static int cj_cb_number (void *ctx,
800 + buffer[sizeof (buffer) - 1] = 0;
801 +
802 + if ((key == NULL) || !CJ_IS_KEY (key)) {
803 +- if (key != NULL && !db->state[db->depth].in_array/*can be inhomogeneous*/)
804 ++ if (key != NULL && !db->state[db->depth].in_array/*can be inhomogeneous*/) {
805 + NOTICE ("curl_json plugin: Found \"%s\", but the configuration expects"
806 + " a map.", buffer);
807 ++ return (CJ_CB_CONTINUE);
808 ++ }
809 ++
810 + cj_cb_inc_array_index (ctx, /* update_key = */ 1);
811 + key = db->state[db->depth].key;
812 +- if (key == NULL) {
813 ++ if ((key == NULL) || !CJ_IS_KEY (key)) {
814 + return (CJ_CB_CONTINUE);
815 + }
816 + }
817
818 diff --git a/app-admin/collectd/metadata.xml b/app-admin/collectd/metadata.xml
819 index 29a819a..250736f 100644
820 --- a/app-admin/collectd/metadata.xml
821 +++ b/app-admin/collectd/metadata.xml
822 @@ -33,10 +33,12 @@
823 <flag name="collectd_plugins_bind">Build the bind input plugin (collects statistics from bind instances)</flag>
824 <flag name="collectd_plugins_ceph">Build the Ceph input plugin (collects statistics from the Ceph distributed storage system)</flag>
825 <flag name="collectd_plugins_cgroups">Build the cgroups input plugin (collects CPU accounting information for processes in a cgroup)</flag>
826 + <flag name="collectd_plugins_chrony">Build the chrony input plugin (collects statistics from a chrony NTP server)</flag>
827 <flag name="collectd_plugins_conntrack">Build the conntrack input plugin (tracks the number of entries in Linux's connection tracking table)</flag>
828 <flag name="collectd_plugins_contextswitch">Build the contextswitch input plugin (collects the number of context switches done by the operating system)</flag>
829 <flag name="collectd_plugins_cpu">Build the cpu input plugin (collects the amount of time spent by the CPU in various states)</flag>
830 <flag name="collectd_plugins_cpufreq">Build the cpufreq input plugin (collects the current CPU's frequency)</flag>
831 + <flag name="collectd_plugins_cpusleep">Build the cpusleep input plugin (measures time spent by CPU in deep sleep mode)</flag>
832 <flag name="collectd_plugins_csv">Build the csv output plugin (writes to comma separated values (CSV) files)</flag>
833 <flag name="collectd_plugins_curl">Build the curl input plugin (reads streams using <pkg>net-misc/curl</pkg> and then parses them according to the configuration)</flag>
834 <flag name="collectd_plugins_curl_json">Build the curl_json input plugin (queries JavaScript Object Notation (JSON) data using <pkg>net-misc/curl</pkg> and parses it according to the user's configuration using <pkg>dev-libs/yajl</pkg>)</flag>
835 @@ -55,6 +57,7 @@
836 <flag name="collectd_plugins_fscache">Build the fscache input plugin (collects information about the file-system based caching infrastructure for network file-systems and other slow media)</flag>
837 <flag name="collectd_plugins_genericjmx">Build the GenericJMX input plugin (reads Managed Beans (MBeans) from an MBeanServer using JMX input plugin; Requires JAVA)</flag>
838 <flag name="collectd_plugins_gmond">Build the gmond input plugin (receives data from gmond, the client daemon of the Ganglia project)</flag>
839 + <flag name="collectd_plugins_gps">Build the gps input plugin (collects number of satellites seen by a GPS receiver using <pkg>sci-geosciences/gpsd</pkg>)</flag>
840 <flag name="collectd_plugins_hddtemp">Build the hddtemp input plugin (collects the temperature of disks from hddtemp daemon)</flag>
841 <flag name="collectd_plugins_interface">Build the interface input plugin (collects information about the traffic, packets per second and errors of interfaces)</flag>
842 <flag name="collectd_plugins_ipc">Build the IPC input plugin (collects information related to shared memory)</flag>
843 @@ -66,6 +69,7 @@
844 <flag name="collectd_plugins_load">Build the load input plugin (collects the system load)</flag>
845 <flag name="collectd_plugins_logfile">Build the logfile output plugin (receives log messages from collectd and writes them to a text file)</flag>
846 <flag name="collectd_plugins_log_logstash">Build the Logstash output plugin (writes collectd logs and events as Logstash JSON formatted events)</flag>
847 + <flag name="collectd_plugins_lua">Build the LUA language binding plugin (uses <pkg>dev-lang/lua</pkg>) for writing plugins</flag>
848 <flag name="collectd_plugins_lvm">Build the LVM input plugin (collects the size of logical volumes (LV) and free space inside a volume group (VG) from Linux' Logical Volume Manager (LVM))</flag>
849 <flag name="collectd_plugins_madwifi">Build the madwifi input plugin (collects information about Atheros wireless LAN chipsets from the MadWifi driver)</flag>
850 <flag name="collectd_plugins_match_empty_counter">Build the match_empty_counter filter plugin</flag>
851 @@ -79,6 +83,7 @@
852 <flag name="collectd_plugins_memcached">Build the memcached input plugin (collects statistics from memcached daemon)</flag>
853 <flag name="collectd_plugins_memory">Build the memory input plugin (collects physical memory utilization)</flag>
854 <flag name="collectd_plugins_modbus">Build the Modbus input plugin (reads register values from a Modbus "slave" via Modbus/TCP)</flag>
855 + <flag name="collectd_plugins_mqtt">Build the MQTT plugin (sends metrics to and/or receives metrics from an MQTT broker using <pkg>app-misc/mosquitto</pkg>)</flag>
856 <flag name="collectd_plugins_multimeter">Build the multimeter input plugin (reads a voltage or current from a multimeter connected to a serial bus)</flag>
857 <flag name="collectd_plugins_mysql">Build the mysql input plugin (collects values from 'SHOW STATUS' command of a MySQL server)</flag>
858 <flag name="collectd_plugins_netlink">Build the netlink input plugin (collects statistics for interfaces, qdiscs, classes and filters using netlink socket)</flag>
859 @@ -87,6 +92,7 @@
860 <flag name="collectd_plugins_nginx">Build the nginx input plugin (collects number of requests handled and the number of current connections by connection state by the nginx daemon)</flag>
861 <flag name="collectd_plugins_notify_desktop">Build the notify_desktop output plugin (uses <pkg>x11-libs/libnotify</pkg> to display notifications to the user)</flag>
862 <flag name="collectd_plugins_notify_email">Build the notify_email output plugin (uses <pkg>net-libs/libesmtp</pkg> to send notifications to a configured email address)</flag>
863 + <flag name="collectd_plugins_notify_nagios">Build the notify_nagios output plugin (sends notifications to Nagios as a passive check result)</flag>
864 <flag name="collectd_plugins_ntpd">Build the ntpd input plugin (collects statistics from a NTP server)</flag>
865 <flag name="collectd_plugins_numa">Build the numa input plugin (collects statistics of the Linux Non-Uniform Memory Access (NUMA) subsystem)</flag>
866 <flag name="collectd_plugins_nut">Build the nut input plugin (collects UPS statistics using the Network UPS Tools)</flag>
867 @@ -145,6 +151,7 @@
868 <flag name="collectd_plugins_write_riemann">Build the Riemann output plugin (stores values in Riemann, a stream processing and monitoring system)</flag>
869 <flag name="collectd_plugins_write_sensu">Build the Sensu output plugin (sends metrics to Sensu Core, an open-source monitoring project)</flag>
870 <flag name="collectd_plugins_write_tsdb">Build the TSDB output plugin (writes metrics to OpenTSDB, an open-source distributed time-series database based on Apache HBase)</flag>
871 + <flag name="collectd_plugins_xencpu">Build the XEN CPU input plugin (collects XEN Hypervisor CPU stats using <pkg>app-emulation/xen-tools</pkg>)</flag>
872 <flag name="collectd_plugins_zfs_arc">Build the ZFS ARC input plugin (reports information such as the cache size, the various hits and misses (also as a ratio) and the transferred data)</flag>
873 <flag name="collectd_plugins_zookeeper">Build the zookeeper input plugin (reads data from Apache Zookeeper MNTR command)</flag>
874 <flag name="contrib">Install user-contributed files in the doc directory</flag>
875
876 diff --git a/profiles/arch/amd64/package.use.mask b/profiles/arch/amd64/package.use.mask
877 index aa560c7..7df2430 100644
878 --- a/profiles/arch/amd64/package.use.mask
879 +++ b/profiles/arch/amd64/package.use.mask
880 @@ -18,6 +18,10 @@
881
882 #--- END OF EXAMPLES ---
883
884 +# Thomas Deutschmann <whissi@g.o> (22 Sep 2016)
885 +# Enable MQTT support on supported architectures
886 +app-admin/collectd -collectd_plugins_mqtt
887 +
888 # Thomas Deutschmann <whissi@g.o> (26 Aug 2016)
889 # Enable numa support on supported architectures
890 dev-db/percona-server -numa
891
892 diff --git a/profiles/arch/x86/package.use.mask b/profiles/arch/x86/package.use.mask
893 index 368d17b..fde9a05 100644
894 --- a/profiles/arch/x86/package.use.mask
895 +++ b/profiles/arch/x86/package.use.mask
896 @@ -4,6 +4,10 @@
897
898 # This file requires >=portage-2.1.1
899
900 +# Thomas Deutschmann <whissi@g.o> (22 Sep 2016)
901 +# Enable MQTT support on supported architectures
902 +app-admin/collectd -collectd_plugins_mqtt
903 +
904 # Thomas Deutschmann <whissi@g.o> (26 Aug 2016)
905 # Enable numa support on supported architectures
906 dev-db/percona-server -numa
907
908 diff --git a/profiles/base/package.use.mask b/profiles/base/package.use.mask
909 index 2e73a25..3fb00f6 100644
910 --- a/profiles/base/package.use.mask
911 +++ b/profiles/base/package.use.mask
912 @@ -5,6 +5,10 @@
913 # This file requires >=portage-2.1.1
914 # New entries go on top.
915
916 +# Thomas Deutschmann <whissi@g.o> (22 Sep 2016)
917 +# Dependency is only keyworded on amd64 and x86
918 +app-admin/collectd collectd_plugins_mqtt
919 +
920 # Michael Palimaka <kensington@g.o> (15 Sep 2016)
921 # Requires unreleased dependency dev-qt/qtspeech.
922 kde-apps/kpimtextedit speech