Gentoo Archives: gentoo-dev

From: hasufell <hasufell@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] USE="gui"
Date: Sat, 12 Sep 2015 11:47:25
Message-Id: 55F410BD.1040805@gentoo.org
In Reply to: Re: [gentoo-dev] USE="gui" by Daniel Campbell
1 On 09/12/2015 01:52 AM, Daniel Campbell wrote:
2 > On 09/11/2015 01:34 PM, hasufell wrote:
3 >> I already use IUSE=gui and will keep doing that.
4 >
5 >> USE flags in gentoo are the best and the worst thing at the same
6 >> time. They are also mostly the main reason people don't like
7 >> gentoo, because USE flags are (for todays situation) pretty much
8 >> not an appropriate pattern to reflect real-world configuration. To
9 >> be more precise... USE flags are first-class citizens and there is
10 >> only one layer of them. There's not configuration
11 >> pattern/abstraction behind them. If you wonder what I am talking
12 >> about, have a look at NixOS. The reason we lack proper declarative
13 >> configuration is also the reason we had to introduce this ugliness
14 >> called REQUIRED_USE. Instead of saying "gui.gtk" we say
15 >> "REQUIRED_USE="gui? ( || ( gtk ... ) )". And it will get worse. I
16 >> wonder when people start realizing that.
17 >
18 >
19 > So are you suggesting maybe we come up with namespaced USE flags? That
20 > would be interesting.
21 >
22
23 I'm not sure we can do that without breaking gentoo. At least, it would
24 be a _huge_ EAPI change.
25
26 It would require a lot of PM work, would break our configuration format
27 (if you want to do it properly) and probably have other side effects for
28 running systems.
29
30 And if you have followed NixOS development... you know that you can
31 screw this up as well, because consistency is even more important if you
32 really want declarative configuration. And I'm not sure there is enough
33 interest in consistency in gentoo. People seem to be fine with micro
34 managing USE flags in order to achieve a particular configuration state
35 which can break arbitrarily on any update.