… | |
… | |
6 | PEP, see http://www.python.org/peps/pep-0001.html for instructions and links |
6 | PEP, see http://www.python.org/peps/pep-0001.html for instructions and links |
7 | to templates. DO NOT USE THIS HTML FILE AS YOUR TEMPLATE! |
7 | to templates. DO NOT USE THIS HTML FILE AS YOUR TEMPLATE! |
8 | --> |
8 | --> |
9 | <head> |
9 | <head> |
10 | <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
10 | <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
11 | <meta name="generator" content="Docutils 0.3.3: http://docutils.sourceforge.net/" /> |
11 | <meta name="generator" content="Docutils 0.3.7: http://docutils.sourceforge.net/" /> |
12 | <title>GLEP 29 -- USE flag groups</title> |
12 | <title>GLEP 29 -- USE flag groups</title> |
13 | <link rel="stylesheet" href="tools/glep.css" type="text/css" /> |
13 | <link rel="stylesheet" href="tools/glep.css" type="text/css" /> |
14 | </head> |
14 | </head> |
15 | <body bgcolor="white"> |
15 | <body bgcolor="white"> |
16 | <table class="navigation" cellpadding="0" cellspacing="0" |
16 | <table class="navigation" cellpadding="0" cellspacing="0" |
… | |
… | |
22 | <td class="textlinks" align="left"> |
22 | <td class="textlinks" align="left"> |
23 | [<b><a href="http://www.gentoo.org/">Gentoo Linux Home</a></b>] |
23 | [<b><a href="http://www.gentoo.org/">Gentoo Linux Home</a></b>] |
24 | [<b><a href="http://www.gentoo.org/proj/en/glep">GLEP Index</a></b>] |
24 | [<b><a href="http://www.gentoo.org/proj/en/glep">GLEP Index</a></b>] |
25 | [<b><a href="./glep-0029.txt">GLEP Source</a></b>] |
25 | [<b><a href="./glep-0029.txt">GLEP Source</a></b>] |
26 | </td></tr></table> |
26 | </td></tr></table> |
27 | <div class="document"> |
|
|
28 | <table class="rfc2822 field-list" frame="void" rules="none"> |
27 | <table class="rfc2822 docutils field-list" frame="void" rules="none"> |
29 | <col class="field-name" /> |
28 | <col class="field-name" /> |
30 | <col class="field-body" /> |
29 | <col class="field-body" /> |
31 | <tbody valign="top"> |
30 | <tbody valign="top"> |
32 | <tr class="field"><th class="field-name">GLEP:</th><td class="field-body">29</td> |
31 | <tr class="field"><th class="field-name">GLEP:</th><td class="field-body">29</td> |
33 | </tr> |
32 | </tr> |
34 | <tr class="field"><th class="field-name">Title:</th><td class="field-body">USE flag groups</td> |
33 | <tr class="field"><th class="field-name">Title:</th><td class="field-body">USE flag groups</td> |
35 | </tr> |
34 | </tr> |
36 | <tr class="field"><th class="field-name">Version:</th><td class="field-body">1.1</td> |
35 | <tr class="field"><th class="field-name">Version:</th><td class="field-body">1.5</td> |
37 | </tr> |
36 | </tr> |
38 | <tr class="field"><th class="field-name">Author:</th><td class="field-body">Ciaran McCreesh <ciaranm at gentoo.org></td> |
37 | <tr class="field"><th class="field-name">Author:</th><td class="field-body">Ciaran McCreesh <ciaranm at gentoo.org></td> |
39 | </tr> |
38 | </tr> |
40 | <tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference" href="http://www.gentoo.org/cgi-bin/viewcvs/xml/htdocs/proj/en/glep/glep-0029.txt?cvsroot=gentoo">2004/08/22 01:59:24</a></td> |
39 | <tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference" href="http://www.gentoo.org/cgi-bin/viewcvs/xml/htdocs/proj/en/glep/glep-0029.txt?cvsroot=gentoo">2005/06/24 21:36:04</a></td> |
41 | </tr> |
40 | </tr> |
42 | <tr class="field"><th class="field-name">Status:</th><td class="field-body">Draft</td> |
41 | <tr class="field"><th class="field-name">Status:</th><td class="field-body">Draft</td> |
43 | </tr> |
42 | </tr> |
44 | <tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td> |
43 | <tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td> |
45 | </tr> |
44 | </tr> |
46 | <tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference" href="glep-0012.html">text/x-rst</a></td> |
45 | <tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference" href="glep-0012.html">text/x-rst</a></td> |
47 | </tr> |
46 | </tr> |
48 | <tr class="field"><th class="field-name">Created:</th><td class="field-body">19-August-2004</td> |
47 | <tr class="field"><th class="field-name">Created:</th><td class="field-body">19-August-2004</td> |
49 | </tr> |
48 | </tr> |
50 | <tr class="field"><th class="field-name">Post-Date:</th><td class="field-body">21-August-2004</td> |
49 | <tr class="field"><th class="field-name">Post-Date:</th><td class="field-body">21-August-2004, 18-October-2004, 25-October-2004, 24-July-2005</td> |
51 | </tr> |
50 | </tr> |
52 | </tbody> |
51 | </tbody> |
53 | </table> |
52 | </table> |
54 | <hr /> |
53 | <hr /> |
55 | <div class="contents topic" id="contents"> |
54 | <div class="contents topic" id="contents"> |
56 | <p class="topic-title first"><a name="contents">Contents</a></p> |
55 | <p class="topic-title first"><a name="contents">Contents</a></p> |
57 | <ul class="simple"> |
56 | <ul class="simple"> |
|
|
57 | <li><a class="reference" href="#status" id="id7" name="id7">Status</a></li> |
58 | <li><a class="reference" href="#abstract" id="id3" name="id3">Abstract</a></li> |
58 | <li><a class="reference" href="#abstract" id="id8" name="id8">Abstract</a></li> |
59 | <li><a class="reference" href="#motivation" id="id4" name="id4">Motivation</a></li> |
59 | <li><a class="reference" href="#motivation" id="id9" name="id9">Motivation</a></li> |
60 | <li><a class="reference" href="#specification" id="id5" name="id5">Specification</a><ul> |
60 | <li><a class="reference" href="#specification" id="id10" name="id10">Specification</a><ul> |
61 | <li><a class="reference" href="#group-specification" id="id6" name="id6">Group Specification</a></li> |
61 | <li><a class="reference" href="#group-specification" id="id11" name="id11">Group Specification</a></li> |
62 | <li><a class="reference" href="#group-descriptions" id="id7" name="id7">Group Descriptions</a></li> |
62 | <li><a class="reference" href="#group-descriptions" id="id12" name="id12">Group Descriptions</a></li> |
63 | <li><a class="reference" href="#using-groups" id="id8" name="id8">Using Groups</a></li> |
63 | <li><a class="reference" href="#using-groups" id="id13" name="id13">Using Groups</a></li> |
64 | <li><a class="reference" href="#additional-issues" id="id9" name="id9">Additional Issues</a></li> |
64 | <li><a class="reference" href="#issues-with-flags-and-groups" id="id14" name="id14">Issues with -flags and -@GROUPS</a></li> |
65 | <li><a class="reference" href="#adding-new-groups" id="id10" name="id10">Adding New Groups</a></li> |
65 | <li><a class="reference" href="#adding-new-groups" id="id15" name="id15">Adding New Groups</a></li> |
66 | </ul> |
66 | </ul> |
67 | </li> |
67 | </li> |
68 | <li><a class="reference" href="#rationale" id="id11" name="id11">Rationale</a></li> |
68 | <li><a class="reference" href="#rationale" id="id16" name="id16">Rationale</a></li> |
69 | <li><a class="reference" href="#reference-implementation" id="id12" name="id12">Reference Implementation</a></li> |
69 | <li><a class="reference" href="#reference-implementation" id="id17" name="id17">Reference Implementation</a></li> |
70 | <li><a class="reference" href="#backwards-compatability" id="id13" name="id13">Backwards Compatability</a></li> |
70 | <li><a class="reference" href="#backwards-compatibility" id="id18" name="id18">Backwards Compatibility</a></li> |
71 | <li><a class="reference" href="#references" id="id14" name="id14">References</a></li> |
71 | <li><a class="reference" href="#references" id="id19" name="id19">References</a></li> |
72 | <li><a class="reference" href="#copyright" id="id15" name="id15">Copyright</a></li> |
72 | <li><a class="reference" href="#copyright" id="id20" name="id20">Copyright</a></li> |
73 | </ul> |
73 | </ul> |
74 | </div> |
74 | </div> |
75 | <p>BIG FAT DISCLAIMER: EARLY DRAFT, SEND COMMENTS TO ciaranm. EVERYTHING IN |
75 | <div class="section" id="status"> |
76 | HERE IS OPEN TO DISCUSSION. THE WRITING STYLE SUCKS. MAY CAUSE CANCER IN |
76 | <h1><a class="toc-backref" href="#id7" name="status">Status</a></h1> |
77 | PUPPIES.</p> |
77 | <p>Withdrawn by request of the author.</p> |
|
|
78 | </div> |
78 | <div class="section" id="abstract"> |
79 | <div class="section" id="abstract"> |
79 | <h1><a class="toc-backref" href="#id3" name="abstract">Abstract</a></h1> |
80 | <h1><a class="toc-backref" href="#id8" name="abstract">Abstract</a></h1> |
80 | <p>Currently, USE flags must be selected on a one-by-one basis, making it |
81 | <p>Currently, USE flags must be selected on a one-by-one basis, making it |
81 | time-consuming to set up make.conf appropriately for a machine's role.</p> |
82 | time-consuming to set up make.conf appropriately for a machine's role.</p> |
82 | </div> |
83 | </div> |
83 | <div class="section" id="motivation"> |
84 | <div class="section" id="motivation"> |
84 | <h1><a class="toc-backref" href="#id4" name="motivation">Motivation</a></h1> |
85 | <h1><a class="toc-backref" href="#id9" name="motivation">Motivation</a></h1> |
85 | <p>USE flags allow the user to have software built in a manner which is |
86 | <p>Many packages have optional support for other packages (for example, the |
86 | relevant for their system's role. For example, a desktop user will |
87 | Vim text editor can optionally support perl, python and ruby |
87 | probably want to enable optional X support in packages, whereas a server |
88 | interpreters). In Gentoo, these optional dependencies can be selected by |
88 | user will not. However, with several hundred USE flags available, it can |
89 | the user using USE flags. This allows a system appropriate for a given |
89 | be time consuming to set up make.conf appropriately.</p> |
90 | environment to be built -- a server, for example, should not typically |
|
|
91 | have an X11 server or sound support, whereas both would be desirable on |
|
|
92 | most desktop systems.</p> |
|
|
93 | <p>With several hundred USE flags available, deciding upon which USE flags to |
|
|
94 | enable and which to disable can take a long time. Although the default USE |
|
|
95 | flag settings are reasonable, they are clearly not appropriate for every |
|
|
96 | system. In addition, using "-<em>" to disable all default USE flags can be |
|
|
97 | risky as certain USE flags should not generally be turned off. This GLEP |
90 | <p>This GLEP proposes a mechanism for grouping USE flags to simplify |
98 | proposes a mechanism for grouping USE flags to simplify selection and to |
91 | selection.</p> |
99 | make USE="-</em>" less dangerous.</p> |
92 | </div> |
100 | </div> |
93 | <div class="section" id="specification"> |
101 | <div class="section" id="specification"> |
94 | <h1><a class="toc-backref" href="#id5" name="specification">Specification</a></h1> |
102 | <h1><a class="toc-backref" href="#id10" name="specification">Specification</a></h1> |
95 | <div class="section" id="group-specification"> |
103 | <div class="section" id="group-specification"> |
96 | <h2><a class="toc-backref" href="#id6" name="group-specification">Group Specification</a></h2> |
104 | <h2><a class="toc-backref" href="#id11" name="group-specification">Group Specification</a></h2> |
97 | <p>A group shall consist of one or more USE flags. These groups are defined |
105 | <p>A group shall consist of one or more tokens. Each token may be a USE flag, |
98 | in <tt class="literal"><span class="pre">${PORTDIR}/profiles/use.groups</span></tt>. It is proposed that uppercase names |
106 | a -USE flag, a reference to another group or a negative reference to |
99 | only are used for groups to keep them visually distinct from normal USE |
107 | another group.</p> |
100 | flags. The file format is similar to the existing use.* files:</p> |
108 | <p>These groups are defined in <tt class="docutils literal"><span class="pre">${PORTDIR}/profiles/use.groups</span></tt>. It is |
|
|
109 | proposed that uppercase names only are used for groups to keep them |
|
|
110 | visually distinct from normal USE flags (almost all USE flags are |
|
|
111 | lowercase), although this should not been forced programmatically. The |
|
|
112 | file should be similar in format to the existing use.* files. In the |
|
|
113 | following, <tt class="docutils literal"><span class="pre">SOME_GROUP</span></tt> and <tt class="docutils literal"><span class="pre">OTHER_GROUP</span></tt> are group names, and |
|
|
114 | <tt class="docutils literal"><span class="pre">flag1</span></tt> through <tt class="docutils literal"><span class="pre">flag5</span></tt> are USE flag names:</p> |
101 | <pre class="literal-block"> |
115 | <pre class="literal-block"> |
102 | SOME_GROUP flag1 flag2 flag3 |
116 | SOME_GROUP flag1 flag2 flag3 |
103 | OTHER_GROUP flag2 flag4 |
117 | OTHER_GROUP flag2 flag4 |
104 | </pre> |
118 | </pre> |
105 | <p>Groups may recursively include other groups. For consistency with GLEP 23 |
119 | <p>Groups may recursively include other groups. For consistency with GLEP 23 |
106 | [1], it is proposed that group names are prefixed with an 'at' symbol (@):</p> |
120 | <a class="footnote-reference" href="#id4" id="id1" name="id1">[1]</a>, it is proposed that group names have their name prefixed with an |
|
|
121 | 'at' symbol (@):</p> |
107 | <pre class="literal-block"> |
122 | <pre class="literal-block"> |
108 | GROUP1 flag1 |
123 | GROUP1 flag1 |
109 | GROUP2 flag2 flag3 @GROUP1 |
124 | GROUP2 flag2 flag3 @GROUP1 |
110 | GROUP3 flag4 |
125 | GROUP3 flag4 |
111 | GROUP4 @GROUP2 @GROUP3 flag5 |
126 | GROUP4 @GROUP2 @GROUP3 flag5 |
112 | </pre> |
127 | </pre> |
|
|
128 | <p>The same flag may end up being in a particular group more than once:</p> |
|
|
129 | <pre class="literal-block"> |
|
|
130 | GROUP1 flag1 flag2 |
|
|
131 | GROUP2 flag2 flag3 |
|
|
132 | GROUP3 @GROUP1 @GROUP2 flag3 flag4 |
|
|
133 | </pre> |
|
|
134 | <p>As with similar files, comments may be included. Lines which begin with a |
|
|
135 | hash symbol (#) are comments.</p> |
|
|
136 | <pre class="literal-block"> |
|
|
137 | # This is a comment |
|
|
138 | FOO bar baz fnord |
|
|
139 | </pre> |
113 | <p>Users may create their own groups using <tt class="literal"><span class="pre">/etc/portage/use.groups</span></tt>. This |
140 | <p>Users may create their own groups using <tt class="docutils literal"><span class="pre">/etc/portage/use.groups</span></tt>. This |
114 | file overrides the profile settings in the case of duplicates.</p> |
141 | file overrides the profile settings in the case of duplicates.</p> |
|
|
142 | <p>It should be legal for groups to specify -use flags, although for reasons |
|
|
143 | discussed below this feature should not generally be used. The syntax is |
|
|
144 | the same:</p> |
|
|
145 | <pre class="literal-block"> |
|
|
146 | # This group contains two negative flags |
|
|
147 | GROUP1 flag1 -flag2 -flag3 flag4 |
|
|
148 | </pre> |
|
|
149 | <p>Groups may <em>not</em> contain circular group references. The following example |
|
|
150 | is illegal:</p> |
|
|
151 | <pre class="literal-block"> |
|
|
152 | # Illegal circular references |
|
|
153 | GROUP1 @GROUP2 foo |
|
|
154 | GROUP2 @GROUP1 bar |
|
|
155 | </pre> |
115 | </div> |
156 | </div> |
116 | <div class="section" id="group-descriptions"> |
157 | <div class="section" id="group-descriptions"> |
117 | <h2><a class="toc-backref" href="#id7" name="group-descriptions">Group Descriptions</a></h2> |
158 | <h2><a class="toc-backref" href="#id12" name="group-descriptions">Group Descriptions</a></h2> |
118 | <p>Groups shall have a textual description associated with them in the same |
159 | <p>Groups shall have a textual description associated with them in the same |
119 | way as USE flags. The file <tt class="literal"><span class="pre">${PORTDIR}/profiles/use.groups.desc</span></tt> |
160 | way as USE flags. The file <tt class="docutils literal"><span class="pre">${PORTDIR}/profiles/use.groups.desc</span></tt> |
120 | contains these:</p> |
161 | contains these:</p> |
121 | <pre class="literal-block"> |
162 | <pre class="literal-block"> |
|
|
163 | # This is a comment |
122 | DESKTOP Flags which are appropriate for most desktop systems |
164 | DESKTOP Flags which are appropriate for most desktop systems |
123 | RECOMMENDED Flags which should be enabled on almost all systems |
165 | RECOMMENDED Flags which should be enabled on almost all systems |
124 | </pre> |
166 | </pre> |
125 | </div> |
167 | </div> |
126 | <div class="section" id="using-groups"> |
168 | <div class="section" id="using-groups"> |
127 | <h2><a class="toc-backref" href="#id8" name="using-groups">Using Groups</a></h2> |
169 | <h2><a class="toc-backref" href="#id13" name="using-groups">Using Groups</a></h2> |
128 | <p>Groups may be used in <tt class="literal"><span class="pre">/etc/make.conf</span></tt>, <tt class="literal"><span class="pre">/etc/portage/package.use</span></tt> and |
170 | <p>Groups may be used in <tt class="docutils literal"><span class="pre">/etc/make.conf</span></tt>, <tt class="docutils literal"><span class="pre">/etc/portage/package.use</span></tt> and |
129 | other places where USE flags are normally specified. Again, the @ symbol |
171 | other places where USE flags are normally specified. They may <em>not</em> be |
130 | is used. For example, a <tt class="literal"><span class="pre">make.conf</span></tt> for a desktop system might resemble:</p> |
172 | used inside <tt class="docutils literal"><span class="pre">IUSE`.</span> <span class="pre">As</span> <span class="pre">before,</span> <span class="pre">the</span> <span class="pre">@</span> <span class="pre">symbol</span> <span class="pre">is</span> <span class="pre">used</span> <span class="pre">to</span> <span class="pre">indicate</span> <span class="pre">that</span> <span class="pre">a</span> |
|
|
173 | <span class="pre">group</span> <span class="pre">is</span> <span class="pre">being</span> <span class="pre">referenced.</span> <span class="pre">For</span> <span class="pre">example,</span> <span class="pre">a</span> <span class="pre">``make.conf</span></tt> for a KDE desktop |
|
|
174 | system might resemble:</p> |
131 | <pre class="literal-block"> |
175 | <pre class="literal-block"> |
132 | USE="@DESKTOP @KDE perl alsa dvd" |
176 | USE="@DESKTOP @KDE perl alsa dvd" |
133 | </pre> |
177 | </pre> |
|
|
178 | <p>Groups may be preceded by a -sign to invert their contents (that is, all |
|
|
179 | 'enable' use flags become -flags, and all -flags become enable flags). Be |
|
|
180 | warned that this feature can cause confusion (see below). Example usage:</p> |
|
|
181 | <pre class="literal-block"> |
|
|
182 | # We have the following groups defined... |
|
|
183 | GROUP1 foo bar |
|
|
184 | GROUP2 -bar baz -fnord |
|
|
185 | GROUP3 @GROUP1 -@GROUP2 -bar foo |
|
|
186 | GROUP4 -foo -bar |
|
|
187 | |
|
|
188 | # And the following... |
|
|
189 | USE="-@GROUP3 @GROUP4 bar" |
|
|
190 | |
|
|
191 | # which resolves to... |
|
|
192 | USE="-@GROUP1 @GROUP2 bar -foo -foo -bar bar" |
|
|
193 | USE="-foo -bar bar -baz fnord bar -foo -foo -bar bar" |
|
|
194 | USE="-baz fnord -foo bar" |
|
|
195 | </pre> |
134 | </div> |
196 | </div> |
135 | <div class="section" id="additional-issues"> |
197 | <div class="section" id="issues-with-flags-and-groups"> |
136 | <h2><a class="toc-backref" href="#id9" name="additional-issues">Additional Issues</a></h2> |
198 | <h2><a class="toc-backref" href="#id14" name="issues-with-flags-and-groups">Issues with -flags and <a class="reference" href="mailto:-@GROUPS">-@GROUPS</a></a></h2> |
137 | <p>Groups should <em>not</em> generally contain negative USE flags, as this would |
199 | <p>Earlier drafts of this GLEP did not allow -use flags or <a class="reference" href="mailto:-@GROUPS">-@GROUPS</a>. However, |
138 | lead to confusion. Groups are intended to specify what will be enabled for |
200 | because of feedback along the lines of "we shouldn't disallow features |
139 | a given role, not what will be turned off. For example, if the @KDE group |
201 | just because some users won't understand them" (for example, <a class="footnote-reference" href="#id6" id="id2" name="id2">[3]</a>), these |
140 | disabled Gnome-related USE flags, and a user used <tt class="literal"><span class="pre">USE="@GNOME</span> <span class="pre">@KDE"</span></tt> to |
202 | are now allowed but discouraged.</p> |
141 | specify that they wanted both Gnome <em>and</em> KDE to be used where applicable, |
203 | <p>The problems are best illustrated by example. Say we have the following |
142 | chaos would ensue. However, for the sake of consistency, -flags should be |
204 | groups defined:</p> |
143 | supported even if their use is strongly discouraged.</p> |
205 | <pre class="literal-block"> |
144 | <p>It is proposed that <tt class="literal"><span class="pre">-@GROUP</span></tt> syntax should <em>not</em> be supported. Instead, |
206 | KDE X kde qt |
145 | users wishing to turn most things off could use the <tt class="literal"><span class="pre">-*</span></tt> USE syntax |
207 | GNOME X gtk gtk2 gnome |
146 | along with a group (for example, @RECOMMENDED) which turned on flags (for |
208 | </pre> |
147 | example, pam and readline) which should usually be used.</p> |
209 | <p>A user who wants a KDE desktop but no GNOME may do the following:</p> |
|
|
210 | <pre class="literal-block"> |
|
|
211 | USE="@KDE -@GNOME" |
|
|
212 | </pre> |
|
|
213 | <p>However, this will not give the desired effect -- the <tt class="docutils literal"><span class="pre">X</span></tt> USE flag will |
|
|
214 | end up being disabled.</p> |
|
|
215 | <p>Similarly, -use flags could cause a lot of confusion if misused. If, for |
|
|
216 | example, the KDE group turned off GNOME things and the GNOME group turned |
|
|
217 | off KDE things:</p> |
|
|
218 | <pre class="literal-block"> |
|
|
219 | KDE X kde qt -gtk -gnome |
|
|
220 | GNOME X gtk gtk2 gnome -kde -qt |
|
|
221 | </pre> |
|
|
222 | <p>And a user wished to use both KDE and GNOME on a system, and so had USE |
|
|
223 | flags as follows:</p> |
|
|
224 | <pre class="literal-block"> |
|
|
225 | USE="@KDE @GNOME" |
|
|
226 | </pre> |
|
|
227 | <p>They would end up with:</p> |
|
|
228 | <pre class="literal-block"> |
|
|
229 | USE="X kde qt -gtk -gnome X gtk gtk2 gnome -kde -qt" |
|
|
230 | </pre> |
|
|
231 | <p>Which simplifies:</p> |
|
|
232 | <pre class="literal-block"> |
|
|
233 | USE="X gtk gtk2 gnome -kde -qt" |
|
|
234 | </pre> |
|
|
235 | <p>This is clearly not the desired effect.</p> |
148 | </div> |
236 | </div> |
149 | <div class="section" id="adding-new-groups"> |
237 | <div class="section" id="adding-new-groups"> |
150 | <h2><a class="toc-backref" href="#id10" name="adding-new-groups">Adding New Groups</a></h2> |
238 | <h2><a class="toc-backref" href="#id15" name="adding-new-groups">Adding New Groups</a></h2> |
151 | <p>The actual groups to be created is beyond the scope of this GLEP, and any |
239 | <p>The actual groups to be created is beyond the scope of this GLEP, and any |
152 | group names contained herein should be treated as examples only. Creation |
240 | group names contained herein should be treated as examples only. Creation |
153 | of new groups and changing a group's flags should be discussed on the |
241 | of new groups and changing a group's flags should be discussed on the |
154 | gentoo-dev mailing list as per existing policy for new global USE flags.</p> |
242 | gentoo-dev mailing list as per existing policy for new global USE flags.</p> |
|
|
243 | <p>In particular, any changes involving -flags <em>must</em> be thoroughly discussed |
|
|
244 | before implementation.</p> |
155 | </div> |
245 | </div> |
156 | </div> |
246 | </div> |
157 | <div class="section" id="rationale"> |
247 | <div class="section" id="rationale"> |
158 | <h1><a class="toc-backref" href="#id11" name="rationale">Rationale</a></h1> |
248 | <h1><a class="toc-backref" href="#id16" name="rationale">Rationale</a></h1> |
159 | <p>USE groups will simplify selecting an appropriate set of USE flags for a |
249 | <p>USE groups will simplify selecting an appropriate set of USE flags for a |
160 | system.</p> |
250 | system.</p> |
161 | </div> |
251 | </div> |
162 | <div class="section" id="reference-implementation"> |
252 | <div class="section" id="reference-implementation"> |
163 | <h1><a class="toc-backref" href="#id12" name="reference-implementation">Reference Implementation</a></h1> |
253 | <h1><a class="toc-backref" href="#id17" name="reference-implementation">Reference Implementation</a></h1> |
164 | <p>TODO</p> |
254 | <p>TODO</p> |
165 | </div> |
255 | </div> |
166 | <div class="section" id="backwards-compatability"> |
256 | <div class="section" id="backwards-compatibility"> |
167 | <h1><a class="toc-backref" href="#id13" name="backwards-compatability">Backwards Compatability</a></h1> |
257 | <h1><a class="toc-backref" href="#id18" name="backwards-compatibility">Backwards Compatibility</a></h1> |
168 | <p>The user will not need to make any changes to keep their current setup. |
258 | <p>The user will not need to make any changes to keep their current setup. |
169 | Users who are not running a portage version which supports groups can |
259 | Users who are not running a portage version which supports groups can |
170 | carry on using current syntax with no side-effects.</p> |
260 | carry on using current syntax with no side-effects.</p> |
171 | <p>Some tools which work with make.conf and / or USE flags (for example, |
261 | <p>Some tools which work with make.conf and / or USE flags (for example, |
172 | <tt class="literal"><span class="pre">ufed</span></tt>) will need to be updated to understand the new group syntax.</p> |
262 | <tt class="docutils literal"><span class="pre">ufed</span></tt>) will need to be updated to understand the new group syntax.</p> |
173 | <p>There is currently a dymanic list of USE flags available on the Gentoo |
263 | <p>There is currently a dynamic list of USE flags available on the Gentoo |
174 | website [2]. For consistency, a similar list will be needed for USE |
264 | website <a class="footnote-reference" href="#id5" id="id3" name="id3">[2]</a>. For consistency, a similar list will be needed for USE |
175 | groups.</p> |
265 | groups.</p> |
176 | </div> |
266 | </div> |
177 | <div class="section" id="references"> |
267 | <div class="section" id="references"> |
178 | <h1><a class="toc-backref" href="#id14" name="references">References</a></h1> |
268 | <h1><a class="toc-backref" href="#id19" name="references">References</a></h1> |
179 | <table class="footnote" frame="void" id="id1" rules="none"> |
269 | <table class="docutils footnote" frame="void" id="id4" rules="none"> |
180 | <colgroup><col class="label" /><col /></colgroup> |
270 | <colgroup><col class="label" /><col /></colgroup> |
181 | <tbody valign="top"> |
271 | <tbody valign="top"> |
182 | <tr><td class="label"><a name="id1">[1]</a></td><td>GLEP 23: Portage handling of ACCEPT_LICENSE |
272 | <tr><td class="label"><a class="fn-backref" href="#id1" name="id4">[1]</a></td><td>GLEP 23: Portage handling of ACCEPT_LICENSE |
183 | (<a class="reference" href="http://www.gentoo.org/proj/en/glep/glep-0023.html">http://www.gentoo.org/proj/en/glep/glep-0023.html</a>)</td></tr> |
273 | (<a class="reference" href="http://www.gentoo.org/proj/en/glep/glep-0023.html">http://www.gentoo.org/proj/en/glep/glep-0023.html</a>)</td></tr> |
184 | </tbody> |
274 | </tbody> |
185 | </table> |
275 | </table> |
186 | <table class="footnote" frame="void" id="id2" rules="none"> |
276 | <table class="docutils footnote" frame="void" id="id5" rules="none"> |
187 | <colgroup><col class="label" /><col /></colgroup> |
277 | <colgroup><col class="label" /><col /></colgroup> |
188 | <tbody valign="top"> |
278 | <tbody valign="top"> |
189 | <tr><td class="label"><a name="id2">[2]</a></td><td><a class="reference" href="http://www.gentoo.org/dyn/use-index.xml">http://www.gentoo.org/dyn/use-index.xml</a></td></tr> |
279 | <tr><td class="label"><a class="fn-backref" href="#id3" name="id5">[2]</a></td><td><a class="reference" href="http://www.gentoo.org/dyn/use-index.xml">http://www.gentoo.org/dyn/use-index.xml</a></td></tr> |
190 | </tbody> |
280 | </tbody> |
191 | </table> |
281 | </table> |
|
|
282 | <table class="docutils footnote" frame="void" id="id6" rules="none"> |
|
|
283 | <colgroup><col class="label" /><col /></colgroup> |
|
|
284 | <tbody valign="top"> |
|
|
285 | <tr><td class="label"><a class="fn-backref" href="#id2" name="id6">[3]</a></td><td>GLEP 29 discussion on the gentoo-dev mailing list |
|
|
286 | (<a class="reference" href="http://marc.theaimsgroup.com/?l=gentoo-dev&m=109813990013812">http://marc.theaimsgroup.com/?l=gentoo-dev&m=109813990013812</a>)</td></tr> |
|
|
287 | </tbody> |
|
|
288 | </table> |
192 | </div> |
289 | </div> |
193 | <div class="section" id="copyright"> |
290 | <div class="section" id="copyright"> |
194 | <h1><a class="toc-backref" href="#id15" name="copyright">Copyright</a></h1> |
291 | <h1><a class="toc-backref" href="#id20" name="copyright">Copyright</a></h1> |
195 | <p>This document has been placed in the public domain.</p> |
292 | <p>This document has been placed in the public domain.</p> |
196 | <blockquote> |
293 | <blockquote> |
197 | vim: set tw=74 :</blockquote> |
294 | vim: set tw=74 :</blockquote> |
198 | </div> |
295 | </div> |
199 | </div> |
|
|
200 | |
296 | |
|
|
297 | </div> |
201 | <hr class="footer" /> |
298 | <hr class="docutils footer" /> |
202 | <div class="footer"> |
299 | <div class="footer"> |
203 | <a class="reference" href="glep-0029.txt">View document source</a>. |
300 | <a class="reference" href="glep-0029.txt">View document source</a>. |
204 | Generated on: 2004-08-22 01:47 UTC. |
301 | Generated on: 2005-06-24 21:36 UTC. |
205 | Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source. |
302 | Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source. |
206 | </div> |
303 | </div> |
207 | </body> |
304 | </body> |
208 | </html> |
305 | </html> |
209 | |
306 | |