/[gentoo]/xml/htdocs/proj/en/glep/glep-0001.txt
Gentoo

Diff of /xml/htdocs/proj/en/glep/glep-0001.txt

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.1 Revision 1.14
1GLEP: 1 1GLEP: 1
2Title: GLEP Purpose and Guidelines 2Title: GLEP Purpose and Guidelines
3Version: $Revision: 1.1 $ 3Version: $Revision: 1.14 $
4Last-Modified: $Date: 2003/06/02 17:03:08 $ 4Last-Modified: $Date: 2013/06/12 00:40:24 $
5Author: Grant Goodyear 5Author: Grant Goodyear <g2boojum@gentoo.org>
6Status: Draft 6Status: Active
7Type: Informational 7Type: Informational
8Content-Type: text/x-rst 8Content-Type: text/x-rst
9Created: 31 May 2003 9Created: 31-May-2003
10Post-History: 10Post-History: 1-Jun-2003, 2-Jul-2003, 19-Jan-2008, 05-Jun-2008, 09-Mar-2011
11
12 11
13Credits 12Credits
14======= 13=======
15 14
16The GLEP concept, and, in fact, much of the text of this document, 15The GLEP concept, and, in fact, much of the text of this document,
50 49
51GLEP Work Flow 50GLEP Work Flow
52============== 51==============
53 52
54The GLEP editors assign GLEP numbers and change their status. The current 53The GLEP editors assign GLEP numbers and change their status. The current
55GLEP editors are Grant Goodyear and hopefully somebody else. Please send all 54GLEP editors are Grant Goodyear and Alastair Tse. Please send all
56GLEP-related email to <glep@gentoo.org>. 55GLEP-related email to <glep@gentoo.org>.
57 56
58The GLEP process begins with a new idea for Gentoo Linux. It is highly 57The GLEP process begins with a new idea for Gentoo Linux. It is highly
59recommended that a single GLEP contain a single key proposal or new idea. The 58recommended that a single GLEP contain a single key proposal or new idea. The
60more focussed the GLEP, the more successful it tends to be. The GLEP editors 59more focused the GLEP, the more successful it tends to be. The GLEP editors
61reserve the right to reject GLEP proposals if they appear too unfocussed or 60reserve the right to reject GLEP proposals if they appear too unfocused or
62too broad. If in doubt, split your GLEP into several well-focussed ones. 61too broad. If in doubt, split your GLEP into several well-focused ones.
63 62
64Each GLEP must have a champion -- someone who writes the GLEP using the style 63Each GLEP must have a champion -- someone who writes the GLEP using the style
65and format described below, shepherds the discussions in the appropriate 64and format described below, shepherds the discussions in the appropriate
66forums, and attempts to build community consensus around the idea. The GLEP 65forums, and attempts to build community consensus around the idea. The GLEP
67champion (a.k.a. Author) should first attempt to ascertain whether the idea is 66champion (a.k.a. Author) should first attempt to ascertain whether the idea is
68GLEP-able. Small enhancements or patches often don't need a GLEP and can be 67GLEP-able. Small enhancements or patches often don't need a GLEP and can be
69injected into the Gentoo Linux development work flow with an enhancement "bug" 68injected into the Gentoo Linux development work flow with an enhancement "bug"
70submitted to the Gentoo Linux bugzilla [#BUGS]_. 69submitted to the Gentoo Linux bugzilla [#BUGS]_.
71 70
72The GLEP champion then emails the GLEP editor <glep@gentoo.org> with a 71The GLEP champion then emails the GLEP editors <glep@gentoo.org> with a
73proposed title and a rough, but fleshed out, draft of the GLEP. This draft 72proposed title and a rough, but fleshed out, draft of the GLEP. This draft
74must be written in GLEP style as described below. 73must be written in GLEP style as described below.
75 74
76If the GLEP editor approves, he will assign the GLEP a number, label it 75If the GLEP editor accepts the GLEP, he will assign the GLEP a number, label
77as Standards Track (a better name would be nice here -- suggestions?) 76it as Standards Track (a better name would be nice here -- suggestions?) or
78or Informational, give it status "Draft", and 77Informational, give it status "Draft", and create and check-in the initial
79create and check-in the initial draft of the GLEP. The GLEP editors will 78draft of the GLEP. The GLEP editors will not unreasonably deny a GLEP.
80not unreasonably deny a GLEP. Reasons for denying GLEP status include 79Reasons for denying GLEP status include duplication of effort, being
81duplication of effort, being technically unsound, not providing proper 80technically unsound, not providing proper motivation or addressing backwards
82motivation or addressing backwards compatibility, or not in keeping 81compatibility, or not in keeping with Gentoo Linux philosophy.
83with Gentoo Linux philosophy.
84 82
85If a pre-GLEP is rejected, the author may elect to take the pre-GLEP to the 83If a pre-GLEP is rejected, the author may elect to take the pre-GLEP to the
86gentoo-dev@gentoo.org mailing list to help flesh it out, gain feedback and 84gentoo-dev@gentoo.org mailing list to help flesh it out, gain feedback and
87consensus from the community at large, and improve the GLEP for re-submission. 85consensus from the community at large, and improve the GLEP for re-submission.
88 86
89The author of the GLEP is then responsible for posting the GLEP to the 87The author of the GLEP is then responsible for posting the GLEP to the
90gentoo-dev mailing list and to the Gentoo Linux forums [#FORUMS]_, and 88gentoo-dev mailing list (and additionally to the Gentoo Linux forums [#FORUMS]_
91marshaling community support for it. As updates are necessary, the GLEP 89if they so desire), and marshaling community support for it. As updates are
92author can check in new versions if they have CVS commit permissions, or can 90necessary, the GLEP author may check in new versions directly, or forward to
93email new GLEP versions to the GLEP editors for committing. 91a Gentoo developer with commit access.
94 92
95Standards Track GLEPs consist of two parts, a design document and a reference 93Standards Track GLEPs consist of two parts, a design document and a reference
96implementation. The GLEP should be reviewed and accepted before a reference 94implementation. The GLEP should be reviewed and accepted before a reference
97implementation is begun, unless a reference implementation will aid people in 95implementation is begun, unless a reference implementation will aid people in
98studying the GLEP. Standards Track GLEPs must include an implementation -- in 96studying the GLEP. Standards Track GLEPs must include an implementation -- in
99the form of code, patch, or URL to same -- before it can be considered Final. 97the form of code, patch, or URL to same -- before it can be considered Final.
100 98
101GLEP authors are responsible for collecting community feedback on a GLEP 99GLEP authors are responsible for collecting community feedback on a GLEP
102before submitting it for review. A GLEP that has not been discussed on 100before submitting it for review. A GLEP that has not been discussed on
103gentoo-dev@gentoo.org and/or the Gentoo Linux forums [#FORUMS]_ will not be 101gentoo-dev@gentoo.org and the Gentoo Linux forums [#FORUMS]_ will not be
104accepted. However, wherever possible, long open-ended discussions on public 102accepted. However, wherever possible, long open-ended discussions on public
105mailing lists should be avoided. Strategies to keep the discussions efficient 103mailing lists should be avoided. Strategies to keep the discussions efficient
106include setting up a specific forums thread for the topic, having the GLEP 104include setting up a specific forums thread for the topic, having the GLEP
107author accept private comments in the early design phases, etc. GLEP authors 105author accept private comments in the early design phases, etc. GLEP authors
108should use their discretion here. 106should use their discretion here.
109 107
110Once the authors have completed a GLEP, they must inform the GLEP editors that 108Once the authors have completed a GLEP, they must inform the Gentoo Council
111it is ready for review. GLEPs are reviewed by the Gentoo Linux Chief 109[#COUNCIL]_ that it is ready for review by way of the gentoo-dev mailing
112Architect or Development Manager, who may accept or reject a GLEP outright, or 110list. GLEPs are then reviewed at a Council meeting where the may be approved
113send it back to the author(s) for revision. For a GLEP that is pre-determined 111or rejected outright, or sent back to the author(s) for revision. This
114to be acceptable (e.g., it is an obvious win as-is and/or its implementation 112generally should be done a few weeks in advance of the actual review so as to
115has already been checked in) the Chief Architect or the Development Manager 113avoid the appearance of "slipping" a GLEP in without proper public review
116may also initiate a GLEP review, first notifying the GLEP author(s) and giving 114by the Gentoo developer community.
117them a chance to make revisions.
118 115
119For a GLEP to be accepted it must meet certain minimum criteria. It must be a 116For a GLEP to be approved it must meet certain minimum criteria. It must be a
120clear and complete description of the proposed enhancement. The enhancement 117clear and complete description of the proposed enhancement. The enhancement
121must represent a net improvement. The proposed implementation, if applicable, 118must represent a net improvement. The proposed implementation, if applicable,
122must be solid and must not complicate the distribution unduly. Finally, a 119must be solid and must not complicate the distribution unduly. Finally, a
123proposed enhancement must satisfy the philosophy of Gentoo Linux. 120proposed enhancement must satisfy the philosophy of Gentoo Linux.
124 121
160 157
1612. Abstract -- a short (~200 word) description of the technical issue 1582. Abstract -- a short (~200 word) description of the technical issue
162 being addressed. 159 being addressed.
163 160
1643. Motivation -- The motivation is critical for GLEPs that want to 1613. Motivation -- The motivation is critical for GLEPs that want to
165 change the Gentoo Linux functionality. It should clearly explain why the 162 modify Gentoo Linux functionality. It should clearly explain why the
166 existing functionality or policy is inadequate to address the problem that 163 existing functionality or policy is inadequate to address the problem that
167 the GLEP solves. GLEP submissions without sufficient motivation may be 164 the GLEP solves. GLEP submissions without sufficient motivation may be
168 rejected outright. 165 rejected outright.
169 166
1704. Specification -- The technical specification should describe the 1674. Specification -- The technical specification should describe the
199 196
200 197
201GLEP Formating and Template 198GLEP Formating and Template
202=========================== 199===========================
203 200
201GLEPs are written either in Gentoo Linux Guide-XML [#GUIDEXML]_ or in
204GLEPs are written in a just-barely-marked-up version of plain ASCII text 202a just-barely-marked-up version of plain ASCII text
205called ReStructuredText [#ReSTHOME]_ that is then converted to HTML using 203called ReStructuredText [#ReSTHOME]_ that is then converted to HTML using
206Docutils [#DOCUTILS]_. Using ReStructuredText GLEPs allows for rich markup 204Docutils [#DOCUTILS]_. Using ReStructuredText GLEPs allows for rich markup
207that is still quite easy to read, but results in much better-looking and more 205that is still quite easy to read, but results in much better-looking and more
208functional HTML. Moreover, it should be straightforward to convert GLEPs to 206functional HTML. Moreover, it should be straightforward to convert GLEPs to
209Gentoo Linux guide xml [#GUIDEXML]_ if needed. GLEP 2 contains a boilerplate 207Gentoo Linux guide xml [#GUIDEXML]_ if needed. GLEP 2 contains a boilerplate
258be obscured. 256be obscured.
259 257
260The Type header specifies the type of GLEP: Informational or Standards 258The Type header specifies the type of GLEP: Informational or Standards
261Track. 259Track.
262 260
263The format of a GLEP is specified with a Content-Type header, which for now 261The format of a GLEP is specified with a Content-Type header, which
262should read "text/xml" for Gentoo Guide XML or
264should always read "text/x-rst" for ReStructuredText GLEPs (see GLEP 2 263"text/x-rst" for ReStructuredText GLEPs (see GLEP 2
265[#ReST]_). 264[#ReST]_).
266 265
267The Created header records the date that the GLEP was assigned a number, while 266The Created header records the date that the GLEP was assigned a number, while
268Post-History is used to record the dates of when new versions of the GLEP are 267Post-History is used to record the dates of when new versions of the GLEP are
269posted to gentoo-dev. Both headers should be in dd-mmm-yyyy format, e.g. 268posted to gentoo-dev. Both headers should be in dd-mmm-yyyy format, e.g.
327 326
328.. [#CVS] This historical record is available by the normal CVS commands 327.. [#CVS] This historical record is available by the normal CVS commands
329 for retrieving older revisions. For those without direct access to the CVS 328 for retrieving older revisions. For those without direct access to the CVS
330 tree, you can browse the current and past GLEP revisions via the Gentoo 329 tree, you can browse the current and past GLEP revisions via the Gentoo
331 Linux viewcvs web site at 330 Linux viewcvs web site at
332 http://cvs.gentoo.org/cgi-bin/viewcvs.cgi/gentoo-x86/glep/ 331 http://www.gentoo.org/cgi-bin/viewcvs.cgi/gentoo/xml/htdocs/proj/en/glep/
333 332
334.. [#ReST] GLEP 2, Sample ReStructuredText GLEP Template, 333.. [#ReST] GLEP 2, Sample ReStructuredText GLEP Template,
335 (http://www.gentoo.org/glep/glep-0002.html) 334 (http://glep.gentoo.org/glep-0002.html)
336 335
337.. [#BUGS] http://bugs.gentoo.org 336.. [#BUGS] http://bugs.gentoo.org
338 337
339.. [#FORUMS] http://forums.gentoo.org 338.. [#FORUMS] http://forums.gentoo.org
339
340.. [#COUNCIL] http://www.gentoo.org/proj/en/glep/glep-0039.html
340 341
341.. [#OPL] http://www.opencontent.org/openpub/ 342.. [#OPL] http://www.opencontent.org/openpub/
342 343
343.. [#ReSTHOME] http://docutils.sourceforge.net/rst.html 344.. [#ReSTHOME] http://docutils.sourceforge.net/rst.html
344 345

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.14

  ViewVC Help
Powered by ViewVC 1.1.20