at 24.05-pre 78 lines 2.3 kB view raw
1{ stdenv, lib, fetchurl, gnumake, libnetfilter_acct, libnetfilter_conntrack 2, libnetfilter_log, libmnl, libnfnetlink, automake, autoconf, autogen, libtool 3, postgresql, libmysqlclient, sqlite 4, pkg-config, libpcap, linuxdoc-tools, autoreconfHook, nixosTests }: 5 6stdenv.mkDerivation rec { 7 version = "2.0.8"; 8 pname = "ulogd"; 9 10 src = fetchurl { 11 url = "https://netfilter.org/projects/${pname}/files/${pname}-${version}.tar.bz2"; 12 hash = "sha256-Tq1sOXDD9X+h6J/i18xIO6b+K9GwhwFSHgs6/WZ98pE="; 13 }; 14 15 outputs = [ "out" "doc" "man" ]; 16 17 postPatch = '' 18 substituteInPlace ulogd.8 --replace "/usr/share/doc" "$doc/share/doc" 19 ''; 20 21 postBuild = '' 22 pushd doc/ 23 linuxdoc --backend=txt --filter ulogd.sgml 24 linuxdoc --backend=html --split=0 ulogd.sgml 25 popd 26 ''; 27 28 postInstall = '' 29 install -Dm444 -t $out/share/doc/${pname} ulogd.conf doc/ulogd.txt doc/ulogd.html README doc/*table 30 install -Dm444 -t $out/share/doc/${pname}-mysql doc/mysql*.sql 31 install -Dm444 -t $out/share/doc/${pname}-pgsql doc/pgsql*.sql 32 ''; 33 34 buildInputs = [ 35 libnetfilter_acct 36 libnetfilter_conntrack 37 libnetfilter_log 38 libmnl 39 libnfnetlink 40 libpcap 41 postgresql 42 libmysqlclient 43 sqlite 44 ]; 45 46 nativeBuildInputs = [ 47 autoreconfHook 48 pkg-config 49 automake 50 autoconf 51 autogen 52 libtool 53 linuxdoc-tools 54 ]; 55 56 passthru.tests = { inherit (nixosTests) ulogd; }; 57 58 meta = with lib; { 59 description = "Userspace logging daemon for netfilter/iptables"; 60 61 longDescription = '' 62 Logging daemon that reads event messages coming from the Netfilter 63 connection tracking, the Netfilter packet logging subsystem and from the 64 Netfilter accounting subsystem. You have to enable support for connection 65 tracking event delivery; ctnetlink and the NFLOG target in your Linux 66 kernel 2.6.x or load their respective modules. The deprecated ULOG target 67 (which has been superseded by NFLOG) is also supported. 68 69 The received messages can be logged into files or into a MySQL, SQLite3 70 or PostgreSQL database. IPFIX and Graphite output are also supported. 71 ''; 72 73 homepage = "https://www.netfilter.org/projects/ulogd/index.html"; 74 license = licenses.gpl2; 75 platforms = platforms.linux; 76 maintainers = with maintainers; [ p-h ]; 77 }; 78}