| … | |
… | |
| 25 | <tbody valign="top"> |
25 | <tbody valign="top"> |
| 26 | <tr class="field"><th class="field-name">GLEP:</th><td class="field-body">60</td> |
26 | <tr class="field"><th class="field-name">GLEP:</th><td class="field-body">60</td> |
| 27 | </tr> |
27 | </tr> |
| 28 | <tr class="field"><th class="field-name">Title:</th><td class="field-body">Manifest2 filetypes</td> |
28 | <tr class="field"><th class="field-name">Title:</th><td class="field-body">Manifest2 filetypes</td> |
| 29 | </tr> |
29 | </tr> |
| 30 | <tr class="field"><th class="field-name">Version:</th><td class="field-body">1.2</td> |
30 | <tr class="field"><th class="field-name">Version:</th><td class="field-body">1.3</td> |
| 31 | </tr> |
31 | </tr> |
| 32 | <tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference external" href="http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/proj/en/glep/glep-0060.txt?cvsroot=gentoo">2008/10/22 17:59:43</a></td> |
32 | <tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference external" href="http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/proj/en/glep/glep-0060.txt?cvsroot=gentoo">2008/10/28 07:46:51</a></td> |
| 33 | </tr> |
33 | </tr> |
| 34 | <tr class="field"><th class="field-name">Author:</th><td class="field-body">Robin Hugh Johnson <robbat2 at gentoo.org></td> |
34 | <tr class="field"><th class="field-name">Author:</th><td class="field-body">Robin Hugh Johnson <robbat2 at gentoo.org></td> |
| 35 | </tr> |
35 | </tr> |
| 36 | <tr class="field"><th class="field-name">Status:</th><td class="field-body">Draft</td> |
36 | <tr class="field"><th class="field-name">Status:</th><td class="field-body">Draft</td> |
| 37 | </tr> |
37 | </tr> |
| … | |
… | |
| 41 | </tr> |
41 | </tr> |
| 42 | <tr class="field"><th class="field-name">Requires:</th><td class="field-body"><a class="reference external" href="http://www.gentoo.org/proj/en/glepglep-0044.html">44</a></td> |
42 | <tr class="field"><th class="field-name">Requires:</th><td class="field-body"><a class="reference external" href="http://www.gentoo.org/proj/en/glepglep-0044.html">44</a></td> |
| 43 | </tr> |
43 | </tr> |
| 44 | <tr class="field"><th class="field-name">Created:</th><td class="field-body">November 2007</td> |
44 | <tr class="field"><th class="field-name">Created:</th><td class="field-body">November 2007</td> |
| 45 | </tr> |
45 | </tr> |
| 46 | <tr class="field"><th class="field-name">Updated:</th><td class="field-body">June 2008, July 2008</td> |
46 | <tr class="field"><th class="field-name">Updated:</th><td class="field-body">June 2008, July 2008, October 2008</td> |
| 47 | </tr> |
47 | </tr> |
| 48 | <tr class="field"><th class="field-name">Updates:</th><td class="field-body">44</td> |
48 | <tr class="field"><th class="field-name">Updates:</th><td class="field-body">44</td> |
|
|
49 | </tr> |
|
|
50 | <tr class="field"><th class="field-name">Post-History:</th><td class="field-body"></td> |
| 49 | </tr> |
51 | </tr> |
| 50 | </tbody> |
52 | </tbody> |
| 51 | </table> |
53 | </table> |
| 52 | <hr /> |
54 | <hr /> |
| 53 | <div class="contents topic" id="contents"> |
55 | <div class="contents topic" id="contents"> |
| 54 | <p class="topic-title first">Contents</p> |
56 | <p class="topic-title first">Contents</p> |
| 55 | <ul class="simple"> |
57 | <ul class="simple"> |
| 56 | <li><a class="reference internal" href="#abstract" id="id16">Abstract</a></li> |
58 | <li><a class="reference internal" href="#abstract" id="id4">Abstract</a></li> |
| 57 | <li><a class="reference internal" href="#motivation" id="id17">Motivation</a></li> |
59 | <li><a class="reference internal" href="#motivation" id="id5">Motivation</a></li> |
| 58 | <li><a class="reference internal" href="#specification" id="id18">Specification</a><ul> |
60 | <li><a class="reference internal" href="#specification" id="id6">Specification</a><ul> |
| 59 | <li><a class="reference internal" href="#general" id="id19">General</a></li> |
61 | <li><a class="reference internal" href="#general" id="id7">General</a></li> |
| 60 | <li><a class="reference internal" href="#excluded-files" id="id20">Excluded files</a></li> |
62 | <li><a class="reference internal" href="#excluded-files" id="id8">Excluded files</a></li> |
| 61 | <li><a class="reference internal" href="#existing-filetypes" id="id21">Existing filetypes:</a><ul> |
63 | <li><a class="reference internal" href="#existing-filetypes" id="id9">Existing filetypes:</a><ul> |
| 62 | <li><a class="reference internal" href="#aux" id="id22">AUX</a></li> |
64 | <li><a class="reference internal" href="#aux" id="id10">AUX</a></li> |
| 63 | <li><a class="reference internal" href="#ebuild" id="id23">EBUILD</a></li> |
65 | <li><a class="reference internal" href="#ebuild" id="id11">EBUILD</a></li> |
| 64 | <li><a class="reference internal" href="#dist" id="id24">DIST</a></li> |
66 | <li><a class="reference internal" href="#dist" id="id12">DIST</a></li> |
| 65 | <li><a class="reference internal" href="#misc" id="id25">MISC</a></li> |
67 | <li><a class="reference internal" href="#misc" id="id13">MISC</a></li> |
| 66 | </ul> |
|
|
| 67 | </li> |
68 | </ul> |
|
|
69 | </li> |
| 68 | <li><a class="reference internal" href="#new-filetypes" id="id26">New filetypes:</a><ul> |
70 | <li><a class="reference internal" href="#new-filetypes" id="id14">New filetypes:</a><ul> |
| 69 | <li><a class="reference internal" href="#info-new-abstract" id="id27">_INFO (new, abstract)</a></li> |
71 | <li><a class="reference internal" href="#info-new-abstract" id="id15">_INFO (new, abstract)</a></li> |
| 70 | <li><a class="reference internal" href="#crit-new-abstract" id="id28">_CRIT (new, abstract)</a></li> |
72 | <li><a class="reference internal" href="#crit-new-abstract" id="id16">_CRIT (new, abstract)</a></li> |
| 71 | <li><a class="reference internal" href="#id9" id="id29">EBUILD</a></li> |
73 | <li><a class="reference internal" href="#id1" id="id17">EBUILD</a></li> |
| 72 | <li><a class="reference internal" href="#id10" id="id30">DIST</a></li> |
74 | <li><a class="reference internal" href="#id2" id="id18">DIST</a></li> |
| 73 | <li><a class="reference internal" href="#id11" id="id31">MISC</a></li> |
75 | <li><a class="reference internal" href="#id3" id="id19">MISC</a></li> |
| 74 | <li><a class="reference internal" href="#manifest-new" id="id32">MANIFEST (new)</a></li> |
76 | <li><a class="reference internal" href="#manifest-new" id="id20">MANIFEST (new)</a></li> |
| 75 | <li><a class="reference internal" href="#eclass-new" id="id33">ECLASS (new)</a></li> |
77 | <li><a class="reference internal" href="#eclass-new" id="id21">ECLASS (new)</a></li> |
| 76 | <li><a class="reference internal" href="#data-new" id="id34">DATA (new)</a></li> |
78 | <li><a class="reference internal" href="#data-new" id="id22">DATA (new)</a></li> |
| 77 | <li><a class="reference internal" href="#exec-new" id="id35">EXEC (new)</a></li> |
79 | <li><a class="reference internal" href="#exec-new" id="id23">EXEC (new)</a></li> |
| 78 | <li><a class="reference internal" href="#unknown-new" id="id36">UNKNOWN (new)</a></li> |
80 | <li><a class="reference internal" href="#unknown-new" id="id24">UNKNOWN (new)</a></li> |
| 79 | </ul> |
|
|
| 80 | </li> |
81 | </ul> |
|
|
82 | </li> |
| 81 | <li><a class="reference internal" href="#on-bloat" id="id37">On Bloat</a></li> |
83 | <li><a class="reference internal" href="#on-bloat" id="id25">On Bloat</a></li> |
| 82 | <li><a class="reference internal" href="#chosing-a-filetype" id="id38">Chosing a filetype</a></li> |
84 | <li><a class="reference internal" href="#chosing-a-filetype" id="id26">Chosing a filetype</a></li> |
| 83 | </ul> |
|
|
| 84 | </li> |
85 | </ul> |
|
|
86 | </li> |
| 85 | <li><a class="reference internal" href="#backwards-compatibility" id="id39">Backwards Compatibility</a></li> |
87 | <li><a class="reference internal" href="#backwards-compatibility" id="id27">Backwards Compatibility</a></li> |
| 86 | <li><a class="reference internal" href="#thanks-to" id="id40">Thanks to</a></li> |
88 | <li><a class="reference internal" href="#thanks-to" id="id28">Thanks to</a></li> |
| 87 | <li><a class="reference internal" href="#references" id="id41">References</a></li> |
89 | <li><a class="reference internal" href="#references" id="id29">References</a></li> |
| 88 | <li><a class="reference internal" href="#copyright" id="id42">Copyright</a></li> |
90 | <li><a class="reference internal" href="#copyright" id="id30">Copyright</a></li> |
| 89 | </ul> |
91 | </ul> |
| 90 | </div> |
92 | </div> |
| 91 | <div class="section" id="abstract"> |
93 | <div class="section" id="abstract"> |
| 92 | <h1><a class="toc-backref" href="#id16">Abstract</a></h1> |
94 | <h1><a class="toc-backref" href="#id4">Abstract</a></h1> |
| 93 | <p>Clarification of the Manifest2 [GLEP44] specification, including new types to |
95 | <p>Clarification of the Manifest2 [#GLEP44] specification, including new types to |
| 94 | help in the tree-signing specification.</p> |
96 | help in the tree-signing specification.</p> |
| 95 | </div> |
97 | </div> |
| 96 | <div class="section" id="motivation"> |
98 | <div class="section" id="motivation"> |
| 97 | <h1><a class="toc-backref" href="#id17">Motivation</a></h1> |
99 | <h1><a class="toc-backref" href="#id5">Motivation</a></h1> |
| 98 | <p>[GLEP44] was not entirely clear on the usage of filetype specifiers. |
100 | <p>[#GLEP44] was not entirely clear on the usage of filetype specifiers. |
| 99 | This document serves to provide some of the internal logic used by |
101 | This document serves to provide some of the internal logic used by |
| 100 | Portage at the point of writing, as well as adding new types to cover |
102 | Portage at the point of writing, as well as adding new types to cover |
| 101 | the rest of the tree, for the purposes of tree-signing coverage.</p> |
103 | the rest of the tree, for the purposes of tree-signing coverage.</p> |
| 102 | </div> |
104 | </div> |
| 103 | <div class="section" id="specification"> |
105 | <div class="section" id="specification"> |
| 104 | <h1><a class="toc-backref" href="#id18">Specification</a></h1> |
106 | <h1><a class="toc-backref" href="#id6">Specification</a></h1> |
| 105 | <div class="section" id="general"> |
107 | <div class="section" id="general"> |
| 106 | <h2><a class="toc-backref" href="#id19">General</a></h2> |
108 | <h2><a class="toc-backref" href="#id7">General</a></h2> |
| 107 | <p>For any given directory with a Manifest file, every file located in that |
109 | <p>For any given directory with a Manifest file, every file located in that |
| 108 | directory, or a sub-directory must be listed in that Manifest file, |
110 | directory, or a sub-directory must be listed in that Manifest file, |
| 109 | unless stated otherwise in the following sections. The Manifest file |
111 | unless stated otherwise in the following sections. The Manifest file |
| 110 | must not contain an entry for itself.</p> |
112 | must not contain an entry for itself.</p> |
| 111 | </div> |
113 | </div> |
| 112 | <div class="section" id="excluded-files"> |
114 | <div class="section" id="excluded-files"> |
| 113 | <h2><a class="toc-backref" href="#id20">Excluded files</a></h2> |
115 | <h2><a class="toc-backref" href="#id8">Excluded files</a></h2> |
| 114 | <p>When generating or validating a Manifest, or commiting to a version |
116 | <p>When generating or validating a Manifest, or commiting to a version |
| 115 | control system, the package manager should endeavour to ignore files |
117 | control system, the package manager should endeavour to ignore files |
| 116 | created by a version control system, backup files from text editors. A |
118 | created by a version control system, backup files from text editors. A |
| 117 | non-exhaustive list is suggested here: CVS/, .svn/, .bzr/, .git/, .hg/, |
119 | non-exhaustive list is suggested here: <tt class="docutils literal"><span class="pre">CVS/</span></tt>, <tt class="docutils literal"><span class="pre">.svn/</span></tt>, <tt class="docutils literal"><span class="pre">.bzr/</span></tt>, |
| 118 | .#*, <a href="#id1"><span class="problematic" id="id2">*</span></a>.rej, <a href="#id3"><span class="problematic" id="id4">*</span></a>.orig, <a href="#id5"><span class="problematic" id="id6">*</span></a>.bak, <a href="#id7"><span class="problematic" id="id8">*</span></a>~.</p> |
120 | <tt class="docutils literal"><span class="pre">.git/</span></tt>, <tt class="docutils literal"><span class="pre">.hg/</span></tt>, <tt class="docutils literal"><span class="pre">.#*</span></tt>, <tt class="docutils literal"><span class="pre">*.rej</span></tt>, <tt class="docutils literal"><span class="pre">*.orig</span></tt>, <tt class="docutils literal"><span class="pre">*.bak</span></tt>, <tt class="docutils literal"><span class="pre">*~</span></tt>.</p> |
| 119 | <div class="system-message" id="id1"> |
|
|
| 120 | <p class="system-message-title">System Message: WARNING/2 (<tt class="docutils">glep-0060.txt</tt>, line 37); <em><a href="#id2">backlink</a></em></p> |
|
|
| 121 | Inline emphasis start-string without end-string.</div> |
|
|
| 122 | <div class="system-message" id="id3"> |
|
|
| 123 | <p class="system-message-title">System Message: WARNING/2 (<tt class="docutils">glep-0060.txt</tt>, line 37); <em><a href="#id4">backlink</a></em></p> |
|
|
| 124 | Inline emphasis start-string without end-string.</div> |
|
|
| 125 | <div class="system-message" id="id5"> |
|
|
| 126 | <p class="system-message-title">System Message: WARNING/2 (<tt class="docutils">glep-0060.txt</tt>, line 37); <em><a href="#id6">backlink</a></em></p> |
|
|
| 127 | Inline emphasis start-string without end-string.</div> |
|
|
| 128 | <div class="system-message" id="id7"> |
|
|
| 129 | <p class="system-message-title">System Message: WARNING/2 (<tt class="docutils">glep-0060.txt</tt>, line 37); <em><a href="#id8">backlink</a></em></p> |
|
|
| 130 | Inline emphasis start-string without end-string.</div> |
|
|
| 131 | <p>Additionally, for a transitional Manifest1->Manifest2 system, old-style |
121 | <p>Additionally, for a transitional Manifest1->Manifest2 system, old-style |
| 132 | digest files located in a 'files/' directory, may be excluded from |
122 | digest files located in a 'files/' directory, may be excluded from |
| 133 | Manifest2 generation, or included with a type of MISC.</p> |
123 | Manifest2 generation, or included with a type of MISC.</p> |
| 134 | <p>Under strict security conditions, the exclusion list may be ignored |
124 | <p>Under strict security conditions, the exclusion list may be ignored |
| 135 | during validation if the existence of a file would be considered a |
125 | during validation if the existence of a file would be considered a |
| 136 | security risk.</p> |
126 | security risk.</p> |
| 137 | </div> |
127 | </div> |
| 138 | <div class="section" id="existing-filetypes"> |
128 | <div class="section" id="existing-filetypes"> |
| 139 | <h2><a class="toc-backref" href="#id21">Existing filetypes:</a></h2> |
129 | <h2><a class="toc-backref" href="#id9">Existing filetypes:</a></h2> |
| 140 | <div class="section" id="aux"> |
130 | <div class="section" id="aux"> |
| 141 | <h3><a class="toc-backref" href="#id22">AUX</a></h3> |
131 | <h3><a class="toc-backref" href="#id10">AUX</a></h3> |
| 142 | <ul class="simple"> |
132 | <ul class="simple"> |
| 143 | <li>The AUX type is used for all items under the 'files' subdirectory.</li> |
133 | <li>The AUX type is used for all items under the 'files' subdirectory.</li> |
| 144 | <li>They should be verified relative to $FILESDIR.</li> |
134 | <li>They should be verified relative to $FILESDIR.</li> |
| 145 | <li>The string 'files/' is left out of the Manifest line.</li> |
135 | <li>The string 'files/' is left out of the Manifest line.</li> |
| 146 | <li>The absence of a file mentioned by AUX must be treated as an error.</li> |
136 | <li>The absence of a file mentioned by AUX must be treated as an error.</li> |
| … | |
… | |
| 148 | (either directly or indirectly), that must be treated an error if |
138 | (either directly or indirectly), that must be treated an error if |
| 149 | modified or absent.</li> |
139 | modified or absent.</li> |
| 150 | </ul> |
140 | </ul> |
| 151 | </div> |
141 | </div> |
| 152 | <div class="section" id="ebuild"> |
142 | <div class="section" id="ebuild"> |
| 153 | <h3><a class="toc-backref" href="#id23">EBUILD</a></h3> |
143 | <h3><a class="toc-backref" href="#id11">EBUILD</a></h3> |
| 154 | <ul class="simple"> |
144 | <ul class="simple"> |
| 155 | <li>The EBUILD type is used solely for files ending in .ebuild, or other |
145 | <li>The EBUILD type is used solely for files ending in .ebuild, or other |
| 156 | suffixes as defined by the EAPI.</li> |
146 | suffixes as defined by the EAPI.</li> |
| 157 | <li>The files are located in the same directory as the Manifest file.</li> |
147 | <li>The files are located in the same directory as the Manifest file.</li> |
| 158 | <li>The modification or absence of a file mentioned by EBUILD must be |
148 | <li>The modification or absence of a file mentioned by EBUILD must be |
| 159 | treated as an error.</li> |
149 | treated as an error.</li> |
| 160 | </ul> |
150 | </ul> |
| 161 | </div> |
151 | </div> |
| 162 | <div class="section" id="dist"> |
152 | <div class="section" id="dist"> |
| 163 | <h3><a class="toc-backref" href="#id24">DIST</a></h3> |
153 | <h3><a class="toc-backref" href="#id12">DIST</a></h3> |
| 164 | <ul class="simple"> |
154 | <ul class="simple"> |
| 165 | <li>The DIST type is used for distfiles</li> |
155 | <li>The DIST type is used for distfiles</li> |
| 166 | <li>They may be found directly via the $DISTDIR setting of the package |
156 | <li>They may be found directly via the $DISTDIR setting of the package |
| 167 | manager.</li> |
157 | manager.</li> |
| 168 | <li>During simple verification of a Manifest, a missing DIST file should |
158 | <li>During simple verification of a Manifest, a missing DIST file should |
| 169 | not be consider as a validation error (it is however a failure to |
159 | not be consider as a validation error (it is however a failure to |
| 170 | fetch or unpack).</li> |
160 | fetch or unpack).</li> |
| 171 | </ul> |
161 | </ul> |
| 172 | </div> |
162 | </div> |
| 173 | <div class="section" id="misc"> |
163 | <div class="section" id="misc"> |
| 174 | <h3><a class="toc-backref" href="#id25">MISC</a></h3> |
164 | <h3><a class="toc-backref" href="#id13">MISC</a></h3> |
| 175 | <ul class="simple"> |
165 | <ul class="simple"> |
| 176 | <li>The MISC type covers all remaining files in a directory.</li> |
166 | <li>The MISC type covers all remaining files in a directory.</li> |
| 177 | <li>MISC is intended to mark all content that was not used in |
167 | <li>MISC is intended to mark all content that was not used in |
| 178 | some way that directly affected execution of the package manager.</li> |
168 | some way that directly affected execution of the package manager.</li> |
| 179 | <li>This includes metadata.xml and ChangeLog entries, and any other purely |
169 | <li>This includes metadata.xml and ChangeLog entries, and any other purely |
| … | |
… | |
| 184 | been deleted from the tree.</li> |
174 | been deleted from the tree.</li> |
| 185 | </ul> |
175 | </ul> |
| 186 | </div> |
176 | </div> |
| 187 | </div> |
177 | </div> |
| 188 | <div class="section" id="new-filetypes"> |
178 | <div class="section" id="new-filetypes"> |
| 189 | <h2><a class="toc-backref" href="#id26">New filetypes:</a></h2> |
179 | <h2><a class="toc-backref" href="#id14">New filetypes:</a></h2> |
| 190 | <div class="section" id="info-new-abstract"> |
180 | <div class="section" id="info-new-abstract"> |
| 191 | <h3><a class="toc-backref" href="#id27">_INFO (new, abstract)</a></h3> |
181 | <h3><a class="toc-backref" href="#id15">_INFO (new, abstract)</a></h3> |
| 192 | <ul class="simple"> |
182 | <ul class="simple"> |
| 193 | <li>This is the functionality of the old AUX, but does not include the |
183 | <li>This is the functionality of the old AUX, but does not include the |
| 194 | implicit 'files/' prefix in the path, and is verified relative to the |
184 | implicit 'files/' prefix in the path, and is verified relative to the |
| 195 | working directory instead of $FILESDIR.</li> |
185 | working directory instead of $FILESDIR.</li> |
| 196 | <li>The modification or absence of a file listed as a _INFO-derived type |
186 | <li>The modification or absence of a file listed as a _INFO-derived type |
| 197 | is not an error unless the package manager is attempting to be strict.</li> |
187 | is not an error unless the package manager is attempting to be strict.</li> |
| 198 | </ul> |
188 | </ul> |
| 199 | </div> |
189 | </div> |
| 200 | <div class="section" id="crit-new-abstract"> |
190 | <div class="section" id="crit-new-abstract"> |
| 201 | <h3><a class="toc-backref" href="#id28">_CRIT (new, abstract)</a></h3> |
191 | <h3><a class="toc-backref" href="#id16">_CRIT (new, abstract)</a></h3> |
| 202 | <ul class="simple"> |
192 | <ul class="simple"> |
| 203 | <li>_CRIT is based off the _INFO type.</li> |
193 | <li>_CRIT is based off the _INFO type.</li> |
| 204 | <li>The modification or absence of a file listed as a _CRIT-derived type |
194 | <li>The modification or absence of a file listed as a _CRIT-derived type |
| 205 | must be treated as an error.</li> |
195 | must be treated as an error.</li> |
| 206 | </ul> |
196 | </ul> |
| 207 | </div> |
197 | </div> |
| 208 | <div class="section" id="id9"> |
198 | <div class="section" id="id1"> |
| 209 | <h3><a class="toc-backref" href="#id29">EBUILD</a></h3> |
199 | <h3><a class="toc-backref" href="#id17">EBUILD</a></h3> |
| 210 | <ul class="simple"> |
200 | <ul class="simple"> |
| 211 | <li>Now derived from _CRIT.</li> |
201 | <li>Now derived from _CRIT.</li> |
| 212 | <li>Otherwise unchanged.</li> |
202 | <li>Otherwise unchanged.</li> |
| 213 | </ul> |
203 | </ul> |
| 214 | </div> |
204 | </div> |
| 215 | <div class="section" id="id10"> |
205 | <div class="section" id="id2"> |
| 216 | <h3><a class="toc-backref" href="#id30">DIST</a></h3> |
206 | <h3><a class="toc-backref" href="#id18">DIST</a></h3> |
| 217 | <ul class="simple"> |
207 | <ul class="simple"> |
| 218 | <li>Now derived from _CRIT.</li> |
208 | <li>Now derived from _CRIT.</li> |
| 219 | <li>Otherwise unchanged.</li> |
209 | <li>Otherwise unchanged.</li> |
| 220 | </ul> |
210 | </ul> |
| 221 | </div> |
211 | </div> |
| 222 | <div class="section" id="id11"> |
212 | <div class="section" id="id3"> |
| 223 | <h3><a class="toc-backref" href="#id31">MISC</a></h3> |
213 | <h3><a class="toc-backref" href="#id19">MISC</a></h3> |
| 224 | <ul class="simple"> |
214 | <ul class="simple"> |
| 225 | <li>Now derived from _INFO.</li> |
215 | <li>Now derived from _INFO.</li> |
| 226 | <li>Otherwise unchanged.</li> |
216 | <li>Otherwise unchanged.</li> |
| 227 | </ul> |
217 | </ul> |
| 228 | </div> |
218 | </div> |
| 229 | <div class="section" id="manifest-new"> |
219 | <div class="section" id="manifest-new"> |
| 230 | <h3><a class="toc-backref" href="#id32">MANIFEST (new)</a></h3> |
220 | <h3><a class="toc-backref" href="#id20">MANIFEST (new)</a></h3> |
| 231 | <ul class="simple"> |
221 | <ul class="simple"> |
| 232 | <li>The MANIFEST type is explicitly to cover all nested Manifest files.</li> |
222 | <li>The MANIFEST type is explicitly to cover all nested Manifest files.</li> |
| 233 | <li>During validation, this serves as an indicator that the package |
223 | <li>During validation, this serves as an indicator that the package |
| 234 | manager may need to check subtree Manifest file.</li> |
224 | manager may need to check subtree Manifest file.</li> |
| 235 | <li>A missing MANIFEST file may be treated as a minor (eg excluding an |
225 | <li>A missing MANIFEST file may be treated as a minor (eg excluding an |
| … | |
… | |
| 239 | category-level Manifest while preserving the packages is forbidden. |
229 | category-level Manifest while preserving the packages is forbidden. |
| 240 | Deletion of an entire category is not.</li> |
230 | Deletion of an entire category is not.</li> |
| 241 | </ul> |
231 | </ul> |
| 242 | </div> |
232 | </div> |
| 243 | <div class="section" id="eclass-new"> |
233 | <div class="section" id="eclass-new"> |
| 244 | <h3><a class="toc-backref" href="#id33">ECLASS (new)</a></h3> |
234 | <h3><a class="toc-backref" href="#id21">ECLASS (new)</a></h3> |
| 245 | <ul class="simple"> |
235 | <ul class="simple"> |
| 246 | <li>uses _CRIT.</li> |
236 | <li>uses _CRIT.</li> |
| 247 | <li>This type shall be used for all eclasses only.</li> |
237 | <li>This type shall be used for all eclasses only.</li> |
| 248 | <li>TODO: What about patches etc under eclasses/? Probably EXEC?</li> |
238 | <li>TODO: What about patches etc under eclasses/? Probably EXEC?</li> |
| 249 | </ul> |
239 | </ul> |
| 250 | </div> |
240 | </div> |
| 251 | <div class="section" id="data-new"> |
241 | <div class="section" id="data-new"> |
| 252 | <h3><a class="toc-backref" href="#id34">DATA (new)</a></h3> |
242 | <h3><a class="toc-backref" href="#id22">DATA (new)</a></h3> |
| 253 | <ul class="simple"> |
243 | <ul class="simple"> |
| 254 | <li>uses _CRIT.</li> |
244 | <li>uses _CRIT.</li> |
| 255 | <li>The DATA type shall be used for all files that directly affect the |
245 | <li>The DATA type shall be used for all files that directly affect the |
| 256 | package manager, such as metadata/cache/* and profiles/.</li> |
246 | package manager, such as metadata/cache/* and profiles/.</li> |
| 257 | </ul> |
247 | </ul> |
| 258 | </div> |
248 | </div> |
| 259 | <div class="section" id="exec-new"> |
249 | <div class="section" id="exec-new"> |
| 260 | <h3><a class="toc-backref" href="#id35">EXEC (new)</a></h3> |
250 | <h3><a class="toc-backref" href="#id23">EXEC (new)</a></h3> |
| 261 | <ul class="simple"> |
251 | <ul class="simple"> |
| 262 | <li>uses _CRIT.</li> |
252 | <li>uses _CRIT.</li> |
| 263 | <li>If the file gets sourced, executed, or causes a change (patches) in |
253 | <li>If the file gets sourced, executed, or causes a change (patches) in |
| 264 | how something is sourced or execututed, it belongs in the EXEC |
254 | how something is sourced or execututed, it belongs in the EXEC |
| 265 | filetype.</li> |
255 | filetype.</li> |
| 266 | <li>This filetype should be used for the scripts directories of a |
256 | <li>This filetype should be used for the scripts directories of a |
| 267 | repository for important files.</li> |
257 | repository for important files.</li> |
| 268 | </ul> |
258 | </ul> |
| 269 | </div> |
259 | </div> |
| 270 | <div class="section" id="unknown-new"> |
260 | <div class="section" id="unknown-new"> |
| 271 | <h3><a class="toc-backref" href="#id36">UNKNOWN (new)</a></h3> |
261 | <h3><a class="toc-backref" href="#id24">UNKNOWN (new)</a></h3> |
| 272 | <ul class="simple"> |
262 | <ul class="simple"> |
| 273 | <li>uses _CRIT.</li> |
263 | <li>uses _CRIT.</li> |
| 274 | <li>All other files that are not covered by another type should be |
264 | <li>All other files that are not covered by another type should be |
| 275 | considered as 'UNKNOWN'.</li> |
265 | considered as 'UNKNOWN'.</li> |
| 276 | </ul> |
266 | </ul> |
| 277 | </div> |
267 | </div> |
| 278 | </div> |
268 | </div> |
| 279 | <div class="section" id="on-bloat"> |
269 | <div class="section" id="on-bloat"> |
| 280 | <h2><a class="toc-backref" href="#id37">On Bloat</a></h2> |
270 | <h2><a class="toc-backref" href="#id25">On Bloat</a></h2> |
| 281 | <p>If repeated use of a common path prefix is considered a bloat problem, a |
271 | <p>If repeated use of a common path prefix is considered a bloat problem, a |
| 282 | Manifest file should be added inside the common directory, however this |
272 | Manifest file should be added inside the common directory, however this |
| 283 | should not be done blindly, as bloat by inodes is more significant for |
273 | should not be done blindly, as bloat by inodes is more significant for |
| 284 | the majority of use cases.</p> |
274 | the majority of use cases.</p> |
| 285 | </div> |
275 | </div> |
| 286 | <div class="section" id="chosing-a-filetype"> |
276 | <div class="section" id="chosing-a-filetype"> |
| 287 | <h2><a class="toc-backref" href="#id38">Chosing a filetype</a></h2> |
277 | <h2><a class="toc-backref" href="#id26">Chosing a filetype</a></h2> |
| 288 | <ol class="arabic"> |
278 | <ol class="arabic"> |
| 289 | <li><dl class="first docutils"> |
279 | <li><dl class="first docutils"> |
| 290 | <dt>matches Manifest</dt> |
280 | <dt>matches Manifest</dt> |
| 291 | <dd><p class="first last">=> MANIFEST, stop.</p> |
281 | <dd><p class="first last">=> MANIFEST, stop.</p> |
| 292 | </dd> |
282 | </dd> |
| 293 | </dl> |
283 | </dl> |
| 294 | </li> |
284 | </li> |
| 295 | <li><dl class="first docutils"> |
285 | <li><dl class="first docutils"> |
| 296 | <dt>matches <a href="#id12"><span class="problematic" id="id13">*</span></a>.ebuild</dt> |
286 | <dt>matches <tt class="docutils literal"><span class="pre">*.ebuild</span></tt></dt> |
| 297 | <dd><div class="first system-message" id="id12"> |
|
|
| 298 | <p class="system-message-title">System Message: WARNING/2 (<tt class="docutils">glep-0060.txt</tt>, line 174); <em><a href="#id13">backlink</a></em></p> |
|
|
| 299 | <p>Inline emphasis start-string without end-string.</p> |
|
|
| 300 | </div> |
|
|
| 301 | <p class="last">=> EBUILD, stop.</p> |
287 | <dd><p class="first last">=> EBUILD, stop.</p> |
| 302 | </dd> |
|
|
| 303 | </dl> |
288 | </dd> |
| 304 | </li> |
289 | </dl> |
|
|
290 | </li> |
| 305 | <li><dl class="first docutils"> |
291 | <li><dl class="first docutils"> |
| 306 | <dt>matches <a href="#id14"><span class="problematic" id="id15">*</span></a>.eclass</dt> |
292 | <dt>matches <tt class="docutils literal"><span class="pre">*.eclass</span></tt></dt> |
| 307 | <dd><div class="first system-message" id="id14"> |
|
|
| 308 | <p class="system-message-title">System Message: WARNING/2 (<tt class="docutils">glep-0060.txt</tt>, line 176); <em><a href="#id15">backlink</a></em></p> |
|
|
| 309 | <p>Inline emphasis start-string without end-string.</p> |
|
|
| 310 | </div> |
|
|
| 311 | <p class="last">=> ECLASS, stop.</p> |
293 | <dd><p class="first last">=> ECLASS, stop.</p> |
| 312 | </dd> |
294 | </dd> |
| 313 | </dl> |
295 | </dl> |
| 314 | </li> |
296 | </li> |
| 315 | <li><dl class="first docutils"> |
297 | <li><dl class="first docutils"> |
| 316 | <dt>listed in SRC_URI</dt> |
298 | <dt>listed in SRC_URI</dt> |
| 317 | <dd><p class="first last">=> DIST, stop.</p> |
299 | <dd><p class="first last">=> DIST, stop.</p> |
| 318 | </dd> |
300 | </dd> |
| 319 | </dl> |
301 | </dl> |
| 320 | </li> |
302 | </li> |
| 321 | <li><dl class="first docutils"> |
303 | <li><dl class="first docutils"> |
| 322 | <dt>matches files/*</dt> |
304 | <dt>matches <tt class="docutils literal"><span class="pre">files/*</span></tt></dt> |
| 323 | <dd><p class="first last">=> AUX, continue [see note].</p> |
305 | <dd><p class="first last">=> AUX, continue [see note].</p> |
| 324 | </dd> |
306 | </dd> |
| 325 | </dl> |
307 | </dl> |
| 326 | </li> |
308 | </li> |
| 327 | <li><dl class="first docutils"> |
309 | <li><dl class="first docutils"> |
| 328 | <dt>matches {<em>.sh,</em>.bashrc,*.patch,...}</dt> |
310 | <dt>matches any of <tt class="docutils literal"><span class="pre">*.sh</span></tt>, <tt class="docutils literal"><span class="pre">*.bashrc</span></tt>, <tt class="docutils literal"><span class="pre">*.patch</span></tt>, ...</dt> |
| 329 | <dd><p class="first last">=> EXEC, stop.</p> |
311 | <dd><p class="first last">=> EXEC, stop.</p> |
| 330 | </dd> |
312 | </dd> |
| 331 | </dl> |
313 | </dl> |
| 332 | </li> |
314 | </li> |
| 333 | <li><dl class="first docutils"> |
315 | <li><dl class="first docutils"> |
| 334 | <dt>matches {metadata/cache/<em>,profiles/,package.</em>,use.mask*,...}</dt> |
316 | <dt>matches any of <tt class="docutils literal"><span class="pre">metadata/cache/*</span></tt>, <tt class="docutils literal"><span class="pre">profiles/</span></tt>, <tt class="docutils literal"><span class="pre">package.*</span></tt>, <tt class="docutils literal"><span class="pre">use.mask*</span></tt>, ...</dt> |
| 335 | <dd><p class="first last">=> DATA, stop.</p> |
317 | <dd><p class="first last">=> DATA, stop.</p> |
| 336 | </dd> |
318 | </dd> |
| 337 | </dl> |
319 | </dl> |
| 338 | </li> |
320 | </li> |
| 339 | <li><dl class="first docutils"> |
321 | <li><dl class="first docutils"> |
| 340 | <dt>matches {ChangeLog,metadata.xml,*.desc,...}</dt> |
322 | <dt>matches any of <tt class="docutils literal"><span class="pre">ChangeLog</span></tt>, <tt class="docutils literal"><span class="pre">metadata.xml</span></tt>, <tt class="docutils literal"><span class="pre">*.desc</span></tt>, ...</dt> |
| 341 | <dd><p class="first last">=> MISC, stop.</p> |
323 | <dd><p class="first last">=> MISC, stop.</p> |
| 342 | </dd> |
324 | </dd> |
| 343 | </dl> |
325 | </dl> |
| 344 | </li> |
326 | </li> |
| 345 | <li><dl class="first docutils"> |
327 | <li><dl class="first docutils"> |
| … | |
… | |
| 349 | </dl> |
331 | </dl> |
| 350 | </li> |
332 | </li> |
| 351 | </ol> |
333 | </ol> |
| 352 | <p>The logic behind 5, 6, 7 is ensuring that every item that by it's |
334 | <p>The logic behind 5, 6, 7 is ensuring that every item that by it's |
| 353 | presence or absense may be dangerous should always be treated strictly. |
335 | presence or absense may be dangerous should always be treated strictly. |
| 354 | (Consider epatch given a directory of patches ${FILESDIR}/${PV}/, where |
336 | (Consider epatch given a directory of patches <tt class="docutils literal"><span class="pre">${FILESDIR}/${PV}/</span></tt>, |
| 355 | it blindly includes them, or alternatively, the package.mask file or a |
337 | where it blindly includes them, or alternatively, the package.mask file |
| 356 | profile being altered/missing).</p> |
338 | or a profile being altered/missing).</p> |
| 357 | <p>Note: The AUX entries should only be generated if we are generating a |
339 | <p>Note: The AUX entries should only be generated if we are generating a |
| 358 | compatible Manifest that supports older versions of Portage. They should |
340 | compatible Manifest that supports older versions of Portage. They should |
| 359 | be generated along with the new type.</p> |
341 | be generated along with the new type.</p> |
| 360 | </div> |
342 | </div> |
| 361 | </div> |
343 | </div> |
| 362 | <div class="section" id="backwards-compatibility"> |
344 | <div class="section" id="backwards-compatibility"> |
| 363 | <h1><a class="toc-backref" href="#id39">Backwards Compatibility</a></h1> |
345 | <h1><a class="toc-backref" href="#id27">Backwards Compatibility</a></h1> |
| 364 | <p>For generation of existing package Manifests, the AUX entries must |
346 | <p>For generation of existing package Manifests, the AUX entries must |
| 365 | continue to be present for the standard Portage deprecation cycle. |
347 | continue to be present for the standard Portage deprecation cycle. |
| 366 | The new entries may be included already in all Manifest files, as they |
348 | The new entries may be included already in all Manifest files, as they |
| 367 | will be ignored by older Portage versions. Over time, ECLASS, DATA, |
349 | will be ignored by older Portage versions. Over time, ECLASS, DATA, |
| 368 | EXEC, UNKNOWN may replace the existing AUX type.</p> |
350 | EXEC, UNKNOWN may replace the existing AUX type.</p> |
| 369 | <p>The adoption of this proposal does also affect [GLEPxx+1] as part of |
351 | <p>The adoption of this proposal does also affect [#GLEP58] as part of |
| 370 | this GLEP series, however this GLEP was an offset of the research in |
352 | this GLEP series, however this GLEP was an offset of the research in |
| 371 | that GLEP.</p> |
353 | that GLEP.</p> |
| 372 | </div> |
354 | </div> |
| 373 | <div class="section" id="thanks-to"> |
355 | <div class="section" id="thanks-to"> |
| 374 | <h1><a class="toc-backref" href="#id40">Thanks to</a></h1> |
356 | <h1><a class="toc-backref" href="#id28">Thanks to</a></h1> |
| 375 | <p>I'd like to thank the following people for input on this GLEP. |
357 | <p>I'd like to thank the following people for input on this GLEP. |
| 376 | - Marius Mauch (genone) & Zac Medico (zmedico): Portage Manifest2</p> |
358 | - Marius Mauch (genone) & Zac Medico (zmedico): Portage Manifest2</p> |
| 377 | </div> |
359 | </div> |
| 378 | <div class="section" id="references"> |
360 | <div class="section" id="references"> |
| 379 | <h1><a class="toc-backref" href="#id41">References</a></h1> |
361 | <h1><a class="toc-backref" href="#id29">References</a></h1> |
| 380 | <table class="docutils footnote" frame="void" id="glep44" rules="none"> |
362 | <table class="docutils footnote" frame="void" id="glep44" rules="none"> |
| 381 | <colgroup><col class="label" /><col /></colgroup> |
363 | <colgroup><col class="label" /><col /></colgroup> |
| 382 | <tbody valign="top"> |
364 | <tbody valign="top"> |
| 383 | <tr><td class="label">[1]</td><td>Mauch, M. (2005) GLEP44 - Manifest2 format. |
365 | <tr><td class="label">[1]</td><td>Mauch, M. (2005) GLEP44 - Manifest2 format. |
| 384 | <a class="reference external" href="http://www.gentoo.org/proj/en/glep/glep-0044.html">http://www.gentoo.org/proj/en/glep/glep-0044.html</a></td></tr> |
366 | <a class="reference external" href="http://www.gentoo.org/proj/en/glep/glep-0044.html">http://www.gentoo.org/proj/en/glep/glep-0044.html</a></td></tr> |
| 385 | </tbody> |
367 | </tbody> |
| 386 | </table> |
368 | </table> |
| 387 | </div> |
369 | </div> |
| 388 | <div class="section" id="copyright"> |
370 | <div class="section" id="copyright"> |
| 389 | <h1><a class="toc-backref" href="#id42">Copyright</a></h1> |
371 | <h1><a class="toc-backref" href="#id30">Copyright</a></h1> |
| 390 | <p>Copyright (c) 2007 by Robin Hugh Johnson. This material may be |
372 | <p>Copyright (c) 2007 by Robin Hugh Johnson. This material may be |
| 391 | distributed only subject to the terms and conditions set forth in the |
373 | distributed only subject to the terms and conditions set forth in the |
| 392 | Open Publication License, v1.0.</p> |
374 | Open Publication License, v1.0.</p> |
| 393 | <p>vim: tw=72 ts=2 expandtab:</p> |
375 | <p>vim: tw=72 ts=2 expandtab:</p> |
| 394 | </div> |
376 | </div> |
| 395 | |
377 | |
| 396 | </div> |
378 | </div> |
| 397 | <div class="footer"> |
379 | <div class="footer"> |
| 398 | <hr class="footer" /> |
380 | <hr class="footer" /> |
| 399 | <a class="reference external" href="glep-0060.txt">View document source</a>. |
381 | <a class="reference external" href="glep-0060.txt">View document source</a>. |
| 400 | Generated on: 2008-10-22 18:02 UTC. |
382 | Generated on: 2008-10-28 07:47 UTC. |
| 401 | Generated by <a class="reference external" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source. |
383 | Generated by <a class="reference external" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source. |
| 402 | |
384 | |
| 403 | </div> |
385 | </div> |
| 404 | </body> |
386 | </body> |
| 405 | </html> |
387 | </html> |