On 06/07/2016 12:20 PM, Michał Górny wrote:
> 
> So many weird ideas... while the simplest one is a proper REQUIRED_USE
> with gui being the control flag, and IUSE defaults to select
> the preferred toolkit.
> 

This is what came to my mind.

The underlying problem that we are hitting (a la Patrick) is that USE
flags are supposed to be a user-interface for building software from
source, but implementation details are an important part of configuring
the software to be built.

It would be nice if USE=gui meant "build a GUI" and that was all the
input that we needed from the user. But if the upstream package supports
both QT and GTK and we need to pass either --with-qt or --with-gtk to
the build system, then there is an unavoidable choice to be made. We can
prefer one, but both options need to be available.

If we want the best of both worlds -- a nice user-interface and full
configurability -- then we can use "the user wants a GUI" as a trigger
for the implementation choice. If there's a default implementation and
the user doesn't care, no further interference should be necessary.
Otherwise the presence of the generic USE=gui will let us know, so we
can let the user know, that he needs to pick one.


Reply via email to