cryptsetup: enable and fix tests (#46346)

Some tests use O_DIRECT which is filesystem dependent and fails in a
sandbox as well as on some filesystems without sandboxing.
Patch out O_DIRECT and disable the 4 test cases that still fail in a
sandbox. See discussion in #46151.
This commit is contained in:
xeji
2018-09-08 21:24:15 +02:00
committed by GitHub
parent b58a230c60
commit 8c6cf3de3d
2 changed files with 29 additions and 0 deletions
@@ -14,8 +14,16 @@ stdenv.mkDerivation rec {
sha256 = "0d2p9g2wqcv6l3671gvw96p16jadbgyh21ddy2bhqgi96dq3qflx";
};
# Disable 4 test cases that fail in a sandbox
patches = [ ./disable-failing-tests.patch ];
postPatch = ''
patchShebangs tests
# O_DIRECT is filesystem dependent and fails in a sandbox (on tmpfs)
# and on several filesystem types (btrfs, zfs) without sandboxing.
# Remove it, see discussion in #46151
substituteInPlace tests/unit-utils-io.c --replace "| O_DIRECT" ""
'';
NIX_LDFLAGS = "-lgcc_s";
@@ -30,6 +38,8 @@ stdenv.mkDerivation rec {
buildInputs = [ lvm2 json_c openssl libuuid popt ]
++ stdenv.lib.optional enablePython python2;
doCheck = true;
meta = {
homepage = https://gitlab.com/cryptsetup/cryptsetup/;
description = "LUKS for dm-crypt";