13 , withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd
35 , withMaxminddb ? true
62 stdenv.mkDerivation rec {
67 url = "https://www.rsyslog.com/files/download/rsyslog/${pname}-${version}.tar.gz";
68 hash = "sha256-i7LxX5v5u35jUYLj0+Nwv8OdCL81o2fc6XFOGG94cgY=";
82 ] ++ lib.optional withKrb5 libkrb5
83 ++ lib.optional withJemalloc jemalloc
84 ++ lib.optional withPostgres postgresql
85 ++ lib.optional withDbi libdbi
86 ++ lib.optional withNetSnmp net-snmp
87 ++ lib.optional withUuid libuuid
88 ++ lib.optional withCurl curl
89 ++ lib.optional withGnutls gnutls
90 ++ lib.optional withGcrypt libgcrypt
91 ++ lib.optional withLognorm liblognorm
92 ++ lib.optional withOpenssl openssl
93 ++ lib.optional withRelp librelp
94 ++ lib.optional withKsi libksi
95 ++ lib.optional withLogging liblogging
96 ++ lib.optional withNet libnet
97 ++ lib.optional withHadoop hadoop
98 ++ lib.optional withRdkafka rdkafka
99 ++ lib.optionals withMongo [ mongoc ]
100 ++ lib.optional withCzmq czmq
101 ++ lib.optional withRabbitmq rabbitmq-c
102 ++ lib.optional withHiredis hiredis
103 ++ lib.optional withMaxminddb libmaxminddb
104 ++ lib.optional withMysql libmysqlclient
105 ++ lib.optional withSystemd systemd;
109 "--localstatedir=/var"
110 "--with-systemdsystemunitdir=\${out}/etc/systemd/system"
111 (lib.enableFeature true "largefile")
112 (lib.enableFeature true "regexp")
113 (lib.enableFeature withKrb5 "gssapi-krb5")
114 (lib.enableFeature true "klog")
115 (lib.enableFeature true "kmsg")
116 (lib.enableFeature withSystemd "imjournal")
117 (lib.enableFeature true "inet")
118 (lib.enableFeature withJemalloc "jemalloc")
119 (lib.enableFeature true "unlimited-select")
120 (lib.enableFeature withCurl "clickhouse")
121 (lib.enableFeature false "debug")
122 (lib.enableFeature false "debug-symbols")
123 (lib.enableFeature true "debugless")
124 (lib.enableFeature false "valgrind")
125 (lib.enableFeature false "diagtools")
126 (lib.enableFeature withCurl "fmhttp")
127 (lib.enableFeature true "usertools")
128 (lib.enableFeature withMysql "mysql")
129 (lib.enableFeature withPostgres "pgsql")
130 (lib.enableFeature withDbi "libdbi")
131 (lib.enableFeature withNetSnmp "snmp")
132 (lib.enableFeature withUuid "uuid")
133 (lib.enableFeature withCurl "elasticsearch")
134 (lib.enableFeature withGnutls "gnutls")
135 (lib.enableFeature withGcrypt "libgcrypt")
136 (lib.enableFeature true "rsyslogrt")
137 (lib.enableFeature true "rsyslogd")
138 (lib.enableFeature true "mail")
139 (lib.enableFeature withLognorm "mmnormalize")
140 (lib.enableFeature withMaxminddb "mmdblookup")
141 (lib.enableFeature true "mmjsonparse")
142 (lib.enableFeature true "mmaudit")
143 (lib.enableFeature true "mmanon")
144 (lib.enableFeature true "mmutf8fix")
145 (lib.enableFeature true "mmcount")
146 (lib.enableFeature true "mmsequence")
147 (lib.enableFeature true "mmfields")
148 (lib.enableFeature true "mmpstrucdata")
149 (lib.enableFeature withOpenssl "mmrfc5424addhmac")
150 (lib.enableFeature withRelp "relp")
151 (lib.enableFeature withKsi "ksi-ls12")
152 (lib.enableFeature withLogging "liblogging-stdlog")
153 (lib.enableFeature withLogging "rfc3195")
154 (lib.enableFeature true "imfile")
155 (lib.enableFeature false "imsolaris")
156 (lib.enableFeature true "imptcp")
157 (lib.enableFeature true "impstats")
158 (lib.enableFeature true "omprog")
159 (lib.enableFeature withNet "omudpspoof")
160 (lib.enableFeature true "omstdout")
161 (lib.enableFeature withSystemd "omjournal")
162 (lib.enableFeature true "pmlastmsg")
163 (lib.enableFeature true "pmcisconames")
164 (lib.enableFeature true "pmciscoios")
165 (lib.enableFeature true "pmaixforwardedfrom")
166 (lib.enableFeature true "pmsnare")
167 (lib.enableFeature true "omruleset")
168 (lib.enableFeature true "omuxsock")
169 (lib.enableFeature true "mmsnmptrapd")
170 (lib.enableFeature withHadoop "omhdfs")
171 (lib.enableFeature withRdkafka "omkafka")
172 (lib.enableFeature withMongo "ommongodb")
173 (lib.enableFeature withCzmq "imczmq")
174 (lib.enableFeature withCzmq "omczmq")
175 (lib.enableFeature withRabbitmq "omrabbitmq")
176 (lib.enableFeature withHiredis "omhiredis")
177 (lib.enableFeature withCurl "omhttp")
178 (lib.enableFeature true "generate-man-pages")
182 nixos-rsyslogd = nixosTests.rsyslogd;
186 homepage = "https://www.rsyslog.com/";
187 description = "Enhanced syslog implementation";
188 mainProgram = "rsyslogd";
189 changelog = "https://raw.githubusercontent.com/rsyslog/rsyslog/v${version}/ChangeLog";
190 license = lib.licenses.gpl3Only;
191 platforms = lib.platforms.linux;