[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Script to generate common license texts

Quoting Balasankar C (2015-09-04 20:42:19)
> On ശനി 05 സെപ്റ്റംബര്‍ 2015 12:01 രാവിലെ, Jonas Smedegaard wrote:
>> Quoting Balasankar C (2015-09-04 19:38:20)
>>> Is there any script which takes abbreviation of a license (like 
>>> GPL-3+) as input and generates the license text that can be used in 
>>> debian/copyright (80 character wrapped, one space before each line, 
>>> paragraph separated with periods - the whole deal.
>> Please beware that debian/copyright strings should reflect the actual 
>> _verbatim_ text stated by the copyright holders, not any generic 
>> _boilerplate_ proposed by e.g. the Free Software Foundation.
> Yeah. I know that. Why I asked for such a script is that some of the 
> packages I dealt with just mentioned "Released under XYZ license. 
> Copyright 20xx MNO" without any explicit license text (they should've, 
> but they don't) which means they just use the _boilerplate_ license 
> text that is commonly used. For example, many Ruby gems are Expat 
> licensed and use boilerplate text.

Either upstream states actual licensing terms, or refer to external 
licensing terms.  It seems we use the term "boilerplate" differently: I 
don't call it "boilerplate" when upstream states actual licensing terms 
(e.g. Expat written out rather than by reference).

Upstream "should" do whatever they want - but yes, if upstream state 
licensing terms ambiguously then we cannot redistribute their project, 
so it makes sense to suggest them to clarify if we are uncertain what 
they mean (e.g. when stating "MIT" without URL or actual licensing terms 
- because that may refer to several different actual terms).

When upstream states "Released under MIT." then a) the actual licensing 
terms are not included and b) actual licensing terms are uncertain. We 
then should add in debian/copyright the upstream statement verbatim, add 
the actual licensing terms - also verbatim, and ideally also add a 
comment on our reasoning for resolving license terms from license grant.

When upstream states "Released under GPL 2." then terms are similarly 
not included but (arguably) certain.  We then should again add in 
debian/copyright the upstream statement verbatim, and (because we can) 
refer to /usr/share/common-licenses/GPL-2. We do *not* need¹ to also add 
the boilerplate included in the GPL license text under the title "How to 
Apply These Terms to Your New Programs" - exactly because we are not 
creating a new program ;-)

> The scripts would just be used to reduce the time in searching for the 
> _boilerplate_ text in the Internet (or other packages), and that too 
> only if the upstream doesn't provide any verbatim text.

If by boilerplate you mean common sets of actual licensing terms (e.g. 
Expat) then true, it might be convenient with a tool that can spit out 
verbatim texts we do not ship below /usr/share/common-licenses.

If by boilerplate you mean common _reference_ for sets of common 
licensing term (e.g. the FSF-recommended text for GPL licenses) then 
wrong: There is no need for adding such additional text to 
debian/copyright if upstream did not state it using those exact same 
words. Because such text is then neither verbatim copy of upstream 
statement nor actual licensing terms.

> I fail to provide a general use case where this can be directly 
> applied, but to share one of my experiences I recently dealt with a 
> package that was released under W3C license (that only, no verbatim 
> text) and I spent quite some time searching for the license text to be 
> included in debian/copyright (not the complete license text, but 
> something like we have for GPL-3.0+ - the one I mentioned in my 
> original mail)

If you have trouble locating actual licensing terms, then take that as 
indication that those reading the copyright file you are writing may 
have trouble too: When you've succeeded locating the actual licensing 
terms then consider add a comment on where you found them, and your 
reasoning for why that location is believed to be reasonably correct.

Practivally, if you use the machine-readable copyright file format, then 
first line has a URL to a web page, which links to licenses at SPDX: 

Hope that helps,

 - Jonas

¹ Lintian may warn about lack of GPL boilerplate in debian/copyright but 
that's because lintian is not clever enough to read human language which 
may correctly refer the the actual licensing terms in other ways than 
using the boilerplate recognizable by lintian: Suppress such warnings if 
certain the reference indeed does exist.

 * Jonas Smedegaard - idealist & Internet-arkitekt
 * Tlf.: +45 40843136  Website: http://dr.jones.dk/

 [x] quote me freely  [ ] ask before reusing  [ ] keep private

Attachment: signature.asc
Description: signature

Reply to: