2022-09-22 12:36:57 +00:00
|
|
|
{ lib
|
|
|
|
, stdenv
|
|
|
|
, fetchurl
|
|
|
|
, pkg-config
|
|
|
|
, autoreconfHook
|
|
|
|
, libestr
|
|
|
|
, json_c
|
|
|
|
, zlib
|
|
|
|
, docutils
|
|
|
|
, fastJson
|
|
|
|
, withKrb5 ? true
|
|
|
|
, libkrb5
|
2023-02-02 18:25:31 +00:00
|
|
|
, withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd
|
2022-09-22 12:36:57 +00:00
|
|
|
, systemd
|
|
|
|
, withJemalloc ? true
|
|
|
|
, jemalloc
|
|
|
|
, withMysql ? true
|
|
|
|
, libmysqlclient
|
|
|
|
, withPostgres ? true
|
|
|
|
, postgresql
|
|
|
|
, withDbi ? true
|
|
|
|
, libdbi
|
|
|
|
, withNetSnmp ? true
|
|
|
|
, net-snmp
|
|
|
|
, withUuid ? true
|
|
|
|
, libuuid
|
|
|
|
, withCurl ? true
|
|
|
|
, curl
|
|
|
|
, withGnutls ? true
|
|
|
|
, gnutls
|
|
|
|
, withGcrypt ? true
|
|
|
|
, libgcrypt
|
|
|
|
, withLognorm ? true
|
|
|
|
, liblognorm
|
|
|
|
, withMaxminddb ? true
|
|
|
|
, libmaxminddb
|
|
|
|
, withOpenssl ? true
|
|
|
|
, openssl
|
|
|
|
, withRelp ? true
|
|
|
|
, librelp
|
|
|
|
, withKsi ? true
|
|
|
|
, libksi
|
|
|
|
, withLogging ? true
|
|
|
|
, liblogging
|
|
|
|
, withNet ? true
|
|
|
|
, libnet
|
|
|
|
, withHadoop ? true
|
|
|
|
, hadoop
|
|
|
|
, withRdkafka ? true
|
|
|
|
, rdkafka
|
|
|
|
, withMongo ? true
|
|
|
|
, mongoc
|
|
|
|
, withCzmq ? true
|
|
|
|
, czmq
|
|
|
|
, withRabbitmq ? true
|
|
|
|
, rabbitmq-c
|
|
|
|
, withHiredis ? true
|
|
|
|
, hiredis
|
|
|
|
, nixosTests
|
2020-04-24 23:36:52 +00:00
|
|
|
}:
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
pname = "rsyslog";
|
2024-07-27 06:49:29 +00:00
|
|
|
version = "8.2406.0";
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
src = fetchurl {
|
|
|
|
url = "https://www.rsyslog.com/files/download/rsyslog/${pname}-${version}.tar.gz";
|
2024-07-27 06:49:29 +00:00
|
|
|
hash = "sha256-E0PgJp3TIWb/3gTXzuv6DnFGzx28aWLFa/Qoxh8Bp98=";
|
2020-04-24 23:36:52 +00:00
|
|
|
};
|
|
|
|
|
2022-11-02 22:02:43 +00:00
|
|
|
nativeBuildInputs = [
|
|
|
|
pkg-config
|
|
|
|
autoreconfHook
|
|
|
|
docutils
|
|
|
|
];
|
|
|
|
|
2020-04-24 23:36:52 +00:00
|
|
|
buildInputs = [
|
2022-09-22 12:36:57 +00:00
|
|
|
fastJson
|
|
|
|
libestr
|
|
|
|
json_c
|
|
|
|
zlib
|
|
|
|
] ++ lib.optional withKrb5 libkrb5
|
|
|
|
++ lib.optional withJemalloc jemalloc
|
|
|
|
++ lib.optional withPostgres postgresql
|
|
|
|
++ lib.optional withDbi libdbi
|
|
|
|
++ lib.optional withNetSnmp net-snmp
|
|
|
|
++ lib.optional withUuid libuuid
|
|
|
|
++ lib.optional withCurl curl
|
|
|
|
++ lib.optional withGnutls gnutls
|
|
|
|
++ lib.optional withGcrypt libgcrypt
|
|
|
|
++ lib.optional withLognorm liblognorm
|
|
|
|
++ lib.optional withOpenssl openssl
|
|
|
|
++ lib.optional withRelp librelp
|
|
|
|
++ lib.optional withKsi libksi
|
|
|
|
++ lib.optional withLogging liblogging
|
|
|
|
++ lib.optional withNet libnet
|
|
|
|
++ lib.optional withHadoop hadoop
|
|
|
|
++ lib.optional withRdkafka rdkafka
|
2023-07-15 17:15:38 +00:00
|
|
|
++ lib.optionals withMongo [ mongoc ]
|
2022-09-22 12:36:57 +00:00
|
|
|
++ lib.optional withCzmq czmq
|
|
|
|
++ lib.optional withRabbitmq rabbitmq-c
|
|
|
|
++ lib.optional withHiredis hiredis
|
|
|
|
++ lib.optional withMaxminddb libmaxminddb
|
|
|
|
++ lib.optional withMysql libmysqlclient
|
|
|
|
++ lib.optional withSystemd systemd;
|
2020-04-24 23:36:52 +00:00
|
|
|
|
2024-09-19 14:19:46 +00:00
|
|
|
configureFlags = [
|
2020-04-24 23:36:52 +00:00
|
|
|
"--sysconfdir=/etc"
|
|
|
|
"--localstatedir=/var"
|
|
|
|
"--with-systemdsystemunitdir=\${out}/etc/systemd/system"
|
2024-09-19 14:19:46 +00:00
|
|
|
(lib.enableFeature true "largefile")
|
|
|
|
(lib.enableFeature true "regexp")
|
|
|
|
(lib.enableFeature withKrb5 "gssapi-krb5")
|
|
|
|
(lib.enableFeature true "klog")
|
|
|
|
(lib.enableFeature true "kmsg")
|
|
|
|
(lib.enableFeature withSystemd "imjournal")
|
|
|
|
(lib.enableFeature true "inet")
|
|
|
|
(lib.enableFeature withJemalloc "jemalloc")
|
|
|
|
(lib.enableFeature true "unlimited-select")
|
|
|
|
(lib.enableFeature withCurl "clickhouse")
|
|
|
|
(lib.enableFeature false "debug")
|
|
|
|
(lib.enableFeature false "debug-symbols")
|
|
|
|
(lib.enableFeature true "debugless")
|
|
|
|
(lib.enableFeature false "valgrind")
|
|
|
|
(lib.enableFeature false "diagtools")
|
|
|
|
(lib.enableFeature withCurl "fmhttp")
|
|
|
|
(lib.enableFeature true "usertools")
|
|
|
|
(lib.enableFeature withMysql "mysql")
|
|
|
|
(lib.enableFeature withPostgres "pgsql")
|
|
|
|
(lib.enableFeature withDbi "libdbi")
|
|
|
|
(lib.enableFeature withNetSnmp "snmp")
|
|
|
|
(lib.enableFeature withUuid "uuid")
|
|
|
|
(lib.enableFeature withCurl "elasticsearch")
|
|
|
|
(lib.enableFeature withGnutls "gnutls")
|
|
|
|
(lib.enableFeature withGcrypt "libgcrypt")
|
|
|
|
(lib.enableFeature true "rsyslogrt")
|
|
|
|
(lib.enableFeature true "rsyslogd")
|
|
|
|
(lib.enableFeature true "mail")
|
|
|
|
(lib.enableFeature withLognorm "mmnormalize")
|
|
|
|
(lib.enableFeature withMaxminddb "mmdblookup")
|
|
|
|
(lib.enableFeature true "mmjsonparse")
|
|
|
|
(lib.enableFeature true "mmaudit")
|
|
|
|
(lib.enableFeature true "mmanon")
|
|
|
|
(lib.enableFeature true "mmutf8fix")
|
|
|
|
(lib.enableFeature true "mmcount")
|
|
|
|
(lib.enableFeature true "mmsequence")
|
|
|
|
(lib.enableFeature true "mmfields")
|
|
|
|
(lib.enableFeature true "mmpstrucdata")
|
|
|
|
(lib.enableFeature withOpenssl "mmrfc5424addhmac")
|
|
|
|
(lib.enableFeature withRelp "relp")
|
|
|
|
(lib.enableFeature withKsi "ksi-ls12")
|
|
|
|
(lib.enableFeature withLogging "liblogging-stdlog")
|
|
|
|
(lib.enableFeature withLogging "rfc3195")
|
|
|
|
(lib.enableFeature true "imfile")
|
|
|
|
(lib.enableFeature false "imsolaris")
|
|
|
|
(lib.enableFeature true "imptcp")
|
|
|
|
(lib.enableFeature true "impstats")
|
|
|
|
(lib.enableFeature true "omprog")
|
|
|
|
(lib.enableFeature withNet "omudpspoof")
|
|
|
|
(lib.enableFeature true "omstdout")
|
|
|
|
(lib.enableFeature withSystemd "omjournal")
|
|
|
|
(lib.enableFeature true "pmlastmsg")
|
|
|
|
(lib.enableFeature true "pmcisconames")
|
|
|
|
(lib.enableFeature true "pmciscoios")
|
|
|
|
(lib.enableFeature true "pmaixforwardedfrom")
|
|
|
|
(lib.enableFeature true "pmsnare")
|
|
|
|
(lib.enableFeature true "omruleset")
|
|
|
|
(lib.enableFeature true "omuxsock")
|
|
|
|
(lib.enableFeature true "mmsnmptrapd")
|
|
|
|
(lib.enableFeature withHadoop "omhdfs")
|
|
|
|
(lib.enableFeature withRdkafka "omkafka")
|
|
|
|
(lib.enableFeature withMongo "ommongodb")
|
|
|
|
(lib.enableFeature withCzmq "imczmq")
|
|
|
|
(lib.enableFeature withCzmq "omczmq")
|
|
|
|
(lib.enableFeature withRabbitmq "omrabbitmq")
|
|
|
|
(lib.enableFeature withHiredis "omhiredis")
|
|
|
|
(lib.enableFeature withCurl "omhttp")
|
|
|
|
(lib.enableFeature true "generate-man-pages")
|
2020-04-24 23:36:52 +00:00
|
|
|
];
|
|
|
|
|
|
|
|
passthru.tests = {
|
|
|
|
nixos-rsyslogd = nixosTests.rsyslogd;
|
|
|
|
};
|
|
|
|
|
2024-09-19 14:19:46 +00:00
|
|
|
meta = {
|
2020-04-24 23:36:52 +00:00
|
|
|
homepage = "https://www.rsyslog.com/";
|
|
|
|
description = "Enhanced syslog implementation";
|
2024-04-21 15:54:59 +00:00
|
|
|
mainProgram = "rsyslogd";
|
2020-04-24 23:36:52 +00:00
|
|
|
changelog = "https://raw.githubusercontent.com/rsyslog/rsyslog/v${version}/ChangeLog";
|
2024-09-19 14:19:46 +00:00
|
|
|
license = lib.licenses.gpl3Only;
|
|
|
|
platforms = lib.platforms.linux;
|
2024-07-31 10:19:44 +00:00
|
|
|
maintainers = [ ];
|
2020-04-24 23:36:52 +00:00
|
|
|
};
|
|
|
|
}
|