diff --git a/pkgs/tools/system/collectd/plugins.nix b/pkgs/tools/system/collectd/plugins.nix index 3ed2ff70998c..df99c60c3ef0 100644 --- a/pkgs/tools/system/collectd/plugins.nix +++ b/pkgs/tools/system/collectd/plugins.nix @@ -47,183 +47,83 @@ }: let + inherit (darwin.apple_sdk.frameworks) IOKit; + # Plugins that have dependencies. # Please help to extend these! plugins = { - amqp = { - buildInputs = [ yajl ] ++ - lib.optionals stdenv.isLinux [ rabbitmq-c ]; - }; - apache = { - buildInputs = [ curl ]; - }; - ascent = { - buildInputs = [ curl libxml2 ]; - }; - battery = { - buildInputs = lib.optionals stdenv.isDarwin [ - darwin.apple_sdk.frameworks.IOKit - ]; - }; - bind = { - buildInputs = [ curl libxml2 ]; - }; - ceph = { - buildInputs = [ yajl ]; - }; - curl = { - buildInputs = [ curl ]; - }; - curl_json = { - buildInputs = [ curl yajl ]; - }; - curl_xml = { - buildInputs = [ curl libxml2 ]; - }; - dbi = { - buildInputs = [ libdbi ]; - }; - disk = { - buildInputs = lib.optionals stdenv.isLinux [ - udev - ] ++ lib.optionals stdenv.isDarwin [ - darwin.apple_sdk.frameworks.IOKit - ]; - }; - dns = { - buildInputs = [ libpcap ]; - }; - ipmi = { - buildInputs = [ openipmi ]; - }; - iptables = { - buildInputs = [ - libpcap - ] ++ lib.optionals stdenv.isLinux [ - iptables libmnl - ]; - }; - java = { - buildInputs = [ jdk libgcrypt libxml2 ]; - }; - log_logstash = { - buildInputs = [ yajl ]; - }; - lua = { - buildInputs = [ lua ]; - }; - memcachec = { - buildInputs = [ libmemcached cyrus_sasl ]; - }; - modbus = { - buildInputs = lib.optionals stdenv.isLinux [ libmodbus ]; - }; - mqtt = { - buildInputs = [ mosquitto ]; - }; - mysql = { - buildInputs = lib.optionals (libmysqlclient != null) [ - libmysqlclient - ]; - }; - netlink = { - buildInputs = [ - libpcap - ] ++ lib.optionals stdenv.isLinux [ - libmnl - ]; - }; - network = { - buildInputs = [ libgcrypt ]; - }; - nginx = { - buildInputs = [ curl ]; - }; - notify_desktop = { - buildInputs = [ libnotify gdk-pixbuf ]; - }; - notify_email = { - buildInputs = [ libesmtp ]; - }; - openldap = { - buildInputs = [ openldap ]; - }; - ovs_events = { - buildInputs = [ yajl ]; - }; - ovs_stats = { - buildInputs = [ yajl ]; - }; - perl = { - buildInputs = [ perl ]; - }; - pinba = { - buildInputs = [ protobufc ]; - }; - ping = { - buildInputs = [ liboping ]; - }; - postgresql = { - buildInputs = [ postgresql ]; - }; - python = { - buildInputs = [ python ]; - }; - redis = { - buildInputs = [ hiredis ]; - }; - rrdcached = { - buildInputs = [ rrdtool libxml2 ]; - }; - rrdtool = { - buildInputs = [ rrdtool libxml2 ]; - }; - sensors = { - buildInputs = lib.optionals stdenv.isLinux [ lm_sensors ]; - }; - sigrok = { - buildInputs = lib.optionals stdenv.isLinux [ libsigrok udev ]; - }; - smart = { - buildInputs = lib.optionals stdenv.isLinux [ libatasmart udev ]; - }; - snmp = { - buildInputs = lib.optionals stdenv.isLinux [ net-snmp ]; - }; - snmp_agent = { - buildInputs = lib.optionals stdenv.isLinux [ net-snmp ]; - }; - varnish = { - buildInputs = [ curl varnish ]; - }; - virt = { - buildInputs = [ libvirt libxml2 yajl ] ++ - lib.optionals stdenv.isLinux [ lvm2 udev ]; - }; - write_http = { - buildInputs = [ curl yajl ]; - }; - write_kafka = { - buildInputs = [ yajl rdkafka ]; - }; - write_log = { - buildInputs = [ yajl ]; - }; - write_mongodb = { - buildInputs = [ mongoc ]; - }; - write_prometheus = { - buildInputs = [ protobufc libmicrohttpd ]; - }; - write_redis = { - buildInputs = [ hiredis ]; - }; - write_riemann = { - buildInputs = [ protobufc riemann_c_client ]; - }; - xencpu = { - buildInputs = [ xen ]; - }; + amqp.buildInputs = [ + yajl + ] ++ lib.optionals stdenv.isLinux [ rabbitmq-c ]; + apache.buildInputs = [ curl ]; + ascent.buildInputs = [ curl libxml2 ]; + battery.buildInputs = lib.optionals stdenv.isDarwin [ + IOKit + ]; + bind.buildInputs = [ curl libxml2 ]; + ceph.buildInputs = [ yajl ]; + curl.buildInputs = [ curl ]; + curl_json.buildInputs = [ curl yajl ]; + curl_xml.buildInputs = [ curl libxml2 ]; + dbi.buildInputs = [ libdbi ]; + disk.buildInputs = lib.optionals stdenv.isLinux [ + udev + ] ++ lib.optionals stdenv.isDarwin [ + IOKit + ]; + dns.buildInputs = [ libpcap ]; + ipmi.buildInputs = [ openipmi ]; + iptables.buildInputs = [ + libpcap + ] ++ lib.optionals stdenv.isLinux [ + iptables libmnl + ]; + java.buildInputs = [ jdk libgcrypt libxml2 ]; + log_logstash.buildInputs = [ yajl ]; + lua.buildInputs = [ lua ]; + memcachec.buildInputs = [ libmemcached cyrus_sasl ]; + modbus.buildInputs = lib.optionals stdenv.isLinux [ libmodbus ]; + mqtt.buildInputs = [ mosquitto ]; + mysql.buildInputs = lib.optionals (libmysqlclient != null) [ + libmysqlclient + ]; + netlink.buildInputs = [ + libpcap + ] ++ lib.optionals stdenv.isLinux [ + libmnl + ]; + network.buildInputs = [ libgcrypt ]; + nginx.buildInputs = [ curl ]; + notify_desktop.buildInputs = [ libnotify gdk-pixbuf ]; + notify_email.buildInputs = [ libesmtp ]; + openldap.buildInputs = [ openldap ]; + ovs_events.buildInputs = [ yajl ]; + ovs_stats.buildInputs = [ yajl ]; + perl.buildInputs = [ perl ]; + pinba.buildInputs = [ protobufc ]; + ping.buildInputs = [ liboping ]; + postgresql.buildInputs = [ postgresql ]; + python.buildInputs = [ python ]; + redis.buildInputs = [ hiredis ]; + rrdcached.buildInputs = [ rrdtool libxml2 ]; + rrdtool.buildInputs = [ rrdtool libxml2 ]; + sensors.buildInputs = lib.optionals stdenv.isLinux [ lm_sensors ]; + sigrok.buildInputs = lib.optionals stdenv.isLinux [ libsigrok udev ]; + smart.buildInputs = lib.optionals stdenv.isLinux [ libatasmart udev ]; + snmp.buildInputs = lib.optionals stdenv.isLinux [ net-snmp ]; + snmp_agent.buildInputs = lib.optionals stdenv.isLinux [ net-snmp ]; + varnish.buildInputs = [ curl varnish ]; + virt.buildInputs = [ + libvirt libxml2 yajl + ] ++ lib.optionals stdenv.isLinux [ lvm2 udev ]; + write_http.buildInputs = [ curl yajl ]; + write_kafka.buildInputs = [ yajl rdkafka ]; + write_log.buildInputs = [ yajl ]; + write_mongodb.buildInputs = [ mongoc ]; + write_prometheus.buildInputs = [ protobufc libmicrohttpd ]; + write_redis.buildInputs = [ hiredis ]; + write_riemann.buildInputs = [ protobufc riemann_c_client ]; + xencpu.buildInputs = [ xen ]; }; configureFlags = lib.optionals (enabledPlugins != null) (