Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 692314

Summary: sys-fs/cryptsetup-2.2.0[libressl]: The following REQUIRED_USE flag constraints are unsatisfied: exactly-one-of ( gcrypt kernel libressl nettle openssl )
Product: Gentoo Linux Reporter: Stefan Strogin <steils>
Component: Current packagesAssignee: Gentoo's Team for Core System packages <base-system>
Status: RESOLVED FIXED    
Severity: normal CC: libressl
Priority: Normal Keywords: PullRequest
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/12728
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 561854    

Description Stefan Strogin gentoo-dev 2019-08-16 23:24:44 UTC
$ emerge -qpv cryptsetup 


!!! Problem resolving dependencies for sys-fs/cryptsetup

!!! The ebuild selected to satisfy "cryptsetup" has unmet requirements.
- sys-fs/cryptsetup-2.2.0::gentoo USE="argon2 libressl luks1_default nls openssl udev -gcrypt -kernel -nettle -pwquality -reencrypt -static -static-libs -urandom" ABI_X86="(64)"

  The following REQUIRED_USE flag constraints are unsatisfied:
    exactly-one-of ( gcrypt kernel libressl nettle openssl )

  The above constraints are a subset of the following complete expression:
    exactly-one-of ( gcrypt kernel libressl nettle openssl ) static? ( !gcrypt )


Since
	openssl? (
		!libressl? ( dev-libs/openssl:0=[static-libs(+)] )
		libressl? ( dev-libs/libressl:=[static-libs(+)] )
	)
it seems that for building cryptsetup with LibreSSL the USE flags should be "libressl openssl", therefore they should not be mutually exclusive.
The easiest way to fix it is to remove "libressl" from CRYPTO_BACKENDS, I think.
Comment 1 Stefan Strogin gentoo-dev 2019-08-16 23:32:26 UTC
See https://wiki.gentoo.org/wiki/Project:LibreSSL for examples:

«...That is, USE=libressl is never mutually exclusive to any other USE flag and should therefore never appear in REQUIRED_USE».
Comment 2 Larry the Git Cow gentoo-dev 2019-08-27 07:28:55 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4ea95c8cdc5213b05dc062806744605c5832dec6

commit 4ea95c8cdc5213b05dc062806744605c5832dec6
Author:     Stefan Strogin <steils@gentoo.org>
AuthorDate: 2019-08-16 23:33:18 +0000
Commit:     Lars Wendler <polynomial-c@gentoo.org>
CommitDate: 2019-08-27 07:28:48 +0000

    sys-fs/cryptsetup: remove USE=libressl from REQUIRED_USE
    
    USE=libressl must not be mutually exclusive to USE=openssl or any other
    USE flag. Also USE=openssl must be enabled when using USE=libressl, so
    that dependencies are checked correctly.
    
    Closes: https://bugs.gentoo.org/692314
    Package-Manager: Portage-2.3.71, Repoman-2.3.17
    Signed-off-by: Stefan Strogin <steils@gentoo.org>
    Closes: https://github.com/gentoo/gentoo/pull/12728
    Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>

 sys-fs/cryptsetup/cryptsetup-2.2.0.ebuild | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)