1 |
On 06/07/2016 12:20 PM, Michał Górny wrote: |
2 |
> |
3 |
> So many weird ideas... while the simplest one is a proper REQUIRED_USE |
4 |
> with gui being the control flag, and IUSE defaults to select |
5 |
> the preferred toolkit. |
6 |
> |
7 |
|
8 |
This is what came to my mind. |
9 |
|
10 |
The underlying problem that we are hitting (a la Patrick) is that USE |
11 |
flags are supposed to be a user-interface for building software from |
12 |
source, but implementation details are an important part of configuring |
13 |
the software to be built. |
14 |
|
15 |
It would be nice if USE=gui meant "build a GUI" and that was all the |
16 |
input that we needed from the user. But if the upstream package supports |
17 |
both QT and GTK and we need to pass either --with-qt or --with-gtk to |
18 |
the build system, then there is an unavoidable choice to be made. We can |
19 |
prefer one, but both options need to be available. |
20 |
|
21 |
If we want the best of both worlds -- a nice user-interface and full |
22 |
configurability -- then we can use "the user wants a GUI" as a trigger |
23 |
for the implementation choice. If there's a default implementation and |
24 |
the user doesn't care, no further interference should be necessary. |
25 |
Otherwise the presence of the generic USE=gui will let us know, so we |
26 |
can let the user know, that he needs to pick one. |