Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: b58a230c60c3
Choose a base ref
...
head repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 8c6cf3de3d1d
Choose a head ref
  • 1 commit
  • 2 files changed
  • 1 contributor

Commits on Sep 8, 2018

  1. 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.
    xeji authored Sep 8, 2018

    Unverified

    This commit is not signed, but one or more authors requires that any commit attributed to them is signed.
    Copy the full SHA
    8c6cf3d View commit details
Showing with 29 additions and 0 deletions.
  1. +10 −0 pkgs/os-specific/linux/cryptsetup/default.nix
  2. +19 −0 pkgs/os-specific/linux/cryptsetup/disable-failing-tests.patch
10 changes: 10 additions & 0 deletions pkgs/os-specific/linux/cryptsetup/default.nix
Original file line number Diff line number Diff line change
@@ -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";
19 changes: 19 additions & 0 deletions pkgs/os-specific/linux/cryptsetup/disable-failing-tests.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
diff -ur a/tests/blockwise-compat b/tests/blockwise-compat
--- a/tests/blockwise-compat 2018-09-08 12:23:11.706555098 +0200
+++ b/tests/blockwise-compat 2018-09-08 12:24:24.444393460 +0200
@@ -148,15 +148,11 @@
# device/file fn_name length
RUN "P" $1 read_buffer $BSIZE
RUN "P" $1 read_buffer $((2*BSIZE))
- RUN "F" $1 read_buffer $((BSIZE-1))
- RUN "F" $1 read_buffer $((BSIZE+1))
RUN "P" $1 read_buffer 0

RUN "P" $1 write_buffer $BSIZE
RUN "P" $1 write_buffer $((2*BSIZE))

- RUN "F" $1 write_buffer $((BSIZE-1))
- RUN "F" $1 write_buffer $((BSIZE+1))
RUN "F" $1 write_buffer 0

# basic blockwise functions