hi, i have globaly enabled the "nss" and the "gnutls" useflag in my make.conf because i use software which depend on one or another crypto engine and i just dont want another normaly unnessesary entry in my package.use file! but when i try to merge networkmanager-1.16.0 this happens: !!! The ebuild selected to satisfy "net-misc/networkmanager" has unmet requirements. - net-misc/networkmanager-1.16.0::gentoo USE="consolekit dhclient gnutls json ncurses nss policykit resolvconf wifi -audit -bluetooth -connection-sharing -dhcpcd -elogind -introspection -iwd -modemmanager -ofono -ovs -ppp (-selinux) -systemd -teamd -test -vala -wext" ABI_X86="(64) -32 (-x32)" The following REQUIRED_USE flag constraints are unsatisfied: exactly-one-of ( nss gnutls ) The above constraints are a subset of the following complete expression: bluetooth? ( modemmanager ) iwd? ( wifi ) vala? ( introspection ) wext? ( wifi ) exactly-one-of ( nss gnutls ) at-most-one-of ( consolekit elogind systemd ) (dependency required by "dev-qt/qtnetwork-5.12.3::gentoo[networkmanager]" [ebuild]) (dependency required by "dev-qt/qtgui-5.12.3-r1::gentoo" [installed]) (dependency required by "dev-qt/qtwidgets-5.12.3::gentoo" [installed]) (dependency required by "sys-auth/polkit-qt-0.112.0_p20160416-r2::gentoo" [installed]) (dependency required by "kde-plasma/polkit-kde-agent-5.15.5::gentoo" [installed]) (dependency required by "sys-auth/polkit-0.115-r3::gentoo" [installed]) (dependency required by "sys-auth/consolekit-1.2.1::gentoo" [installed]) (dependency required by "sys-auth/pambase-20150213-r2::gentoo" [installed]) (dependency required by "sys-libs/pam-1.3.0-r2::gentoo" [installed]) (dependency required by "sys-apps/busybox-1.29.3::gentoo" [installed]) (dependency required by "@system" [set]) (dependency required by "@world" [argument]) it would be wise, since in my opinion that gnutls is the more accepted and used crypto engine in the opensource world, that if both useflags are set globaly the ebuild prefers said "gnutls" useflag and did not stop any merge process! thank for considering
This is not a bug, the ebuild does not and should never force one or the other. It is up to you the user to decide what support you want instead of expecting a developer to make that choice automatically.
because it is blocking further merges in portage it ACTUALY IS a bug. i consider every needed entry in my package.use file unnessary if the default use-flag handling is stable and a globaly activated "nss" and "gnutls" useflag is not really considered to be that exotic or even SHOULD NOT be seen as unsupported because as i said many projects are based on gnutls, other on nss as a mandatory dependency. possible easy AND permanent stable solution: if both use-flags are set globaly in a make.conf portage prefers the "gnutls" (or the "nss") use-flag just for networkmanager. i dont see really a difference here... because networkmanager works very well with both crypto engines. if only one is set via USE variable or package.use file portage respects the user configuration wishes as always, because larry the cow decides its own fate as it was always possible and thats why we love all our gentoo! this behavior happens also in other ebuilds already with other use-flag collisions and its a proven way for fixing those blockers! SO PLEASE FIX IT again thanks for considering...
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5e34f9942fe2cbb7320ec0ea9dc91e92ce4f3f75 commit 5e34f9942fe2cbb7320ec0ea9dc91e92ce4f3f75 Author: Mart Raudsepp <leio@gentoo.org> AuthorDate: 2019-07-27 10:13:46 +0000 Commit: Mart Raudsepp <leio@gentoo.org> CommitDate: 2019-07-27 10:13:46 +0000 net-misc/networkmanager: relax nss vs gnutls requirement just default to nss for now when both are set, as the configure passing logic already does. Closes: https://bugs.gentoo.org/686408 Package-Manager: Portage-2.3.62, Repoman-2.3.12 Signed-off-by: Mart Raudsepp <leio@gentoo.org> net-misc/networkmanager/networkmanager-1.18.2.ebuild | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)