Gentoo Archives: gentoo-dev

From: Alex Alexander <wired@g.o>
To: gentoo-dev@l.g.o
Cc: gnome@g.o
Subject: [gentoo-dev] RFC: GTK USE flag situation (gtk, gtk2, gtk3; relevant to bug #420493)
Date: Tue, 11 Feb 2014 22:39:27
Message-Id: 20140211223913.GB26141@fury
1 Hello fellow developers,
2
3 In the first meeting of the new QA team, we discussed the state of the
4 gtk{,2,3} USE flags in the main tree. [0]
5
6 In its current state, USE="gtk" means gtk2. The Gnome team is trying to change
7 this into "the most recent gtk version" (it is a work in progress).
8
9 Unfortunately, the concurrent nature of gtk2/gtk3 has resulted in packages that
10 may support either or both the toolkits. To handle this, a few developers have
11 introduced the "gtk3" useflag, that prefers gtk3 over gtk2 when both toolkit
12 versions are supported. At this point, the Gnome team highly recommends
13 prefering gtk3 if possible, skipping the useflag altogether. [1]
14
15 Some developers choose to follow the Gnome team's highlights, while others
16 choose to go their own way. The QA team would like to establish a guideline
17 that solves this problem in the best way possible.
18
19 During our discussion, it was pointed out that keeping a generic USE="gtk" is
20 sub-optimal. The non-straightforward nature of new toolkit versions makes
21 transitioning from one to the other a slow, tedius process and we think that a
22 non-versioned USE flag makes things even worse.
23
24 A few of our members recommended a move away from the unversioned USE="gtk" to
25 versioned-only USE flags. Qt managed to do this quite successfully when they
26 transitioned from the unversioned USE="qt" (that actually meant qt3) to
27 USE="qt4". The benefits can be seen now that qt5 is around the corner.
28 USE="qt5" is straightforward, does not mess with qt4 packages and was
29 introduced to the tree without messing with current packages too much - other
30 than adding a new use flag where appropriate. There is also no need for
31 USE="qt" anymore.
32
33 To achieve this, version 3 of gtk should always be enabled by USE="gtk3". At
34 some point in the future, when gtk2 consumers reach zero, we will retire "gtk"
35 for good. Then, if some day gtk4 comes around, we will be able to introduce
36 support for it in the tree by simply adding USE="gtk4", without having to
37 re-structure half the tree.
38
39 We are reaching out to the developer community to hear your thoughts and ideas
40 on the matter. We would like to reach a decision that could possibly affect and
41 direct the state of whole tree. This decision could then be turned into a
42 policy, improving Gentoo's consistency across the tree.
43
44 Cheers
45
46 [0] https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Meeting_Summaries#Summary_of_Wednesday_January_29.2C_2014
47 [1] https://wiki.gentoo.org/wiki/Gnome_Team_Policies#gtk3
48 --
49 Alex Alexander | wired@gentoo

Attachments

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

Replies