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

115 lines
5.0 KiB
Nix
Raw Normal View History

2016-04-04 19:31:01 +01:00
{ stdenv, fetchurl, pkgconfig, autoreconfHook, libestr, json_c, zlib, pythonPackages, fastJson
, libkrb5 ? null, systemd ? null, jemalloc ? null, mysql ? null, postgresql ? null
2015-03-12 01:49:38 +00:00
, libdbi ? null, net_snmp ? null, libuuid ? null, curl ? null, gnutls ? null
2015-09-18 03:27:31 +01:00
, libgcrypt ? null, liblognorm ? null, openssl ? null, librelp ? null, libksi ? null
2015-03-12 01:49:38 +00:00
, libgt ? null, liblogging ? null, libnet ? null, hadoop ? null, rdkafka ? null
2018-08-08 00:49:42 +01:00
, libmongo-client ? null, czmq ? null, rabbitmq-c ? null, hiredis ? null, mongoc ? null
2015-03-12 01:49:38 +00:00
}:
2013-03-14 13:07:56 +00:00
2015-03-12 01:49:38 +00:00
with stdenv.lib;
let
mkFlag = cond: name: if cond then "--enable-${name}" else "--disable-${name}";
in
2015-03-12 01:49:38 +00:00
stdenv.mkDerivation rec {
name = "rsyslog-8.39.0";
2013-03-14 13:07:56 +00:00
src = fetchurl {
url = "https://www.rsyslog.com/files/download/rsyslog/${name}.tar.gz";
sha256 = "1d3ac448b8gj58vg7n99ffv2rvpnhhin1ni5vyby73aksvz9c7y7";
2013-03-14 13:07:56 +00:00
};
2015-11-09 04:42:07 +00:00
#patches = [ ./fix-gnutls-detection.patch ];
2015-09-18 03:27:31 +01:00
nativeBuildInputs = [ pkgconfig autoreconfHook ];
2015-03-12 01:49:38 +00:00
buildInputs = [
2018-08-08 00:49:42 +01:00
fastJson libestr json_c zlib pythonPackages.docutils libkrb5 jemalloc
2015-09-18 03:27:31 +01:00
postgresql libdbi net_snmp libuuid curl gnutls libgcrypt liblognorm openssl
librelp libgt libksi liblogging libnet hadoop rdkafka libmongo-client czmq
2018-08-08 00:49:42 +01:00
rabbitmq-c hiredis mongoc
] ++ stdenv.lib.optional (mysql != null) mysql.connector-c
++ stdenv.lib.optional stdenv.isLinux systemd;
2013-03-14 14:27:34 +00:00
hardeningDisable = [ "format" ];
2016-02-12 18:41:43 +00:00
2015-03-12 01:49:38 +00:00
configureFlags = [
"--sysconfdir=/etc"
"--localstatedir=/var"
"--with-systemdsystemunitdir=\${out}/etc/systemd/system"
(mkFlag true "largefile")
(mkFlag true "regexp")
2015-06-27 01:19:12 +01:00
(mkFlag (libkrb5 != null) "gssapi-krb5")
(mkFlag true "klog")
(mkFlag true "kmsg")
(mkFlag (systemd != null) "imjournal")
(mkFlag true "inet")
(mkFlag (jemalloc != null) "jemalloc")
(mkFlag true "unlimited-select")
2015-09-18 03:27:31 +01:00
(mkFlag false "debug")
(mkFlag false "debug-symbols")
(mkFlag true "debugless")
(mkFlag false "valgrind")
(mkFlag false "diagtools")
(mkFlag true "usertools")
(mkFlag (mysql != null) "mysql")
(mkFlag (postgresql != null) "pgsql")
(mkFlag (libdbi != null) "libdbi")
(mkFlag (net_snmp != null) "snmp")
(mkFlag (libuuid != null) "uuid")
(mkFlag (curl != null) "elasticsearch")
(mkFlag (gnutls != null) "gnutls")
(mkFlag (libgcrypt != null) "libgcrypt")
(mkFlag true "rsyslogrt")
(mkFlag true "rsyslogd")
(mkFlag true "mail")
(mkFlag (liblognorm != null) "mmnormalize")
(mkFlag true "mmjsonparse")
(mkFlag true "mmaudit")
(mkFlag true "mmanon")
(mkFlag true "mmutf8fix")
(mkFlag true "mmcount")
(mkFlag true "mmsequence")
(mkFlag true "mmfields")
(mkFlag true "mmpstrucdata")
(mkFlag (openssl != null) "mmrfc5424addhmac")
(mkFlag (librelp != null) "relp")
(mkFlag (libgt != null) "guardtime")
2015-09-18 03:27:31 +01:00
(mkFlag (libksi != null) "gt-ksi")
(mkFlag (liblogging != null) "liblogging-stdlog")
(mkFlag (liblogging != null) "rfc3195")
(mkFlag true "imfile")
(mkFlag false "imsolaris")
(mkFlag true "imptcp")
(mkFlag true "impstats")
(mkFlag true "omprog")
(mkFlag (libnet != null) "omudpspoof")
(mkFlag true "omstdout")
(mkFlag (systemd != null) "omjournal")
(mkFlag true "pmlastmsg")
(mkFlag true "pmcisconames")
(mkFlag true "pmciscoios")
(mkFlag true "pmaixforwardedfrom")
(mkFlag true "pmsnare")
(mkFlag true "omruleset")
(mkFlag true "omuxsock")
(mkFlag true "mmsnmptrapd")
(mkFlag (hadoop != null) "omhdfs")
(mkFlag (rdkafka != null) "omkafka")
(mkFlag (libmongo-client != null) "ommongodb")
(mkFlag (czmq != null) "imzmq3")
(mkFlag (czmq != null) "imczmq")
(mkFlag (czmq != null) "omzmq3")
(mkFlag (czmq != null) "omczmq")
(mkFlag (rabbitmq-c != null) "omrabbitmq")
(mkFlag (hiredis != null) "omhiredis")
2015-09-18 03:27:31 +01:00
(mkFlag (curl != null) "omhttpfs")
(mkFlag true "generate-man-pages")
2015-03-12 01:49:38 +00:00
];
2013-03-14 13:07:56 +00:00
meta = {
2018-06-27 21:12:57 +01:00
homepage = https://www.rsyslog.com/;
description = "Enhanced syslog implementation";
2015-03-12 01:49:38 +00:00
license = licenses.gpl3;
2015-04-05 04:03:37 +01:00
platforms = platforms.linux;
2013-03-14 13:07:56 +00:00
};
}