diff --git a/pkgs/tools/filesystems/bcachefs-tools/default.nix b/pkgs/tools/filesystems/bcachefs-tools/default.nix index 144ed0a3845..4c004e95e24 100644 --- a/pkgs/tools/filesystems/bcachefs-tools/default.nix +++ b/pkgs/tools/filesystems/bcachefs-tools/default.nix @@ -1,27 +1,55 @@ { stdenv, fetchgit, pkgconfig, attr, libuuid, libscrypt, libsodium, keyutils -, liburcu, zlib, libaio, zstd, lz4 }: +, liburcu, zlib, libaio, zstd, lz4, valgrind, python3Packages +, fuseSupport ? false, fuse3 ? null }: + +assert fuseSupport -> fuse3 != null; stdenv.mkDerivation { pname = "bcachefs-tools"; - version = "2019-10-12"; + version = "2020-03-25"; src = fetchgit { url = "https://evilpiepirate.org/git/bcachefs-tools.git"; - rev = "6e696ea08703eecd0d1c7b8c520b6f62f06f4f26"; - sha256 = "0m3valm68vc73b4kydlga17fglxa9bldrjaszlladzl5bd0zb967"; + rev = "2aed686c235a7d08adf601f147f823eb62e697a1"; + sha256 = "0prr8m6lwsabflslvi9j906wlm6m052zgi480y3gbkdm1sqcfjcs"; }; - enableParallelBuilding = true; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ attr libuuid libscrypt libsodium keyutils liburcu zlib libaio zstd lz4 ]; - installFlags = [ "PREFIX=${placeholder "out"}" ]; - - preInstall = '' + postPatch = '' substituteInPlace Makefile \ + --replace "pytest-3" "pytest --verbose" \ --replace "INITRAMFS_DIR=/etc/initramfs-tools" \ "INITRAMFS_DIR=${placeholder "out"}/etc/initramfs-tools" ''; + enableParallelBuilding = true; + + nativeBuildInputs = [ + pkgconfig + ]; + + buildInputs = [ + libuuid libscrypt libsodium keyutils liburcu zlib libaio + zstd lz4 python3Packages.pytest + ] ++ stdenv.lib.optional fuseSupport fuse3; + + doCheck = true; + + checkFlags = [ + "BCACHEFS_TEST_USE_VALGRIND=no" + ]; + + checkInputs = [ + valgrind + ]; + + preCheck = stdenv.lib.optionalString fuseSupport '' + rm tests/test_fuse.py + ''; + + installFlags = [ + "PREFIX=${placeholder "out"}" + ]; + meta = with stdenv.lib; { description = "Tool for managing bcachefs filesystems"; homepage = https://bcachefs.org/;