cryptsetup: Remove ruby build dependency from NixOS

Removing this build dependency makes most NixOS tests completely
independent of the ruby ecosystem.
This helps reduce mass-rebuilds, which is especially useful when
bisecting the staging branch using a NixOS test.
This commit is contained in:
Robert Hensing 2022-09-23 14:59:16 +01:00 committed by Yureka
parent c4bf5cbd84
commit e5b5136429

View File

@ -1,5 +1,12 @@
{ lib, stdenv, fetchurl, lvm2, json_c, asciidoctor
, openssl, libuuid, pkg-config, popt }:
, openssl, libuuid, pkg-config, popt
# The release tarballs contain precomputed manpage files, so we don't need
# to run asciidoctor on the man sources. By avoiding asciidoctor, we make
# the bare NixOS build hash independent of changes to the ruby ecosystem,
# saving mass-rebuilds.
, rebuildMan ? false
}:
stdenv.mkDerivation rec {
pname = "cryptsetup";
@ -28,6 +35,8 @@ stdenv.mkDerivation rec {
"--enable-cryptsetup-reencrypt"
"--with-crypto_backend=openssl"
"--disable-ssh-token"
] ++ lib.optionals (!rebuildMan) [
"--disable-asciidoc"
] ++ lib.optionals stdenv.hostPlatform.isStatic [
"--disable-external-tokens"
# We have to override this even though we're removing token
@ -36,7 +45,7 @@ stdenv.mkDerivation rec {
"--with-luks2-external-tokens-path=/"
];
nativeBuildInputs = [ pkg-config asciidoctor ];
nativeBuildInputs = [ pkg-config ] ++ lib.optionals rebuildMan [ asciidoctor ];
buildInputs = [ lvm2 json_c openssl libuuid popt ];
# The test [7] header backup in compat-test fails with a mysterious