| … | |
… | |
| 13 | <style type="text/css"> |
13 | <style type="text/css"> |
| 14 | |
14 | |
| 15 | /* |
15 | /* |
| 16 | :Author: David Goodger |
16 | :Author: David Goodger |
| 17 | :Contact: goodger@users.sourceforge.net |
17 | :Contact: goodger@users.sourceforge.net |
| 18 | :date: $Date: 2006/10/13 22:48:15 $ |
18 | :date: $Date: 2006/10/14 02:47:31 $ |
| 19 | :version: $Revision: 1.1 $ |
19 | :version: $Revision: 1.2 $ |
| 20 | :copyright: This stylesheet has been placed in the public domain. |
20 | :copyright: This stylesheet has been placed in the public domain. |
| 21 | |
21 | |
| 22 | Default cascading style sheet for the PEP HTML output of Docutils. |
22 | Default cascading style sheet for the PEP HTML output of Docutils. |
| 23 | */ |
23 | */ |
| 24 | |
24 | |
| … | |
… | |
| 275 | </tr> |
275 | </tr> |
| 276 | <tr class="field"><th class="field-name">Title:</th><td class="field-body">RESTRICT=interactive</td> |
276 | <tr class="field"><th class="field-name">Title:</th><td class="field-body">RESTRICT=interactive</td> |
| 277 | </tr> |
277 | </tr> |
| 278 | <tr class="field"><th class="field-name">Version:</th><td class="field-body">1.1</td> |
278 | <tr class="field"><th class="field-name">Version:</th><td class="field-body">1.1</td> |
| 279 | </tr> |
279 | </tr> |
| 280 | <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.cgi/xml/htdocs/proj/en/glep/glep-0052.txt?cvsroot=gentoo">2005/12/06 03:34:21</a></td> |
280 | <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.cgi/xml/htdocs/proj/en/glep/glep-0052.txt?cvsroot=gentoo">2006/10/13 22:48:15</a></td> |
| 281 | </tr> |
281 | </tr> |
| 282 | <tr class="field"><th class="field-name">Author:</th><td class="field-body">Marius Mauch <genone at gentoo.org>,</td> |
282 | <tr class="field"><th class="field-name">Author:</th><td class="field-body">Marius Mauch <genone at gentoo.org>,</td> |
| 283 | </tr> |
283 | </tr> |
| 284 | <tr class="field"><th class="field-name">Status:</th><td class="field-body">Draft</td> |
284 | <tr class="field"><th class="field-name">Status:</th><td class="field-body">Draft</td> |
| 285 | </tr> |
285 | </tr> |
| … | |
… | |
| 295 | </table> |
295 | </table> |
| 296 | <hr /> |
296 | <hr /> |
| 297 | <div class="contents topic"> |
297 | <div class="contents topic"> |
| 298 | <p class="topic-title first"><a id="contents" name="contents">Contents</a></p> |
298 | <p class="topic-title first"><a id="contents" name="contents">Contents</a></p> |
| 299 | <ul class="simple"> |
299 | <ul class="simple"> |
| 300 | <li><a class="reference" href="#abstract" id="id1" name="id1">Abstract</a></li> |
300 | <li><a class="reference" href="#abstract" id="id4" name="id4">Abstract</a></li> |
| 301 | <li><a class="reference" href="#motivation" id="id2" name="id2">Motivation</a></li> |
301 | <li><a class="reference" href="#motivation" id="id5" name="id5">Motivation</a></li> |
| 302 | <li><a class="reference" href="#specification" id="id3" name="id3">Specification</a></li> |
302 | <li><a class="reference" href="#specification" id="id6" name="id6">Specification</a></li> |
| 303 | <li><a class="reference" href="#rationale" id="id4" name="id4">Rationale</a></li> |
303 | <li><a class="reference" href="#rationale" id="id7" name="id7">Rationale</a></li> |
| 304 | <li><a class="reference" href="#backwards-compatibility" id="id5" name="id5">Backwards Compatibility</a></li> |
304 | <li><a class="reference" href="#backwards-compatibility" id="id8" name="id8">Backwards Compatibility</a></li> |
| 305 | <li><a class="reference" href="#reference-implementation" id="id6" name="id6">Reference Implementation</a></li> |
305 | <li><a class="reference" href="#reference-implementation" id="id9" name="id9">Reference Implementation</a></li> |
| 306 | <li><a class="reference" href="#credits" id="id7" name="id7">Credits</a></li> |
306 | <li><a class="reference" href="#credits" id="id10" name="id10">Credits</a></li> |
| 307 | <li><a class="reference" href="#references" id="id8" name="id8">References</a></li> |
307 | <li><a class="reference" href="#references" id="id11" name="id11">References</a></li> |
| 308 | <li><a class="reference" href="#copyright" id="id9" name="id9">Copyright</a></li> |
308 | <li><a class="reference" href="#copyright" id="id12" name="id12">Copyright</a></li> |
| 309 | </ul> |
309 | </ul> |
| 310 | </div> |
310 | </div> |
| 311 | <div class="section"> |
311 | <div class="section"> |
| 312 | <h1><a class="toc-backref" href="#id1" id="abstract" name="abstract">Abstract</a></h1> |
312 | <h1><a class="toc-backref" href="#id4" id="abstract" name="abstract">Abstract</a></h1> |
| 313 | <p>This GLEP proposes a new value for the RESTRICT metadata variable in ebuilds to |
313 | <p>This GLEP proposes a new value for the RESTRICT metadata variable in ebuilds to |
| 314 | indicate that an ebuild requires interaction by the user.</p> |
314 | indicate that an ebuild requires interaction by the user.</p> |
| 315 | </div> |
315 | </div> |
| 316 | <div class="section"> |
316 | <div class="section"> |
| 317 | <h1><a class="toc-backref" href="#id2" id="motivation" name="motivation">Motivation</a></h1> |
317 | <h1><a class="toc-backref" href="#id5" id="motivation" name="motivation">Motivation</a></h1> |
| 318 | <p>Certain ebuilds in the current tree require certain actions from the user to |
318 | <p>Certain ebuilds in the current tree require certain actions from the user to |
| 319 | progress. A popular example are ebuilds that require physical media (cd/dvd-rom) |
319 | progress. A popular example are ebuilds that require physical media (cd/dvd-rom) |
| 320 | for their distfiles instead of fetching them form the net. |
320 | for their distfiles instead of fetching them form the net. |
| 321 | However ebuilds are supposed to be non-interactive, so this behavior, while |
321 | However ebuilds are supposed to be non-interactive, so this behavior, while |
| 322 | sometimes necessary, violates existing policies. To account for this situation |
322 | sometimes necessary, violates existing policies. To account for this situation |
| 323 | a new RESTRICT value should be added to allow filtering those ebuilds based on |
323 | a new RESTRICT value should be added to allow filtering those ebuilds based on |
| 324 | metadata and to inform users upfront (when displaying the depgraph) that a |
324 | metadata and to inform users upfront (when displaying the depgraph) that a |
| 325 | certain package will require their attention during the build process.</p> |
325 | certain package will require their attention during the build process.</p> |
| 326 | </div> |
326 | </div> |
| 327 | <div class="section"> |
327 | <div class="section"> |
| 328 | <h1><a class="toc-backref" href="#id3" id="specification" name="specification">Specification</a></h1> |
328 | <h1><a class="toc-backref" href="#id6" id="specification" name="specification">Specification</a></h1> |
| 329 | <p>Portage (and by extension other package managers) will support a new value for |
329 | <p>Portage (and by extension other package managers) will support a new value for |
| 330 | the RESTRICT metadata variable called <tt class="docutils literal"><span class="pre">interactive</span></tt>. This value may be used by |
330 | the RESTRICT metadata variable called <tt class="docutils literal"><span class="pre">interactive</span></tt>. This value may be used by |
| 331 | the package manager and tools using its API to filter packages that require |
331 | the package manager and tools using its API to filter packages that require |
| 332 | interactive actions (for example to mask them in automated build environments). |
332 | interactive actions (for example to mask them in automated build environments). |
| 333 | How the package manager exactly reacts on the presence of this new flag is beyond |
333 | How the package manager exactly reacts on the presence of this new flag is beyond |
| … | |
… | |
| 337 | require user attention during the build process. If an ebuild just has a limited |
337 | require user attention during the build process. If an ebuild just has a limited |
| 338 | <tt class="docutils literal"><span class="pre">risk</span></tt> of becoming interactive (like using the <tt class="docutils literal"><span class="pre">built_with_use</span></tt> function) |
338 | <tt class="docutils literal"><span class="pre">risk</span></tt> of becoming interactive (like using the <tt class="docutils literal"><span class="pre">built_with_use</span></tt> function) |
| 339 | it shouldn't be restricted.</p> |
339 | it shouldn't be restricted.</p> |
| 340 | </div> |
340 | </div> |
| 341 | <div class="section"> |
341 | <div class="section"> |
| 342 | <h1><a class="toc-backref" href="#id4" id="rationale" name="rationale">Rationale</a></h1> |
342 | <h1><a class="toc-backref" href="#id7" id="rationale" name="rationale">Rationale</a></h1> |
| 343 | <p>The new RESTRICT=interactive metadata setting will give us the following benefits:</p> |
343 | <p>The new RESTRICT=interactive metadata setting will give us the following benefits:</p> |
| 344 | <ol class="arabic simple"> |
344 | <ol class="arabic simple"> |
| 345 | <li>Enable masking of interactive ebuilds for automated build environments</li> |
345 | <li>Enable masking of interactive ebuilds for automated build environments</li> |
| 346 | <li>Metadata based searching for interactive ebuilds (superior to grep)</li> |
346 | <li>Metadata based searching for interactive ebuilds (superior to grep)</li> |
| 347 | <li>Less frustrated users caused by <tt class="docutils literal"><span class="pre">hanging</span></tt> build processes</li> |
347 | <li>Less frustrated users caused by <tt class="docutils literal"><span class="pre">hanging</span></tt> build processes</li> |
| … | |
… | |
| 349 | <p>This proposal does not change the existing policy regarding interactive ebuilds |
349 | <p>This proposal does not change the existing policy regarding interactive ebuilds |
| 350 | (ebuilds still should be non-interactive whenever possible), it merely states a |
350 | (ebuilds still should be non-interactive whenever possible), it merely states a |
| 351 | way to identify them.</p> |
351 | way to identify them.</p> |
| 352 | </div> |
352 | </div> |
| 353 | <div class="section"> |
353 | <div class="section"> |
| 354 | <h1><a class="toc-backref" href="#id5" id="backwards-compatibility" name="backwards-compatibility">Backwards Compatibility</a></h1> |
354 | <h1><a class="toc-backref" href="#id8" id="backwards-compatibility" name="backwards-compatibility">Backwards Compatibility</a></h1> |
| 355 | <p>Strictly speaking this extension would requires an EAPI bump, however as existing |
355 | <p>Strictly speaking this extension would requires an EAPI bump, however as existing |
| 356 | portage ignore unknown RESTRICT values it shouldn't cause any real breakage to |
356 | portage ignore unknown RESTRICT values it shouldn't cause any real breakage to |
| 357 | introduce it without.</p> |
357 | introduce it without.</p> |
| 358 | </div> |
358 | </div> |
| 359 | <div class="section"> |
359 | <div class="section"> |
| 360 | <h1><a class="toc-backref" href="#id6" id="reference-implementation" name="reference-implementation">Reference Implementation</a></h1> |
360 | <h1><a class="toc-backref" href="#id9" id="reference-implementation" name="reference-implementation">Reference Implementation</a></h1> |
| 361 | <p>TODO</p> |
361 | <p>A <a class="reference" href="glep-0052-extras/portage-2.1.2_pre2-r6-interactive-restrict.diff.txt">patch against portage-2.1.2_pre2-r6</a> <a class="footnote-reference" href="#id2" id="id3" name="id3">[2]</a> is available with this document.</p> |
| 362 | </div> |
362 | </div> |
| 363 | <div class="section"> |
363 | <div class="section"> |
| 364 | <h1><a class="toc-backref" href="#id7" id="credits" name="credits">Credits</a></h1> |
364 | <h1><a class="toc-backref" href="#id10" id="credits" name="credits">Credits</a></h1> |
| 365 | <p>Thanks to the following persons for their input on or related to this GLEP |
365 | <p>Thanks to the following persons for their input on or related to this GLEP |
| 366 | (even though they might not have known it): |
366 | (even though they might not have known it): |
| 367 | Alec Warner, Zac Medico, Simon Stelling</p> |
367 | Alec Warner, Zac Medico, Simon Stelling</p> |
| 368 | </div> |
368 | </div> |
| 369 | <div class="section"> |
369 | <div class="section"> |
| 370 | <h1><a class="toc-backref" href="#id8" id="references" name="references">References</a></h1> |
370 | <h1><a class="toc-backref" href="#id11" id="references" name="references">References</a></h1> |
| 371 | <table class="docutils footnote" frame="void" id="bug151113" rules="none"> |
371 | <table class="docutils footnote" frame="void" id="bug151113" rules="none"> |
| 372 | <colgroup><col class="label" /><col /></colgroup> |
372 | <colgroup><col class="label" /><col /></colgroup> |
| 373 | <tbody valign="top"> |
373 | <tbody valign="top"> |
| 374 | <tr><td class="label"><a name="bug151113">[1]</a></td><td><a class="reference" href="http://bugs.gentoo.org/151113">http://bugs.gentoo.org/151113</a></td></tr> |
374 | <tr><td class="label"><a name="bug151113">[1]</a></td><td><a class="reference" href="http://bugs.gentoo.org/151113">http://bugs.gentoo.org/151113</a></td></tr> |
| 375 | </tbody> |
375 | </tbody> |
| 376 | </table> |
376 | </table> |
|
|
377 | <table class="docutils footnote" frame="void" id="id2" rules="none"> |
|
|
378 | <colgroup><col class="label" /><col /></colgroup> |
|
|
379 | <tbody valign="top"> |
|
|
380 | <tr><td class="label"><a class="fn-backref" href="#id3" name="id2">[2]</a></td><td><a class="reference" href="glep-0052-extras/portage-2.1.2_pre2-r6-interactive-restrict.diff.txt">glep-0052-extras/portage-2.1.2_pre2-r6-interactive-restrict.diff.txt</a></td></tr> |
|
|
381 | </tbody> |
|
|
382 | </table> |
| 377 | </div> |
383 | </div> |
| 378 | <div class="section"> |
384 | <div class="section"> |
| 379 | <h1><a class="toc-backref" href="#id9" id="copyright" name="copyright">Copyright</a></h1> |
385 | <h1><a class="toc-backref" href="#id12" id="copyright" name="copyright">Copyright</a></h1> |
| 380 | <p>This document has been placed in the public domain.</p> |
386 | <p>This document has been placed in the public domain.</p> |
| 381 | </div> |
387 | </div> |
| 382 | |
388 | |
| 383 | </div> |
389 | </div> |
| 384 | <div class="footer"> |
390 | <div class="footer"> |
| 385 | <hr class="footer" /> |
391 | <hr class="footer" /> |
| 386 | <a class="reference" href="glep-0052.txt">View document source</a>. |
392 | <a class="reference" href="glep-0052.txt">View document source</a>. |
| 387 | Generated on: 2006-10-13 22:52 UTC. |
393 | Generated on: 2006-10-14 02:53 UTC. |
| 388 | 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. |
394 | 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. |
| 389 | |
395 | |
| 390 | </div> |
396 | </div> |
| 391 | </body> |
397 | </body> |
| 392 | </html> |
398 | </html> |