On Fri, Sep 11, 2015 at 5:03 AM, Daniel Campbell <z...@gentoo.org> wrote: > > I like the general 'gtk' flag we generally use to choose *which* > toolkit, and local USE flags for specific versions, if they are > supported. But in that case, the general gtk flag should be > interpreted as the latest version supported, so users don't come > across weirdly behaving packages that default to gtk2 (unless that > version is the most stable). > >... > > For starters, versioned USE flags more than likely don't belong in > make.conf's USE variable and shouldn't be global. >
That was roughly my proposal. USE=gui or something like that if the main effect is to have a gui or not. That is the sort of thing that SHOULD go in make.conf or in a profile. If disabling gtk makes it a console-only application then use the gui flag. USE=gtk if the main effect is to select /which/ toolkit is used if more than one is optionally supported. That /might/ go in a make.conf or profile, but probably shouldn't in general. It is more appropriate for something like the desktop/gnome profile than the desktop profile. USE=gtk# if you're picking which version to use. That should /almost never/ go in a profile (unless you're talking about a testing profile of some kind, such as on an overlay), or in a global config unless you REALLY know what you're getting into. Users setting this globally should expect to run into bugs. The package should default these flags to whatever is most appropriate for the specific package. I'd be tempted to even say to not have gtk3 but instead call the flag chromium-gtk3 or whatever so that it becomes very difficult to put in the global config. However, that goes against our general principle of letting the user break their system and keep the pieces if they think they know what they're doing. If somebody WANTS to test out a gtk3-only system or whatever they should have the freedom to do so, understanding that testing sometimes uncovers problems. Of course any change will need a transition period, news, handbook updates, etc. For the person who wants the "just works" experience they can pick a profile and it will do the right thing, and if they want to tailor things a bit more the USE=(-)gui flag will do what it would be expected to do. -- Rich