{ lib, buildPythonPackage, dissect-cstruct, dissect-util, fetchFromGitHub, google-crc32c, python-lzo, setuptools, setuptools-scm, zstandard, }: buildPythonPackage rec { pname = "dissect-btrfs"; version = "1.9"; pyproject = true; src = fetchFromGitHub { owner = "fox-it"; repo = "dissect.btrfs"; tag = version; hash = "sha256-qOyPMDZtudrvZNlyiL16gv513zuTCd2O14Q4QwHMmoc="; }; nativeBuildInputs = [ setuptools setuptools-scm ]; propagatedBuildInputs = [ dissect-cstruct dissect-util ]; optional-dependencies = { full = [ python-lzo zstandard ]; gcrc32 = [ google-crc32c ]; }; # Issue with the test file handling doCheck = false; pythonImportsCheck = [ "dissect.btrfs" ]; meta = { description = "Dissect module implementing a parser for the BTRFS file system"; homepage = "https://github.com/fox-it/dissect.btrfs"; changelog = "https://github.com/fox-it/dissect.btrfs/releases/tag/${src.tag}"; license = lib.licenses.agpl3Only; maintainers = with lib.maintainers; [ fab ]; }; }