[REUSE] Introduce folder.license file
Max Mehl
max.mehl at fsfe.org
Thu Mar 5 11:35:08 UTC 2020
With the current specification it's possible to create an extra file
containing the copyright and licensing information for binary files or
those not supporting comment headers. So for instance, for the file
`cat.jpg`, you can create the text file `cat.jpg.license` which contains
the SPDX-License-Identifier and SPDX-FileCopyrightText (or the
traditional Copyright ©) lines.
That works well for single files, but how to deal with a directory
containing hundreds of such files, e.g. icons or JSON files? Currently,
you would either have to create a .license file for each of them, or
bulk-license this in the REUSE dep5 file [^1].
This is a bit clunky. Therefore we suggest to introduce the same
mechanism for folders that we already have for binary files:
folder.license
Example: the directory `img/` contains a lot of non-editable files. To
add copyright and licensing information for every single of these files,
one could create the text file `img.license` on the same level as the
directory itself. This file would then contain the required information.
Pros:
- Easier way to bulk-license directories
- Information is closer to the actual files and not far away in
.reuse/dep5.
- It's feels intuitive to support the same mechanism for directories
as for files.
Cons:
- Could be abused by lazy people who then would only create one
.license file for a complex hierarchy, e.g. by doing that for the
`src/` folder. This would conflict with REUSE's goal to have the
information as close to the files as possible (ideally as comment
header).
- Potential "option overload", since this would be the fourth option
to declary copyright and licensing information next to comment
header, file.license, and dep5 file.
Options:
- Soft-deprecate the dep5 file over time if we introduced the
folder.license scheme if we consider dep5 to be used mainly for
bulk-licensing directories. However, dep5 also supports wildcards
like `*.png`.
- Like the dep5 soft-deprecation above, but combined with the
introduction of a better format. DEP5 has its limitations, has a
different syntax in some places, and REUSE also overrides some parts
of the DEP5 spec. So something like JSON or YAML could be more
appropriate.
Please share your opinion on this suggestion in reply to this mail.
Thank you!
Best,
Max
[^1]: https://reuse.software/faq/#bulk-license
--
Max Mehl - Programme Manager - Free Software Foundation Europe
Contact and information: https://fsfe.org/about/mehl | @mxmehl
Become a supporter of software freedom: https://fsfe.org/join
More information about the REUSE
mailing list