From 3ba150db2f85f4f1ca145b38569c65a3fc548b9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Sun, 15 Jun 2014 10:51:43 +0200 Subject: [PATCH] collectd: enable a bunch of plugins (by adding more deps) These are plugins that are internal to collectd; they are bundled in the source archive. Without this, many of the collectd plugins advertised on their homepage don't actually work, so I think we should add this. This change increases the closure size from 129 MiB to 621 MiB. The size of the collectd store path itself goes from 2 MiB to 2.9 MiB. Users wanting a smaller closure size can set some (or all) of the optional inputs to "null" using ".override". List of new plugins: amqp apache ascent bind curl curl_json curl_xml dbi dns iptables libvirt lvm memcachec modbus mysql nginx notify_desktop pinba ping postgresql redis rrdcached rrdtool sensors sigrok varnish write_http write_redis write_riemann --- pkgs/tools/system/collectd/default.nix | 37 +++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/system/collectd/default.nix b/pkgs/tools/system/collectd/default.nix index c76a1a136771..0dd587bf551e 100644 --- a/pkgs/tools/system/collectd/default.nix +++ b/pkgs/tools/system/collectd/default.nix @@ -1,4 +1,29 @@ -{stdenv, fetchurl }: +{ stdenv, fetchurl +# optional: +, pkgconfig ? null # most of the extra deps need pkgconfig to be found +, curl ? null +, iptables ? null +, libcredis ? null +, libdbi ? null +, libgcrypt ? null +, libmemcached ? null, cyrus_sasl ? null +, libmodbus ? null +, libnotify ? null, gdk_pixbuf ? null +, liboping ? null +, libpcap ? null +, libsigrok ? null +, libvirt ? null +, libxml2 ? null +, lm_sensors ? null +, lvm2 ? null +, mysql ? null +, postgresql ? null +, protobufc ? null +, rabbitmq-c ? null +, rrdtool ? null +, varnish ? null +, yajl ? null +}: stdenv.mkDerivation rec { name = "collectd-5.4.1"; @@ -10,6 +35,16 @@ stdenv.mkDerivation rec { NIX_LDFLAGS = "-lgcc_s"; # for pthread_cancel + buildInputs = [ + pkgconfig curl iptables libcredis libdbi libgcrypt libmemcached cyrus_sasl + libmodbus libnotify gdk_pixbuf liboping libpcap libsigrok libvirt + lm_sensors libxml2 lvm2 mysql postgresql protobufc rabbitmq-c rrdtool + varnish yajl + ]; + + # for some reason libsigrok isn't auto-detected + configureFlags = stdenv.lib.optional (libsigrok != null) "--with-libsigrok"; + meta = { homepage = http://collectd.org; description = "collectd is a daemon which collects system performance statistics periodically";