Linux-SPDX Archive on lore.kernel.org
 help / color / Atom feed
From: Richard Fontana <rfontana@redhat.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: J Lovejoy <opensource@jilayne.com>,
	Allison Randal <allison@lohutok.net>,
	linux-spdx@vger.kernel.org
Subject: Re: [patch 18/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 43
Date: Wed, 22 May 2019 18:16:56 -0400
Message-ID: <CAC1cPGxcEcpAeDbssiC8EGipSJBg=4kda-rUJm7CDui_LyMyLw@mail.gmail.com> (raw)
In-Reply-To: <alpine.DEB.2.21.1905221801540.1770@nanos.tec.linutronix.de>

On Wed, May 22, 2019 at 12:29 PM Thomas Gleixner <tglx@linutronix.de> wrote:
>
> While walking the dogs I thought more about this.
>
>   1) The random disclaimer (new or old) is not necessarily forming a new
>      license as long as the GPL (version) reference is unambiguous.
>
>      It's an (for GPLv2 tolerated and for GPLv3 documented) add on.

Yes, but it could be argued that it is meaningfully changing one
element of the license. Maybe SPDX ought to find a way to express that
through identifiers, maybe not. Maybe it's not important enough. Maybe
it's not important enough unless the disclaimer language crosses some
threshold of bizarreness.

If you look at how the other "allowed additional requirements" are
supposed to be handled in GPLv3, to me it wouldn't make sense or be
appropriate to delete them and replace them with a mere "GPL-3.0"
identifier string. I think an argument could be made that alternative
disclaimer language (at least if relatively sane) shouldn't really be
treated the same way as the other kinds of additional terms called out
in GPLv3. Indeed I've long felt that way. There's also the fact that
SPDX has a practice of coming up with identifiers for the other GPLv3
category of additional terms (additional permissions, corresponding to
SPDX "exceptions").

>   2) With a very quick scan (not complete and accurate) I found more than
>      20 variants of disclaimers bolted on a GPLv2 reference/boilerplate.
>      I fear there are more.
>
> So it's pretty unrealistic to create 20+ disclaimer IDs or 20+ new license
> IDs for those and either of these things would just help to proliferate
> that nonsense and create yet another mess in the SPDX realm.

That's a good point.

> I rather suggest to do the following:
>
>   1) Create a SPDX id 'CUSTOM_DISCLAIMER' and make the license identifier:
>
>      SPDX-License-Identifier: GPL-2.0-or-later AND CUSTOM_DISCLAIMER
>
>   2) Remove the GPL2.0 reference/boilerplate but keep the diclaimer in the
>      comment
>
>   3) Wrap the disclaimer into
>
>      DISCLAIMER_BEGIN
>
>       Random made up lawyerese
>
>      DISCLAIMER_END
>
> That gives us the following useful properties:
>
>      1) Avoid to go through the tedious process of creating disclaimer IDs
>         or new licenses and go through all the instances of SPDX/OSI and
>         whatever.
>
>      2) Allows to proceed with the cleanup
>
>      3) Precicely marks the custom disclaimer for compliance tools. Even a
>         halfways trivial awk script can extract them that way.
>
> We still can go after the copyright holders who added that mess at the same
> time, but we do not depend on their willingness, availability ...
>
> Thoughts?

This seems like a good solution. I think any viable solution has to
involve preserving the "nonstandard" disclaimer text in the files.


Richard

  parent reply index

