Hello, So here's something more simple wrt GUI USE flags.
Global USE=gui for gui - enable an optional graphics user interface or extra GUI tool (wording improvements welcome, once it's in principle agreed; but no point in bikeshed painting description wording till it is) Local USE flag description overrides to specify exactly what extra tool is built and installed with the flag are encouraged. This is meant to cover the cases where a package has an optional GUI, as a user facing graphical application, whichever the toolkit. It is meant as a feature based USE flag, as opposed to the "extra dep" based USE flags we've been using for this. There are a lot of those with USE=gtk right now. In many cases it's some little add-on graphical utility for a library, or some graphical configuration GUI in addition to command line, or some bigger cases in more modular packages that provide multiple frontends, and not all of them are graphical, but CLI or TUI (TUI meaning ncurses-based or similar). Also there are various with USE=X where it's also about that, but X isn't the only way to do GUI these days (any gtk3 app that doesn't directly use libX11/libxcb/etc themselves natively supports wayland, for example). Essentially, if it's an optional GUI, it'd be behind a USE=gui, instead of USE=gtk, USE=X, USE=qt4 or USE=qt5, when that optional GUI is available in only one toolkit version. So hence feature based flag, not dependency-based. http://tinyurl.com/gtk-use was an old analysis of USE=gtk usage in tree by Gilles over a year ago. That suggests that at least 80+ USE flags should be then USE=gui instead of USE=gtk out of that analyzed USE=gtk subset alone, not counting USE=X and others. There are some other things in the ideas pipeline for when there are multiple toolkit choices, but that's something for a different thread, a different day and more controversial. Mart