How to start using only SDPX-License-Identifier tags

Warner Losh


I have a ton of questions about how a project can go about doing this.

I'm looking at doing whatever it would take to create a framework so that the FreeBSD project could use SPDX-License-Idnetifiers as the sole designator of license.

Today, the project has SPDX tags in about 25k of 90k files in our source tree. However, in all cases, the SPDX tag today is informative. The actual license is contained in the file as well so there's no ambiguity as to what the license is (we have an explicit statement that says presently these tags are informative).

However, as more and more software is created using only these tags, we've seen some pressure to accept this software. In addition, some members have expressed the desire to be rid of all this tiresome boilerplate at the start of every file.

So, I'm investigating how we can have something like

 * Copyright 2021 M. Warner Losh
 * SPDX-License-Identifier: BSD-2-Clause

become a valid license to use this file under whatever BSD-2-Clause.txt says, with the proper values filled in. At first blush, in a friendly environment, it is easy. Common sense lets me do it. However, in a more hostile environment where people may try to construe ambiguity to their interest and against mine, I worry that any lack of clarity could cause problems. I have some other concerns as well, but this is the basic one. One reason I worry about this is that I've seen a journal article try to construe the archaic 'All Rights Reserved' into meaning something other than enabling language for this Buenos Aires Convention and imparting on it other, maybe nefarious meanings to cite a concrete example.

I've seen the license matching guidelines. Those make sense for the project's prior SPDX activity where we were adding informative tags to existing licenses. However, I am having trouble how one could unambiguously apply them to take the above copyright notice and license and come up with something that I could show to our legal department and that I'd have confidence any litigation around copying of the file would start at (both as the copyright holder and also as a company using this code).

When we added the informative tags to the FreeBSD tree, there was an objection to that because of this and other issues. Since we said the tags were merely informative and the actual license granted use, we were able to dodge the issue at the time. As I prepare to start down the path of turning something like the above into something the project accepts, I have to return to questions like these and a zillion others to get there.

Is there something I've missed that talks about this specifically? I have other questions as well, but these questions seem like a good place to start....

Thanks for your time and attention to this matter...


Join { to automatically receive all group messages.