diff --git a/pkgs/development/python-modules/flow-record/default.nix b/pkgs/development/python-modules/flow-record/default.nix new file mode 100644 index 000000000000..cf75588e20bd --- /dev/null +++ b/pkgs/development/python-modules/flow-record/default.nix @@ -0,0 +1,68 @@ +{ lib +, buildPythonPackage +, elasticsearch +, fetchFromGitHub +, lz4 +, msgpack +, pytestCheckHook +, pythonOlder +, setuptools +, setuptools-scm +, zstandard +}: + +buildPythonPackage rec { + pname = "flow-record"; + version = "3.5"; + format = "pyproject"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "fox-it"; + repo = "flow.record"; + rev = version; + hash = "sha256-hULz5pIqCKujVH3SpzFgzNM9R7WTtqAmuNOxG7VlUd0="; + }; + + SETUPTOOLS_SCM_PRETEND_VERSION = version; + + nativeBuildInputs = [ + setuptools + setuptools-scm + ]; + + propagatedBuildInputs = [ + msgpack + ]; + + passthru.optional-dependencies = { + compression = [ + lz4 + zstandard + ]; + elastic = [ + elasticsearch + ]; + }; + + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "flow.record" + ]; + + disabledTestPaths = [ + # Test requires rdump + "tests/test_rdump.py" + ]; + + meta = with lib; { + description = "Library for defining and creating structured data"; + homepage = "https://github.com/fox-it/flow.record"; + license = licenses.agpl3Only; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e049ef7bcc33..70a01777552b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3510,6 +3510,8 @@ in { flit-core = callPackage ../development/python-modules/flit-core { }; + flow-record = callPackage ../development/python-modules/flow-record { }; + flower = callPackage ../development/python-modules/flower { }; flowlogs_reader = callPackage ../development/python-modules/flowlogs_reader { };