nixpkgs/pkgs/tools/system/collectd/default.nix
Bjørn Forsman 3ba150db2f 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
2014-07-15 14:07:29 +02:00

55 lines
1.4 KiB
Nix

{ 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";
src = fetchurl {
url = "http://collectd.org/files/${name}.tar.bz2";
sha256 = "1q365zx6d1wyhv7n97bagfxqnqbhj2j14zz552nhmjviy8lj2ibm";
};
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";
platforms = stdenv.lib.platforms.linux;
license = "GPLv2";
};
}