|Summary:||[Future EAPI] RECOMMENDED_USE for default use status and conditional use recommendations|
|Product:||Gentoo Hosted Projects||Reporter:||Adam Feldman <np-hardass>|
|Package list:||Runtime testing required:||---|
|Bug Depends on:|
Description Adam Feldman 2015-02-06 16:15:47 UTC
Primarily, the idea here that a maintainer may want to have IUSE="foo bar" and bar is recommended if foo is selected. Currently, the only way to recommend a use flag is IUSE="+baz" This doesn't work with the above mentioned example because IUSE="foo +bar" would recommend bar regardless of whether foo is selected or not. For backwards compatibility, the IUSE + syntax can be maintained, but alternatively, it may be simpler, and make more sense to have something like: IUSE="foo bar baz" RECOMMENDED_USE=" foo? ( bar ) baz" So in this example: IUSE="baz" RECOMMENDED_USE="baz" is equivalent to IUSE="+baz" The original inspiration for this idea was the following, app-emulation/wine works both with and without X. Most users who use X would most likely want the USE flags lcms and xcomposite, but setting them + in IUSE makes compiling wine with -X more complicated, as every flag that + just for X users would have to be unset for non-X users. The above system simplifies this by only setting + on lcms and xcomposite if X is set. Alternatively, other names could be used, like DEFAULT_USE instead of RECOMMENDED_USE, but that is a side note to the primary point. Any thoughts on the idea would be greatly appreciated, and thank you in advance for your time.