[Exherbo-dev] GUI option standards

Bernd Steinhauser exherbo at bernd-steinhauser.de
Mon Apr 11 17:36:01 UTC 2016

Hi Kylie, thanks for bringing this up.

On 11/04/16 18:32, Kylie McClain wrote:
> Hi everyone,
> I was working on making some changes to sys-devel/cmake, and I got to
> thinking about the inconsistency we seem to have when it comes to
> representing options for GUIs. We have some packages which have just
> [providers:{gtk2,gtk3,qt4,qt5}], packages which have `X? ( (
> providers: ... ) )`, packages with just [qt4], [gtk3], and so on, andd
> the lack of consistency is kinda stupid.
Not sure providers would be appropriate.
One would maybe conclude that they all do the same, which is not necessarily the 
> It is my opinion that we should unify these using a new option: [gui],
> and then provide the setting of the toolkit of choice (if there is an
> option) via providers: suboptions.
Yeah, that was my proposal a few years ago. Due to laziness (or something else), 
we didn't come to a conclusion back then.
The main question is:
How do you handle different purposes of the option?
Most of them would fit in gui:, but some won't. e.g. if it builds libraries that 
will enable support for the toolkit (bindings or similar).
> This would replace the [X] option's usage as a way to decide if
> graphical interfaces should be built into programs, and would prepare
> us for whenever The Year of the Wayland desktop is here again.
The X option sucks and it always did. That's an artifact we took over from 
Gentoo and it's a bad one.
Since it's a global option (and thus nobody sets a package-specific 
description), nobody really knows what it will do if enabled.
Sometimes it will build some kind of gui, sometimes it will enable some weird 
libX11 thing, sometimes it's just some weird X-related library it uses etc, or 
even support for a different toolkit, that just happens to run under X.

Unfortunately, there was noone so far to just step forward and kill the damn thing.

Or to summarize that in a different way:
We have the possibility to easily define local options and local option 
descriptions. We should make use of that *way* more often and *only* use global 
option descriptions where it really makes sense and in case of the X option, it 
just does not.

More information about the Exherbo-dev mailing list