nixpkgs/pkgs/tools/system/collectd/default.nix

104 lines
2.4 KiB
Nix
Raw Normal View History

{ stdenv, fetchurl, fetchpatch, darwin
, autoreconfHook
, pkgconfig
, curl
, iptables
, jdk
, libapparmor
, libatasmart
, libcap_ng
, libcredis
, libdbi
, libgcrypt
, libmemcached, cyrus_sasl
, libmicrohttpd
, libmodbus
, libnotify, gdk_pixbuf
, liboping
, libpcap
, libsigrok
, libvirt
, libxml2
, libtool
, lm_sensors
, lvm2
, mysql
, numactl
, postgresql
, protobufc
, python
, rabbitmq-c
, riemann_c_client
, rrdtool
, udev
, varnish
, yajl
, net_snmp
, hiredis
, libmnl
, mosquitto
, rdkafka
, mongoc
}:
2013-08-30 09:58:02 +00:00
stdenv.mkDerivation rec {
2018-11-20 12:41:19 +00:00
version = "5.8.1";
name = "collectd-${version}";
2013-08-30 09:58:02 +00:00
src = fetchurl {
url = "https://collectd.org/files/${name}.tar.bz2";
2018-11-20 12:41:19 +00:00
sha256 = "1njk8hh56gb755xafsh7ahmqr9k2d4lam4ddj7s7fqz0gjigv5p7";
2013-08-30 09:58:02 +00:00
};
patches = [
(fetchpatch {
url = "https://github.com/rpv-tomsk/collectd/commit/d5a3c020d33cc33ee8049f54c7b4dffcd123bf83.patch";
sha256 = "1n65zw4d2k2bxapayaaw51ym7hy72a0cwi2abd8jgxcw3d0m5g15";
})
];
2017-10-22 15:23:32 +00:00
nativeBuildInputs = [ pkgconfig autoreconfHook ];
buildInputs = [
curl libdbi libgcrypt libmemcached
cyrus_sasl libnotify gdk_pixbuf liboping libpcap libvirt
libxml2 postgresql protobufc rrdtool
varnish yajl jdk libtool python hiredis libmicrohttpd
riemann_c_client mosquitto rdkafka mongoc
] ++ stdenv.lib.optionals (mysql != null) [ mysql.connector-c
] ++ stdenv.lib.optionals stdenv.isLinux [
iptables libatasmart libcredis libmodbus libsigrok
lm_sensors lvm2 rabbitmq-c udev net_snmp libmnl
# those might be no longer required when https://github.com/NixOS/nixpkgs/pull/51767
# is merged
libapparmor numactl libcap_ng
] ++ stdenv.lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.IOKit
darwin.apple_sdk.frameworks.ApplicationServices
];
configureFlags = [
"--localstatedir=/var"
"--disable-werror"
];
# do not create directories in /var during installPhase
postConfigure = ''
substituteInPlace Makefile --replace '$(mkinstalldirs) $(DESTDIR)$(localstatedir)/' '#'
'';
postInstall = ''
if [ -d $out/share/collectd/java ]; then
mv $out/share/collectd/java $out/share/
fi
'';
enableParallelBuilding = true;
meta = with stdenv.lib; {
description = "Daemon which collects system performance statistics periodically";
2017-06-19 23:56:37 +00:00
homepage = https://collectd.org;
license = licenses.gpl2;
platforms = platforms.unix;
2016-09-24 04:12:16 +00:00
maintainers = with maintainers; [ bjornfor fpletz ];
2013-08-30 09:58:02 +00:00
};
}