From f48ecef7bda617e569e6cc8a98abccec2a9b5c3c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 10 Mar 2024 10:46:31 +0200 Subject: [PATCH] gnu: cryptsetup: Only use ruby-asciidoctor on supported systems. * gnu/packages/cryptsetup.scm (cryptsetup)[native-inputs]: Only use ruby-asciidoctor on supported systems. [arguments]: When building without ruby-asciidoctor adjust the configure-flags. Change-Id: If4551833de3c5b5a28424c059644e9fa7fda5abd --- gnu/packages/cryptsetup.scm | 40 ++++++++++++++++++++++--------------- 1 file changed, 24 insertions(+), 16 deletions(-) diff --git a/gnu/packages/cryptsetup.scm b/gnu/packages/cryptsetup.scm index 6765fed726..44f9c77984 100644 --- a/gnu/packages/cryptsetup.scm +++ b/gnu/packages/cryptsetup.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2016 Ludovic Courtès ;;; Copyright © 2019–2021 Tobias Geerinckx-Rice +;;; Copyright © 2024 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -49,23 +50,30 @@ (define-public cryptsetup (build-system gnu-build-system) (arguments `(#:configure-flags - (list - ;; Argon2 is always enabled, this just selects the (faster) full version. - "--enable-libargon2" - ;; The default is OpenSSL which provides better PBKDF performance. - "--with-crypto_backend=gcrypt" - ;; GRUB 2.06 supports LUKS2, but does it reliably support all set-ups…? - "--with-default-luks-format=LUKS1" - ;; External tokens would need an env variable to work on Guix, and we - ;; don't have users for it yet. - "--disable-external-tokens" - "--disable-ssh-token" - ;; libgcrypt is not found otherwise when cross-compiling. - ;; - (string-append "--with-libgcrypt-prefix=" - (assoc-ref %build-inputs "libgcrypt"))))) + (append + (if (assoc-ref %build-inputs "ruby-asciidoctor") + '() + (list "--disable-asciidoc")) + (list + ;; Argon2 is always enabled, this just selects the (faster) full version. + "--enable-libargon2" + ;; The default is OpenSSL which provides better PBKDF performance. + "--with-crypto_backend=gcrypt" + ;; GRUB 2.06 supports LUKS2, but does it reliably support all set-ups…? + "--with-default-luks-format=LUKS1" + ;; External tokens would need an env variable to work on Guix, and we + ;; don't have users for it yet. + "--disable-external-tokens" + "--disable-ssh-token" + ;; libgcrypt is not found otherwise when cross-compiling. + ;; + (string-append "--with-libgcrypt-prefix=" + (assoc-ref %build-inputs "libgcrypt")))))) (native-inputs - (list pkg-config ruby-asciidoctor)) + (append (list pkg-config) + (if (supported-package? ruby-asciidoctor) + (list ruby-asciidoctor) + '()))) (inputs (list argon2 json-c