Creating a bug to keep track of what is done here. The problem (pointed out in [1]) is that in: || ( qca-ossl qca[openssl] ) Portage always chooses the easier path. So if user has qca with USE=-openssl installed, it will try to install qca-ossl even if qca is new enough to block it. Instead of doing something fancy and more broken, we're choosing the simple solution: 1. introduce a revbumped version of <qca-2.1 with USE flags for all plugins, and make those flags PDEPEND on plugins [2,3], 2. update deps in all ebuilds [4] to just qca:2[openssl] etc. The advantage of this solution is that it is simple. It adds needless rebuild and runtime-only USE flags but only for the old ebuild. The net result is that: a. on ~arch, Portage always wants new qca with USE flags for plugins, b. on stable, Portage tells user to enable USE flags -- which he will eventually have to do anyway -- and pulls in plugins implicitly. [1]:https://bugs.funtoo.org/browse/FL-2119 [2]:https://github.com/gentoo/gentoo-portage-rsync-mirror/pull/27 [3]:https://github.com/gentoo/gentoo-portage-rsync-mirror/pull/32 [4]:https://github.com/gentoo/gentoo-portage-rsync-mirror/pull/44
And all committed!