Thread overview: 85+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-20 17:07 [patch 00/25] SPDX cleanup: batch 2 Thomas Gleixner
2019-05-20 17:07 ` [patch 01/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 26 Thomas Gleixner
2019-05-20 21:57   ` Allison Randal
2019-05-20 23:46   ` Kate Stewart
2019-05-20 17:07 ` [patch 02/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 27 Thomas Gleixner
2019-05-20 21:58   ` Allison Randal
2019-05-20 23:47   ` Kate Stewart
2019-05-20 17:07 ` [patch 03/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 28 Thomas Gleixner
2019-05-20 21:59   ` Allison Randal
2019-05-20 23:48   ` Kate Stewart
2019-05-20 17:07 ` [patch 04/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 29 Thomas Gleixner
2019-05-20 22:05   ` Allison Randal
2019-05-20 23:49   ` Kate Stewart
2019-05-20 17:07 ` [patch 05/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 30 Thomas Gleixner
2019-05-20 22:06   ` Allison Randal
2019-05-20 23:49   ` Kate Stewart
2019-05-20 17:07 ` [patch 06/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 31 Thomas Gleixner
2019-05-20 22:07   ` Allison Randal
2019-05-20 23:50   ` Kate Stewart
2019-05-20 17:07 ` [patch 07/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 32 Thomas Gleixner
2019-05-20 22:09   ` Allison Randal
2019-05-20 23:42   ` Kate Stewart
2019-05-20 17:07 ` [patch 08/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 33 Thomas Gleixner
2019-05-20 22:10   ` Allison Randal
2019-05-21  1:03   ` Kate Stewart
2019-05-21 14:20   ` Michael Ellerman
2019-05-21 14:36   ` Richard Fontana
2019-05-20 17:07 ` [patch 09/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 34 Thomas Gleixner
2019-05-20 22:31   ` Allison Randal
2019-05-21  0:09   ` Kate Stewart
2019-05-20 17:08 ` [patch 10/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 35 Thomas Gleixner
2019-05-20 22:35   ` Allison Randal
2019-05-21  0:29   ` Kate Stewart
2019-05-20 17:08 ` [patch 11/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 36 Thomas Gleixner
2019-05-20 22:36   ` Allison Randal
2019-05-21  0:30   ` Kate Stewart
2019-05-20 17:08 ` [patch 12/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 37 Thomas Gleixner
2019-05-20 22:37   ` Allison Randal
2019-05-21  0:33   ` Kate Stewart
2019-05-20 17:08 ` [patch 13/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 38 Thomas Gleixner
2019-05-20 22:39   ` Allison Randal
2019-05-21  0:34   ` Kate Stewart
2019-05-20 17:08 ` [patch 14/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 39 Thomas Gleixner
2019-05-20 22:39   ` Allison Randal
2019-05-21  0:39   ` Kate Stewart
2019-05-20 17:08 ` [patch 15/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 40 Thomas Gleixner
2019-05-20 22:40   ` Allison Randal
2019-05-21  0:38   ` Kate Stewart
2019-05-21 14:22   ` Michael Ellerman
2019-05-20 17:08 ` [patch 16/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 41 Thomas Gleixner
2019-05-20 22:41   ` Allison Randal
2019-05-21  0:42   ` Kate Stewart
2019-05-21  7:25     ` Thomas Gleixner
2019-05-20 17:08 ` [patch 17/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 42 Thomas Gleixner
2019-05-20 22:42   ` Allison Randal
2019-05-21  0:42   ` Kate Stewart
2019-05-20 17:08 ` [patch 18/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 43 Thomas Gleixner
2019-05-20 22:54   ` Allison Randal
2019-05-21  0:45     ` Kate Stewart
2019-05-21  7:29     ` Thomas Gleixner
2019-05-22 15:21       ` J Lovejoy
2019-05-22 16:28         ` Thomas Gleixner
2019-05-22 16:39           ` J Lovejoy
2019-05-22 22:16           ` Richard Fontana [this message]
2019-05-20 17:08 ` [patch 19/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 44 Thomas Gleixner
2019-05-20 22:56   ` Allison Randal
2019-05-21  0:46   ` Kate Stewart
2019-05-20 17:08 ` [patch 20/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 45 Thomas Gleixner
2019-05-20 22:58   ` Allison Randal
2019-05-21  0:47   ` Kate Stewart
2019-05-20 17:08 ` [patch 21/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 46 Thomas Gleixner
2019-05-20 22:59   ` Allison Randal
2019-05-21  0:47   ` Kate Stewart
2019-05-20 17:08 ` [patch 22/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 47 Thomas Gleixner
2019-05-20 23:00   ` Allison Randal
2019-05-21  0:48   ` Kate Stewart
2019-05-20 17:08 ` [patch 23/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 48 Thomas Gleixner
2019-05-20 23:02   ` Allison Randal
2019-05-21  0:49   ` Kate Stewart
2019-05-20 17:08 ` [patch 24/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 49 Thomas Gleixner
2019-05-20 23:04   ` Allison Randal
2019-05-21  0:49   ` Kate Stewart
2019-05-20 17:08 ` [patch 25/25] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 50 Thomas Gleixner
2019-05-20 23:05   ` Allison Randal
2019-05-21  0:50   ` Kate Stewart

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAC1cPGxcEcpAeDbssiC8EGipSJBg=4kda-rUJm7CDui_LyMyLw@mail.gmail.com' \
    --to=rfontana@redhat.com \
    --cc=allison@lohutok.net \
    --cc=linux-spdx@vger.kernel.org \
    --cc=opensource@jilayne.com \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Linux-SPDX Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-spdx/0 linux-spdx/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-spdx linux-spdx/ https://lore.kernel.org/linux-spdx \
		linux-spdx@vger.kernel.org
	public-inbox-index linux-spdx

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-spdx


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git