LemmyNet / lemmy

🐀 A link aggregator and forum for the fediverse
https://join-lemmy.org
GNU Affero General Public License v3.0
13.25k stars 880 forks source link

NGI - Updating licensing aspects according to REUSE #5130

Closed lnceballosz closed 2 weeks ago

lnceballosz commented 2 weeks ago

Hello,

I work for the Free Software Foundation Europe (FSFE), and we have been working with the NGI framework with partners like NLNet, helping projects with their licensing and copyright management. After a quick check on your repository, I would like to propose some updates regarding copyright and licensing information. (Please keep in mind that this is simply a guideline for your project to consider). REUSE is an FSFE-developed initiative intended to make licensing easier by establishing a single way to display all copyright and licensing information through comment headers on source files that can be human- and machine-readable.

REUSE Features:

Copyright and Licensing Information in each file

One of the main features of REUSE is that each file in the repository contains copyright and license information with the help of a comment header. To serve as a guideline and a practical example of how REUSE looks, I have added the header to some of the files in your repository e.g. crates/api but quite some other files still need such info. Since the specific copyright information was not clear I added it as "Lemmy Developers", but of course feel free to update this information to the more accurate one. Same for the license, I've added the SPDX header of the APGL-3.0-only license, if you prefer to use the -or-later you can also update such information.

Please, keep in mind that you can also change the year in the headers depending on your preference.

Please note that REUSE has also an option to add this legal information for binary and uncommentable files like json files or the logo, as well as for insignificant files and no copyrightable files such as .gitignore. An appropriate license for the documentation files in your repository is also encouraged.

LICENSES directory in the root of the project with the licenses used on the repository:

I included in this directory a file with the text of the APGL-3.0-only license. I did nothing with the existing LICENSE file in the root of the directory. It is up to you if you want to keep or delete it, however, this won't affect the REUSE specification. Please also keep in mind that if some pieces of your project use a different license, such license text should be added to theLICENSES/ directory and to the specific files.

Please feel free to check the REUSE documentation and the helper tool . If you are interested in making your project REUSE compliant, please add the legal information to the missing files. I am also available to support with the process.

Wide range of tools

In case you find REUSE useful, we offer other tools to help you continuously check and display compliance with the REUSE guidelines. For instance, you can automatically run reuse lint on every commit as a pre-commit hook for Git. And, it can be easily integrated into your existing CI/CD processes to continuously test your repository and its changes for REUSE compliance

I hope that helps and thank you very much for the amazing job!

I am happy to answer any questions that you might have and to help in the process of helping your project to become REUSE compliant!

Nutomic commented 2 weeks ago

What is the purpose of specifying the license in every single source file? As far as Im concerned it adds a lot of noise for no benefit, as the AGPL license applies whether or not it is explicitly mentioned. Even if someone takes a file from the repo, its still easy to tell that its from Lemmy as the string lemmy is usually mentioned in the imports.

dessalines commented 2 weeks ago

I think we'd prefer to just follow the standard of LICENSE at top level, applying to everything, without having to add and maintain all this boilerplate for every file.