Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Cc: wired@g.o, gnome@g.o
Subject: Re: [gentoo-dev] RFC: GTK USE flag situation (gtk, gtk2, gtk3; relevant to bug #420493)
Date: Wed, 12 Feb 2014 08:10:32
Message-Id: 20140212090559.24aa64b5@pomiot.lan
In Reply to: [gentoo-dev] RFC: GTK USE flag situation (gtk, gtk2, gtk3; relevant to bug #420493) by Alex Alexander
1 Dnia 2014-02-12, o godz. 00:39:14
2 Alex Alexander <wired@g.o> napisał(a):
3
4 > Some developers choose to follow the Gnome team's highlights, while others
5 > choose to go their own way. The QA team would like to establish a guideline
6 > that solves this problem in the best way possible.
7
8 First of all, I think that the policy on a flag related to GTK+ should
9 be set by the GTK+ maintainer, that is the GNOME team, and not directly
10 by QA.
11
12 If people dislike the policy set by GNOME, they can appeal to QA, sure.
13 But IMO afterwards QA should either give their blessing to the current
14 GNOME policy or tell GNOME to change the policy, not step in front of
15 them with a 'higher instance override'.
16
17 > During our discussion, it was pointed out that keeping a generic USE="gtk" is
18 > sub-optimal. The non-straightforward nature of new toolkit versions makes
19 > transitioning from one to the other a slow, tedius process and we think that a
20 > non-versioned USE flag makes things even worse.
21
22 How does the flag exactly do that? I don't seem to get the point
23 in that paragraph.
24
25 > To achieve this, version 3 of gtk should always be enabled by USE="gtk3". At
26 > some point in the future, when gtk2 consumers reach zero, we will retire "gtk"
27 > for good. Then, if some day gtk4 comes around, we will be able to introduce
28 > support for it in the tree by simply adding USE="gtk4", without having to
29 > re-structure half the tree.
30
31 This goes exactly against the policy that is being established e.g. for
32 USE=ssl. If QA is really supposed to set a policy here, it should set
33 a generic policy for all those cases.
34
35 USE flags should represent *features*, not tools used to implement
36 them. If users want SSL support in an application, they want to set
37 USE=ssl and stop caring. Not look through all the USE flags in case
38 application used USE=openssl, USE=gnutls, USE=polarssl etc. for it.
39
40 Multiple USE flags make sense when there's support for multiple
41 toolkits that works and is maintained, and the user may reasonably want
42 to switch between them. But then, the extra USE flags for toolkit
43 switching should be introduced with keeping USE=ssl as the generic
44 on/off switch and the specific flags an optional implementation switch
45 for power users.
46
47 In the end, GTK+ is much the same. You want GTK+ GUI, you enable
48 USE=gtk. You need specific switching between 2 and 3, assuming it is
49 *reasonable and well supported*, you can use extra USE=gtk2 or
50 USE=gtk3. This generally works, and causes issues mostly to complainers
51 alike 'I dislike this, I want to be able to easily mask it all'.
52 I don't think there's a point messing up the general case for the sake
53 of complainers that will either end up enabling USE=gtk3 anyway at some
54 point or end up without a GUI.
55
56 That said, I'm all for killing most of USE=gtk, USE=wxwidgets, USE=qt*
57 occurrences with a generic USE=gui following the earlier principle.
58 If user installs an application and wants a GUI for it, shklee
59 shouldn't have to care whether it's GTK+, wxWidgets or Qt. Gentoo
60 should be a distribution friendly to all toolkits, people who collect
61 applications specific to a single toolkit belong in {,k,x}ubuntu.
62 Then, the special USE flags make sense for fine-picking one
63 of the toolkits when multiple are supported.
64
65 --
66 Best regards,
67 Michał Górny

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies