Rework COPYING and COPYING.LIB files
Open, Needs TriagePublic

Description

Clarify if COPYING files are still needed. If they are not needed, update frameworks.

See discussion in:

cordlandwehr moved this task from Needs Input to In Progress on the KF6 board.Aug 11 2020, 6:11 PM

Traditionally, our repositories have license text files in their main folder. For GPL licenses this originates from the GNU FAQ (https://www.gnu.org/licenses/gpl-howto.html). So, today often are files called COPYING, COPYING.BSD, COPYING.LGPL...
With changing the copyright statements to following the reuse.software specification, additionally a new folder LICENSES/ was created in every repository. That folder contains a file <SPDX-License-Identifier>.txt per used license in the repository.
Thirdly, Gitlab suggests to add a file called LICENSE at the main root (which we can fully ignore, if we want).

In the following weeks, I want to continue with the license/copyright sweeps in KDE frameworks and my questions are:

  1. Do we want to keep the COPYING.* files with the canonical license texts? (I do not think so)
  2. Do we want to add a generic text in every repository explaining how to deal with licenses or do we expect everyone to understand the SPDX markers and were to find the license texts?
  3. Related to T12094, I would like to have some machine readable *outbound* license statements. But that is probably orthogonal to this question. Is it?

For completeness, please note that there is a discussion in the REUSE project about how to deal with it: https://github.com/fsfe/reuse-docs/issues/56 (outcome looks like: remove COPYING files, do not encourage to add a generic LICENSE file)

krop added a subscriber: krop.EditedAug 12 2020, 12:26 PM

Thirdly, Gitlab suggests to add a file called LICENSE at the main root (which we can fully ignore, if we want).

And that shouldn't be a criteria, many repositories have more than one license. This is only cosmetic

Do we want to keep the COPYING.* files with the canonical license texts? (I do not think so)

I remove them in PIM repositories, keeping copies is not useful.

Well, if there is no opposition, then we do not have to stall this discussion :)
Just a gentle ping for the usual licensing suspects (@riddel @adridg @kossebau ) if anybody wants to raise their voice, otherwise I will start cleaning the COPYING files up in frameworks next week

It might be nice to replace COPYING -- let's not create a new file LICENSE, that's confusing in the face of the REUSE spec -- with a little "This repository uses SPDX identifiers and follows the REUSE specification. You can find the applicable licenses in the LICENSES/ subdirectory. If you have the REUSE tool installed, make show-outbound-licenses and make show-source-licenses will tell you about this respository."

But in general: clear it up, remove multiple sources of information, remove files when possible.

ognarb added a subscriber: ognarb.Aug 15 2020, 10:59 AM

It might be nice to replace COPYING -- let's not create a new file LICENSE, that's confusing in the face of the REUSE spec -- with a little "This repository uses SPDX identifiers and follows the REUSE specification. You can find the applicable licenses in the LICENSES/ subdirectory. If you have the REUSE tool installed, make show-outbound-licenses and make show-source-licenses will tell you about this respository."

But in general: clear it up, remove multiple sources of information, remove files when possible.

Actually I think that such a short text belongs to the README.md (along with a link to our contributing guide and if possible a screenshot of the lib/app in action).

And having a COPYING and a LiCENSES subdirectory increated a lot the probability of outdated/mismatched content.

kossebau added a comment.EditedAug 15 2020, 1:43 PM

For Okteta, when I converted to SPDX-based licensing info, I simply removed the COPYING* files, except for COPYING.DOC as used for the manual docs. And released 0.26.4 with that, no distribution complained so far, so any automatic license checker they have might be fine with this (cmp. https://repology.org/project/okteta/packages).

IMHO the subdir named "LICENSES" should be unmissable for anyone interested in the licenses. Even more when it becomes more of a standard by everyone using it, at least in KDE circles.

Sorry, no brain time left otherwise currently, hopefully more in some weeks. Yet allow me to point to more things that might need work:

Two questions that arose with me while thinking about a reply:
a) is there some task about contact with gitlab authors so they make gitlab support SPDX design of license documents in the project license support features?

b) what are the plans with regards to manuals? Does SPDX also cover those and do you have some plan here? licensedigger so far just looked at code sources, not documentation sources.
E.g. Okteta's info.docbook has this snippet when it comes to license info:

<copyright>
<year>2008, 2010, 2011</year>
<holder>&Friedrich.Kossebau; and &Alex.Richardson;</holder>
</copyright>
<legalnotice>&FDLNotice;</legalnotice>

Anything that could be done here to follow the SPDX patterns, and thus also make it sensible to move the COPYING.DOC file into the LICENSES folder with some respective SPDX-conforming license copy?

A grep by find frameworks/ -name "*.docbook" gives some hits (most sources for man pages), so this also affects KF modules. Though a grep for "COPYING.DOC" yields nothing, also find frameworks/ -name "*.docbook" -exec grep "<copyright" {} -H \; and find frameworks/ -name "*.docbook" -exec grep "<legalnotice" {} -H \; get hits only in kdoctools resources. Forgot to complete: Which also makes me wonder what license those docbooks are under and what needs to be done there.

krop added a comment.Aug 15 2020, 1:47 PM

For PIM repositories, I removed the COPYING.DOC files and replaced them with GFDL-1.2-or-later.txt from https://github.com/spdx/license-list-data/tree/master/text.

Because of the feedback, merge requests are created for all SPDX based framework repositories. Moreover, I added this info to a new FAQ section in: the https://community.kde.org/Guidelines_and_HOWTOs/Licensing

cordlandwehr moved this task from In Progress to Done on the KF6 board.Aug 17 2020, 8:01 AM

Thanks for taking care of all this!
;=)