Gentoo Archives: gentoo-dev

From: Rich Freeman <rich0@g.o>
To: gentoo-dev <gentoo-dev@l.g.o>
Subject: Re: [gentoo-dev] www-client/chromium gtk3 support
Date: Sat, 12 Sep 2015 10:04:37
Message-Id: CAGfcS_=tWWz58qYcdJ=9bgjmxPyQi0MyB_dNwbE4MqUe_6i9Hw@mail.gmail.com
In Reply to: Re: [gentoo-dev] www-client/chromium gtk3 support by Raymond Jennings
1 On Sat, Sep 12, 2015 at 12:55 AM, Raymond Jennings <shentino@×××××.com> wrote:
2 > On Fri, Sep 11, 2015 at 5:13 AM, Rich Freeman <rich0@g.o> wrote:
3 >>
4 >> On Fri, Sep 11, 2015 at 5:03 AM, Daniel Campbell <zlg@g.o> wrote:
5 >> >
6 >> > I like the general 'gtk' flag we generally use to choose *which*
7 >> > toolkit, and local USE flags for specific versions, if they are
8 >> > supported. But in that case, the general gtk flag should be
9 >> > interpreted as the latest version supported, so users don't come
10 >> > across weirdly behaving packages that default to gtk2 (unless that
11 >> > version is the most stable).
12 >> >
13 >> >...
14 >> >
15 >> > For starters, versioned USE flags more than likely don't belong in
16 >> > make.conf's USE variable and shouldn't be global.
17 >
18 > Personally i disagree with this.
19 >
20 > Versioned use flags for widely used dependencies (like a windowing toolkit)
21 > IMO qualify as global USE flags because they have a common effect across
22 > many packages.
23
24 He wasn't suggesting that they have different meanings for different
25 packages. By saying that they shouldn't be global he meant that users
26 should not typically be manipulating them at a global level, such as
27 in make.conf.
28
29 Back in the day it was common to stick flags like these in make.conf
30 or in profiles, since if you didn't packages wouldn't build GUIs and
31 such. That was before USE defaults and it caused a lot of headaches
32 when multiple versions of toolkits started coming along and setting
33 these flags started causing harm.
34
35 But, the way we use the terms local/global USE flags is confusing.
36 They can mean that a flag has a package-specific vs global meaning, or
37 the terms can mean that it is recommended that the flag be enabled at
38 the package.use level vs at the make.conf level. To be fair to you,
39 until very recently the first meaning was the most common. People are
40 talking more about the second meaning of late because of problems that
41 happen when people try to tweak fairly detailed settings like gtk3 at
42 the global level.
43
44 >
45 >> I'd be tempted to even say to not have gtk3 but instead call the flag
46 >> chromium-gtk3 or whatever so that it becomes very difficult to put in
47 >> the global config. However, that goes against our general principle
48 >> of letting the user break their system and keep the pieces if they
49 >> think they know what they're doing. If somebody WANTS to test out a
50 >> gtk3-only system or whatever they should have the freedom to do so,
51 >> understanding that testing sometimes uncovers problems.
52 >
53 > I actually also think that there should be a single USE flag for building on
54 > gtk3, called gtk3. calling it "(packagename)-gtk3" is a bit redundant, and
55 > also flies in the face of having a single global flag with a coherent
56 > purpose.
57 >
58
59 The only reason for doing it the other way would be to make it harder
60 for users to shoot themselves in the foot by setting these flags in
61 make.conf. They'd have to put 50 flags in make.conf and not just one.
62 However, in general Gentoo operates under the principle that while we
63 should avoid surprising the user, we shouldn't actually make it hard
64 for the user to override our decisions when they feel it is best.
65
66 --
67 Rich