{ lib, stdenv, fetchFromGitHub, cmake, flex, bison, pkg-config , systemd, openssl, postgresql }: stdenv.mkDerivation rec { pname = "fluent-bit"; version = "1.8.3"; src = fetchFromGitHub { owner = "fluent"; repo = "fluent-bit"; rev = "v${version}"; sha256 = "004x135imja67babmmpkk1jpp5xwhfa8cwg1svaas2asq6cnv77d"; }; nativeBuildInputs = [ cmake flex bison pkg-config postgresql ]; buildInputs = [ openssl ] ++ lib.optionals stdenv.isLinux [ systemd ]; cmakeFlags = [ "-DFLB_METRICS=ON" "-DFLB_HTTP_SERVER=ON" "-DFLB_SQLDB=ON" "-DFLB_OUT_PGSQL=ON" "-DFLB_IN_SYSTEMD=ON" ]; patches = lib.optionals stdenv.isDarwin [ ./fix-luajit-darwin.patch ]; NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isGNU [ # _FORTIFY_SOURCE requires compiling with optimization (-O) "-O" # Needed due to bundled mbedtls "-Wno-error=format" "-Wno-error=format-truncation" ]; outputs = [ "out" "dev" ]; postPatch = '' substituteInPlace src/CMakeLists.txt \ --replace /lib/systemd $out/lib/systemd ''; meta = with lib; { description = "Log forwarder and processor, part of Fluentd ecosystem"; homepage = "https://fluentbit.io"; maintainers = with maintainers; [ samrose fpletz ]; license = licenses.asl20; platforms = platforms.unix; }; }