/[gentoo]/xml/htdocs/proj/en/glep/glep-0023.html
Gentoo

Diff of /xml/htdocs/proj/en/glep/glep-0023.html

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

Revision 1.1 Revision 1.7
6PEP, see http://www.python.org/peps/pep-0001.html for instructions and links 6PEP, see http://www.python.org/peps/pep-0001.html for instructions and links
7to templates. DO NOT USE THIS HTML FILE AS YOUR TEMPLATE! 7to 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.0: http://docutils.sourceforge.net/" /> 11 <meta name="generator" content="Docutils 0.4: http://docutils.sourceforge.net/" />
12 <title>GLEP 23 -- Portage handling of ACCEPT_LICENSE</title> 12 <title>GLEP 23 -- Handling of ACCEPT_LICENSE</title>
13 <link rel="stylesheet" href="tools/glep.css" type="text/css" /> 13 <style type="text/css">
14
15/*
16:Author: David Goodger
17:Contact: goodger@users.sourceforge.net
18:date: $Date: 2006/11/19 22:50:15 $
19:version: $Revision: 1.7 $
20:copyright: This stylesheet has been placed in the public domain.
21
22Default cascading style sheet for the PEP HTML output of Docutils.
23*/
24
25.first {
26 margin-top: 0 }
27
28.last {
29 margin-bottom: 0 }
30
31.navigation {
32 width: 100% ;
33 background: #cc99ff ;
34 margin-top: 0px ;
35 margin-bottom: 0px }
36
37.navigation .navicon {
38 width: 150px ;
39 height: 35px }
40
41.navigation .textlinks {
42 padding-left: 1em ;
43 text-align: left }
44
45.navigation td, .navigation th {
46 padding-left: 0em ;
47 padding-right: 0em ;
48 vertical-align: middle }
49
50.rfc2822 {
51 margin-top: 0.5em ;
52 margin-left: 0.5em ;
53 margin-right: 0.5em ;
54 margin-bottom: 0em }
55
56.rfc2822 td {
57 text-align: left }
58
59.rfc2822 th.field-name {
60 text-align: right ;
61 font-family: sans-serif ;
62 padding-right: 0.5em ;
63 font-weight: bold ;
64 margin-bottom: 0em }
65
66a.toc-backref {
67 text-decoration: none ;
68 color: black }
69
70body {
71 margin: 0px ;
72 margin-bottom: 1em ;
73 padding: 0px }
74
75dd {
76 margin-bottom: 0.5em }
77
78div.section {
79 margin-left: 1em ;
80 margin-right: 1em ;
81 margin-bottom: 1.5em }
82
83div.section div.section {
84 margin-left: 0em ;
85 margin-right: 0em ;
86 margin-top: 1.5em }
87
88div.abstract {
89 margin: 2em 5em }
90
91div.abstract p.topic-title {
92 font-weight: bold ;
93 text-align: center }
94
95div.attention, div.caution, div.danger, div.error, div.hint,
96div.important, div.note, div.tip, div.warning {
97 margin: 2em ;
98 border: medium outset ;
99 padding: 1em }
100
101div.attention p.admonition-title, div.caution p.admonition-title,
102div.danger p.admonition-title, div.error p.admonition-title,
103div.warning p.admonition-title {
104 color: red ;
105 font-weight: bold ;
106 font-family: sans-serif }
107
108div.hint p.admonition-title, div.important p.admonition-title,
109div.note p.admonition-title, div.tip p.admonition-title {
110 font-weight: bold ;
111 font-family: sans-serif }
112
113div.figure {
114 margin-left: 2em }
115
116div.footer, div.header {
117 font-size: smaller }
118
119div.footer {
120 margin-left: 1em ;
121 margin-right: 1em }
122
123div.system-messages {
124 margin: 5em }
125
126div.system-messages h1 {
127 color: red }
128
129div.system-message {
130 border: medium outset ;
131 padding: 1em }
132
133div.system-message p.system-message-title {
134 color: red ;
135 font-weight: bold }
136
137div.topic {
138 margin: 2em }
139
140h1 {
141 font-family: sans-serif ;
142 font-size: large }
143
144h2 {
145 font-family: sans-serif ;
146 font-size: medium }
147
148h3 {
149 font-family: sans-serif ;
150 font-size: small }
151
152h4 {
153 font-family: sans-serif ;
154 font-style: italic ;
155 font-size: small }
156
157h5 {
158 font-family: sans-serif;
159 font-size: x-small }
160
161h6 {
162 font-family: sans-serif;
163 font-style: italic ;
164 font-size: x-small }
165
166.section hr {
167 width: 75% }
168
169ol.simple, ul.simple {
170 margin-bottom: 1em }
171
172ol.arabic {
173 list-style: decimal }
174
175ol.loweralpha {
176 list-style: lower-alpha }
177
178ol.upperalpha {
179 list-style: upper-alpha }
180
181ol.lowerroman {
182 list-style: lower-roman }
183
184ol.upperroman {
185 list-style: upper-roman }
186
187p.caption {
188 font-style: italic }
189
190p.credits {
191 font-style: italic ;
192 font-size: smaller }
193
194p.label {
195 white-space: nowrap }
196
197p.topic-title {
198 font-family: sans-serif ;
199 font-weight: bold }
200
201pre.line-block {
202 font-family: serif ;
203 font-size: 100% }
204
205pre.literal-block, pre.doctest-block {
206 margin-left: 2em ;
207 margin-right: 2em ;
208 background-color: #eeeeee }
209
210span.classifier {
211 font-family: sans-serif ;
212 font-style: oblique }
213
214span.classifier-delimiter {
215 font-family: sans-serif ;
216 font-weight: bold }
217
218span.interpreted {
219 font-family: sans-serif }
220
221span.option-argument {
222 font-style: italic }
223
224span.pre {
225 white-space: pre }
226
227span.problematic {
228 color: red }
229
230table {
231 margin-top: 0.5em ;
232 margin-bottom: 0.5em }
233
234td, th {
235 padding-left: 0.5em ;
236 padding-right: 0.5em ;
237 vertical-align: top }
238
239td.num {
240 text-align: right }
241
242th.field-name {
243 font-weight: bold ;
244 text-align: left ;
245 white-space: nowrap }
246
247h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt {
248 font-size: 100% }
249
250tt {
251 background-color: #eeeeee }
252
253ul.auto-toc {
254 list-style-type: none }
255
256</style>
14</head> 257</head>
15<body bgcolor="white"> 258<body bgcolor="white">
16<table class="navigation" cellpadding="0" cellspacing="0" 259<table class="navigation" cellpadding="0" cellspacing="0"
17 width="100%" border="0"> 260 width="100%" border="0">
18<tr><td class="navicon" width="150" height="35"> 261<tr><td class="navicon" width="150" height="35">
19<a href="http://www.gentoo.org/" title="Gentoo Linux Home Page"> 262<a href="http://www.gentoo.org/" title="Gentoo Linux Home Page">
20<img src="http://www.gentoo.org/images/gentoo-new.gif" alt="[Gentoo]" 263<img src="http://www.gentoo.org/images/gentoo-new.gif" alt="[Gentoo]"
21 border="0" width="150" height="35" /></a></td> 264 border="0" width="150" height="35" /></a></td>
22<td class="textlinks" align="left"> 265<td class="textlinks" align="left">
23[<b><a href="http://www.gentoo.org/">Gentoo Linux Home</a></b>] 266[<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>] 267[<b><a href="http://www.gentoo.org/peps">GLEP Index</a></b>]
25[<b><a href="http://www.gentoo.org/proj/en/glep/glep-0023.txt">GLEP Source</a></b>] 268[<b><a href="http://www.gentoo.org/proj/en/glep/glep-0023.txt">GLEP Source</a></b>]
26</td></tr></table> 269</td></tr></table>
27<div class="document">
28<table class="rfc2822 field-list" frame="void" rules="none"> 270<table class="rfc2822 docutils field-list" frame="void" rules="none">
29<col class="field-name" /> 271<col class="field-name" />
30<col class="field-body" /> 272<col class="field-body" />
31<tbody valign="top"> 273<tbody valign="top">
32<tr class="field"><th class="field-name">GLEP:</th><td class="field-body">23</td> 274<tr class="field"><th class="field-name">GLEP:</th><td class="field-body">23</td>
33</tr> 275</tr>
34<tr class="field"><th class="field-name">Title:</th><td class="field-body">Portage handling of ACCEPT_LICENSE</td> 276<tr class="field"><th class="field-name">Title:</th><td class="field-body">Handling of ACCEPT_LICENSE</td>
35</tr> 277</tr>
36<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.5</td>
37</tr> 279</tr>
38<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-0023.txt?cvsroot=gentoo">2004/03/08 17:26:04</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-0023.txt?cvsroot=gentoo">2006/11/19 22:46:27</a></td>
39</tr> 281</tr>
40<tr class="field"><th class="field-name">Author:</th><td class="field-body">Jason Stubbs &lt;jstubbs&#32;&#97;t&#32;gentoo.org&gt;,</td> 282<tr class="field"><th class="field-name">Author:</th><td class="field-body">Jason Stubbs &lt;jstubbs&#32;&#97;t&#32;gentoo.org&gt;, Marius Mauch &lt;genone&#32;&#97;t&#32;gentoo.org&gt;</td>
41</tr> 283</tr>
42<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">Accepted</td>
43</tr> 285</tr>
44<tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td> 286<tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td>
45</tr> 287</tr>
46<tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference" href="glep-0002.html">text/x-rst</a></td> 288<tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference" href="glep-0002.html">text/x-rst</a></td>
47</tr> 289</tr>
48<tr class="field"><th class="field-name">Created:</th><td class="field-body">9-Mar-2004</td> 290<tr class="field"><th class="field-name">Created:</th><td class="field-body">9-Mar-2004</td>
49</tr> 291</tr>
50<tr class="field"><th class="field-name">Post-History:</th><td class="field-body">8-Mar-2004</td> 292<tr class="field"><th class="field-name">Post-History:</th><td class="field-body">8-Mar-2004 10-Mar-2004 25-Oct-2004 18-Nov-2006 19-Nov-2006</td>
51</tr> 293</tr>
52</tbody> 294</tbody>
53</table> 295</table>
54<hr /> 296<hr />
55<div class="contents topic" id="contents"> 297<div class="contents topic">
56<p class="topic-title"><a name="contents">Contents</a></p> 298<p class="topic-title first"><a id="contents" name="contents">Contents</a></p>
57<ul class="simple"> 299<ul class="simple">
58<li><a class="reference" href="#abstract" id="id5" name="id5">Abstract</a></li> 300<li><a class="reference" href="#abstract" id="id5" name="id5">Abstract</a></li>
301<li><a class="reference" href="#status-update" id="id6" name="id6">Status Update</a></li>
59<li><a class="reference" href="#motivation" id="id6" name="id6">Motivation</a></li> 302<li><a class="reference" href="#motivation" id="id7" name="id7">Motivation</a></li>
60<li><a class="reference" href="#specification" id="id7" name="id7">Specification</a><ul> 303<li><a class="reference" href="#specification" id="id8" name="id8">Specification</a><ul>
61<li><a class="reference" href="#ebuild-license-variable" id="id8" name="id8">Ebuild LICENSE Variable</a></li> 304<li><a class="reference" href="#ebuild-license-variable" id="id9" name="id9">Ebuild LICENSE Variable</a></li>
62<li><a class="reference" href="#license-groups" id="id9" name="id9">License Groups</a></li> 305<li><a class="reference" href="#license-groups" id="id10" name="id10">License Groups</a></li>
63<li><a class="reference" href="#accept-license" id="id10" name="id10">ACCEPT_LICENSE</a></li> 306<li><a class="reference" href="#accept-license" id="id11" name="id11">ACCEPT_LICENSE</a></li>
64<li><a class="reference" href="#emerge-behaviour" id="id11" name="id11">Emerge Behaviour</a></li> 307<li><a class="reference" href="#behaviour" id="id12" name="id12">Behaviour</a></li>
65</ul> 308</ul>
66</li> 309</li>
67<li><a class="reference" href="#rationale" id="id12" name="id12">Rationale</a></li> 310<li><a class="reference" href="#rationale" id="id13" name="id13">Rationale</a></li>
68<li><a class="reference" href="#reference-implementation" id="id13" name="id13">Reference Implementation</a></li> 311<li><a class="reference" href="#reference-implementation" id="id14" name="id14">Reference Implementation</a></li>
69<li><a class="reference" href="#backwards-compatibility" id="id14" name="id14">Backwards Compatibility</a></li> 312<li><a class="reference" href="#backwards-compatibility" id="id15" name="id15">Backwards Compatibility</a></li>
70<li><a class="reference" href="#references" id="id15" name="id15">References</a></li> 313<li><a class="reference" href="#references" id="id16" name="id16">References</a></li>
71<li><a class="reference" href="#copyright" id="id16" name="id16">Copyright</a></li> 314<li><a class="reference" href="#copyright" id="id17" name="id17">Copyright</a></li>
72</ul> 315</ul>
73</div> 316</div>
74<div class="section" id="abstract"> 317<div class="section">
75<h1><a class="toc-backref" href="#id5" name="abstract">Abstract</a></h1> 318<h1><a class="toc-backref" href="#id5" id="abstract" name="abstract">Abstract</a></h1>
76<p>Currently, every ebuild in the portage tree is required to have a valid 319<p>Currently, every ebuild in the main gentoo repository is required to have a
77LICENSE entry. However, the syntax of this entry is not officially 320valid LICENSE entry. However, the syntax of this entry is not officially
78defined and the entry itself is only used when outputting package 321defined and the entry itself is only used when outputting package
79details.</p> 322details.</p>
80</div> 323</div>
81<div class="section" id="motivation"> 324<div class="section">
325<h1><a class="toc-backref" href="#id6" id="status-update" name="status-update">Status Update</a></h1>
326<p>Repoman has been updated to check for the LICENSE syntax.
327A development portage branch with support for ACCEPT_LICENSE
328and license groups exists.</p>
329</div>
330<div class="section">
82<h1><a class="toc-backref" href="#id6" name="motivation">Motivation</a></h1> 331<h1><a class="toc-backref" href="#id7" id="motivation" name="motivation">Motivation</a></h1>
83<p>Many users wish to regulate the software they install with regards to 332<p>Many users wish to regulate the software they install with regards to
84licenses for various reasons <a class="footnote-reference" href="#id3" id="id1" name="id1">[1]</a>. Some want a system free of any 333licenses for various reasons <a class="footnote-reference" href="#id3" id="id1" name="id1">[1]</a>. Some want a system free of any
85software that is not OSI-approved; others are simply curious as to what 334software that is not OSI-approved; others are simply curious as to what
86licenses they are implicitly accepting.</p> 335licenses they are implicitly accepting.</p>
87<p>Furthermore, some software requires that a user interactively accept its 336<p>Furthermore, some software requires that a user interactively accept its
88license for its author's to consider it legally binding. This is 337license for its author's to consider it legally binding. This is
89currently implemented using <tt class="literal"><span class="pre">eutils.eclass</span></tt>.</p> 338currently implemented using <tt class="docutils literal"><span class="pre">eutils.eclass</span></tt>.</p>
90</div> 339</div>
91<div class="section" id="specification"> 340<div class="section">
92<h1><a class="toc-backref" href="#id7" name="specification">Specification</a></h1> 341<h1><a class="toc-backref" href="#id8" id="specification" name="specification">Specification</a></h1>
93<div class="section" id="ebuild-license-variable"> 342<div class="section">
94<h2><a class="toc-backref" href="#id8" name="ebuild-license-variable">Ebuild LICENSE Variable</a></h2> 343<h2><a class="toc-backref" href="#id9" id="ebuild-license-variable" name="ebuild-license-variable">Ebuild LICENSE Variable</a></h2>
95<p>Most ebuilds are for software which is released under a single license. 344<p>Most ebuilds are for software which is released under a single license.
96In these cases, the current LICENSE variable can remain as is. For 345In these cases, the current LICENSE variable can remain as is. For
97example:</p> 346example:</p>
98<pre class="literal-block"> 347<pre class="literal-block">
99LICENSE=&quot;single-license&quot; 348LICENSE=&quot;single-license&quot;
100</pre> 349</pre>
101<p>However, there are several ebuilds for software which is released under 350<p>However, there are several ebuilds for software which is released under
102several licenses, of which the user must accept one, some or all <a class="footnote-reference" href="#id4" id="id2" name="id2">[2]</a>. 351several licenses, of which the user must accept one, some or all <a class="footnote-reference" href="#id4" id="id2" name="id2">[2]</a>.
103To complicate this, some ebuilds include optional components which fall 352To complicate this, some ebuilds include optional components which fall
104under a different license.</p> 353under a different license.</p>
105<p>To accomodate these cases, LICENSE syntax should accomodate all 354<p>To accomodate these cases, LICENSE syntax should accomodate all
106functionality offered by a DEPEND string. To keep things simple, this 355functionality offered by a DEPEND string. To keep things simple, this
107GLEP proposes that the syntax be identical. For example:</p> 356GLEP proposes that the syntax be identical. For example:</p>
108<pre class="literal-block"> 357<pre class="literal-block">
109LICENSE=&quot;mandatory-license \ 358LICENSE=&quot;mandatory-license
110 ( || choosable-licence1 chooseable-license-2 ) \ 359 || ( choosable-licence1 chooseable-license-2 )
111 useflag? ( optional-component-license )&quot; 360 useflag? ( optional-component-license )&quot;
112</pre> 361</pre>
362<p>License names may contain [a-zA-Z0-9] (english alphanumeric characters),
363_ (underscore), - (dash), . (dot) and + (plus sign).</p>
113</div> 364</div>
114<div class="section" id="license-groups"> 365<div class="section">
115<h2><a class="toc-backref" href="#id9" name="license-groups">License Groups</a></h2> 366<h2><a class="toc-backref" href="#id10" id="license-groups" name="license-groups">License Groups</a></h2>
116<p>Almost all users are willing to install any software that is 367<p>Almost all users are willing to install any software that is
117OSI-approved. Other users are willing to install any software and 368FSF-approved. Other users are willing to install any software and
118implicitly accept its license. To this end, portage will also need to 369implicitly accept its license. To this end, implementations will also
119handle grouping of licenses.</p> 370need to handle grouping of licenses.</p>
120<p>At a minimum, there needs to be the groups <tt class="literal"><span class="pre">OSI-APPROVED</span></tt> and 371<p>At a minimum, there needs to be the groups <tt class="docutils literal"><span class="pre">GPL-COMPATIBLE</span></tt>,
121<tt class="literal"><span class="pre">NON-INTERACTIVE</span></tt>. <tt class="literal"><span class="pre">NON-INTERACTIVE</span></tt> licenses are those that don't 372<tt class="docutils literal"><span class="pre">FSF-APPROVED</span></tt>, <tt class="docutils literal"><span class="pre">OSI-APPROVED</span></tt> and <tt class="docutils literal"><span class="pre">NON-MUST-HAVE-READ</span></tt>.
122require interactive acceptance for it to be considered legally binding. 373<tt class="docutils literal"><span class="pre">NON-MUST-HAVE-READ</span></tt> licenses are those that don't require manual
123This is the current behaviour of portage.</p> 374acceptance for to be considered legally binding. This is the current
375behaviour of portage.</p>
376<p>These groups are defined in a new file <tt class="docutils literal"><span class="pre">license_groups</span></tt> in
377the <tt class="docutils literal"><span class="pre">profiles</span></tt> subdirectory of the tree (or overlays).
378Details of handling groups defined in overlays is implementation dependent.</p>
379<p>The format of this file is</p>
380<pre class="literal-block">
381&lt;groupname&gt; &lt;license1&gt; &lt;license2&gt; ... &lt;licenseN&gt;
382</pre>
383<p>Also any line starting with # is ignored and may be used for comments.
384Group names use the same syntax as normal license names. Also license groups
385may contain other groups.
386License groups may not contain negated elements, so a group</p>
387<pre class="literal-block">
388mygroup foo -bar -bla
389</pre>
390<p>is illegal.</p>
124</div> 391</div>
125<div class="section" id="accept-license"> 392<div class="section">
126<h2><a class="toc-backref" href="#id10" name="accept-license">ACCEPT_LICENSE</a></h2> 393<h2><a class="toc-backref" href="#id11" id="accept-license" name="accept-license">ACCEPT_LICENSE</a></h2>
127<p>This GLEP proposes that a user be able to explicitly accept or decline 394<p>This GLEP proposes that a user be able to explicitly accept or decline
128licenses by editing a new variable <tt class="literal"><span class="pre">ACCEPT_LICENSE</span></tt> in 395licenses by editing a new variable <tt class="docutils literal"><span class="pre">ACCEPT_LICENSE</span></tt> in
129<tt class="literal"><span class="pre">/etc/make.conf</span></tt>. Again, to keep things simple, the syntax should be 396<tt class="docutils literal"><span class="pre">/etc/make.conf</span></tt>. Again, to keep things simple, the syntax should be
130similar to that of other incrementals. For example:</p> 397similar to that of other incrementals. For example:</p>
131<pre class="literal-block"> 398<pre class="literal-block">
132ACCEPT_LICENSE=&quot;-* accepted-license -declined-license&quot; 399ACCEPT_LICENSE=&quot;-* accepted-license -declined-license&quot;
133</pre> 400</pre>
134<p>As an extension, <tt class="literal"><span class="pre">ACCEPT_LICENSE</span></tt> must also support <a class="reference" href="#license-groups">license groups</a>. 401<p>As an extension, <tt class="docutils literal"><span class="pre">ACCEPT_LICENSE</span></tt> must also support <a class="reference" href="#license-groups">license groups</a>.
135This GLEP proposes that the license group be prepended by the special 402This GLEP proposes that the license group be prepended by the special
136character &quot;<tt class="literal"><span class="pre">&#64;</span></tt>&quot;. For example:</p> 403character &quot;<tt class="docutils literal"><span class="pre">&#64;</span></tt>&quot;. For example:</p>
137<pre class="literal-block"> 404<pre class="literal-block">
138ACCEPT_LICENSE=&quot;-* &#64;OSI-APPROVED&quot; 405ACCEPT_LICENSE=&quot;-* &#64;FSF-APPROVED&quot;
139</pre> 406</pre>
407<p>License groups may be negated with the result that all elements of that group
408are also negated.</p>
409<p>Portage will also offer a package.license facility to offer this functionality
410on a per-package base (analog to package.keywords), other implementations may
411implement such a facility differently or not at all.</p>
140</div> 412</div>
141<div class="section" id="emerge-behaviour"> 413<div class="section">
142<h2><a class="toc-backref" href="#id11" name="emerge-behaviour">Emerge Behaviour</a></h2> 414<h2><a class="toc-backref" href="#id12" id="behaviour" name="behaviour">Behaviour</a></h2>
143<p>At a minimum, emerge must handle unaccepted licenses the same way that 415<p>Unaccepted licenses will be treated like any other masked package, that is
144it handles blockers. That is, with the --pretend flag the 416the user interface of an implementation will display a message listing any
145not-yet-accepted license should be listed in the output. Without the 417license that has to be accepted before the package can be merged with a
146--pretend flag, emerge should stop before any software is installed.</p> 418pointer to the exact license text.</p>
147<p>This GLEP proposes that, unlike blockers, dependencies for software 419<p>Past versions of this document proposed to handle license-masked packages
148should be checked regardless of license acceptance. Doing so will allow 420like blockers, but this would be inconsistent with other visibility
149the user to review all necessary licenses before initiating an actual 421filters as well as the current blocker system (as a blocker affects two
150emerge.</p> 422packages) and be more complicated to implement.</p>
151<p>It is also proposed that the --ask option will display an unaccepted
152license and ask for acceptance, but not update any configuration files
153at this stage. Finally, the --verbose option should also list the
154licenses accepted for each package.</p>
155</div> 423</div>
156</div> 424</div>
157<div class="section" id="rationale"> 425<div class="section">
158<h1><a class="toc-backref" href="#id12" name="rationale">Rationale</a></h1> 426<h1><a class="toc-backref" href="#id13" id="rationale" name="rationale">Rationale</a></h1>
159<p>An implementation of this proposal should make it easy for users wishing 427<p>An implementation of this proposal should make it easy for users wishing
160to regulate their software without affecting those that don't.</p> 428to regulate their software without affecting those that don't.</p>
161</div> 429</div>
162<div class="section" id="reference-implementation"> 430<div class="section">
163<h1><a class="toc-backref" href="#id13" name="reference-implementation">Reference Implementation</a></h1> 431<h1><a class="toc-backref" href="#id14" id="reference-implementation" name="reference-implementation">Reference Implementation</a></h1>
164<p>TODO</p> 432<p>Available in portage svn repository under main/branches/license-masking</p>
165</div> 433</div>
166<div class="section" id="backwards-compatibility"> 434<div class="section">
167<h1><a class="toc-backref" href="#id14" name="backwards-compatibility">Backwards Compatibility</a></h1> 435<h1><a class="toc-backref" href="#id15" id="backwards-compatibility" name="backwards-compatibility">Backwards Compatibility</a></h1>
168<p>There should be no change to the user experience without the user 436<p>There should be no change to the user experience without the user
169explicitly choosing to do so. This mandates that the 437explicitly choosing to do so. This mandates that the
170configuration variable be named <tt class="literal"><span class="pre">ACCEPT_LICENSE</span></tt> as some users may 438configuration variable be named <tt class="docutils literal"><span class="pre">ACCEPT_LICENSE</span></tt> as some users may
171already have it set due to ebuilds using <tt class="literal"><span class="pre">eutil.eclass</span></tt>'s 439already have it set due to ebuilds using <tt class="docutils literal"><span class="pre">eutil.eclass</span></tt>'s
172implementation. It also mandates that the default <tt class="literal"><span class="pre">ACCEPT_LICENSE</span></tt> be 440implementation. It also mandates that the default <tt class="docutils literal"><span class="pre">ACCEPT_LICENSE</span></tt> be
173set to <tt class="literal"><span class="pre">&#64;NON-INTERACTIVE</span></tt>.</p> 441set to <tt class="docutils literal"><span class="pre">&#64;NON-MUST-HAVE-READ</span></tt> in the main gentoo repository as implementations
442are not required to provide an internal default.</p>
174</div> 443</div>
175<div class="section" id="references"> 444<div class="section">
176<h1><a class="toc-backref" href="#id15" name="references">References</a></h1> 445<h1><a class="toc-backref" href="#id16" id="references" name="references">References</a></h1>
177<table class="footnote" frame="void" id="id3" rules="none"> 446<table class="docutils footnote" frame="void" id="id3" rules="none">
178<colgroup><col class="label" /><col /></colgroup> 447<colgroup><col class="label" /><col /></colgroup>
179<tbody valign="top"> 448<tbody valign="top">
180<tr><td class="label"><a class="fn-backref" href="#id1" name="id3">[1]</a></td><td>Gentoo Linux Bug 17367 449<tr><td class="label"><a class="fn-backref" href="#id1" name="id3">[1]</a></td><td>Gentoo Linux Bug 17367
181(<a class="reference" href="http://bugs.gentoo.org/show_bug.cgi?id=17367">http://bugs.gentoo.org/show_bug.cgi?id=17367</a>)</td></tr> 450(<a class="reference" href="http://bugs.gentoo.org/show_bug.cgi?id=17367">http://bugs.gentoo.org/show_bug.cgi?id=17367</a>)</td></tr>
182</tbody> 451</tbody>
183</table> 452</table>
184<table class="footnote" frame="void" id="id4" rules="none"> 453<table class="docutils footnote" frame="void" id="id4" rules="none">
185<colgroup><col class="label" /><col /></colgroup> 454<colgroup><col class="label" /><col /></colgroup>
186<tbody valign="top"> 455<tbody valign="top">
187<tr><td class="label"><a class="fn-backref" href="#id2" name="id4">[2]</a></td><td>Gentoo Linux Bug 34146 456<tr><td class="label"><a class="fn-backref" href="#id2" name="id4">[2]</a></td><td>Gentoo Linux Bug 34146
188(<a class="reference" href="http://bugs.gentoo.org/show_bug.cgi?id=34146">http://bugs.gentoo.org/show_bug.cgi?id=34146</a>)</td></tr> 457(<a class="reference" href="http://bugs.gentoo.org/show_bug.cgi?id=34146">http://bugs.gentoo.org/show_bug.cgi?id=34146</a>)</td></tr>
189</tbody> 458</tbody>
190</table> 459</table>
191</div> 460</div>
192<div class="section" id="copyright"> 461<div class="section">
193<h1><a class="toc-backref" href="#id16" name="copyright">Copyright</a></h1> 462<h1><a class="toc-backref" href="#id17" id="copyright" name="copyright">Copyright</a></h1>
194<p>This document has been placed in the public domain.</p> 463<p>This document has been placed in the public domain.</p>
195</div> 464</div>
196</div>
197 465
198<hr class="footer"/> 466</div>
199<div class="footer"> 467<div class="footer">
468<hr class="footer" />
200<a class="reference" href="glep-0023.txt">View document source</a>. 469<a class="reference" href="glep-0023.txt">View document source</a>.
201Generated on: 2004-03-08 17:26 UTC. 470Generated on: 2006-11-19 22:58 UTC.
202Generated 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. 471Generated 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.
472
203</div> 473</div>
204</body> 474</body>
205</html> 475</html>
206 476

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

  ViewVC Help
Powered by ViewVC 1.1.20