toltec
toltec copied to clipboard
Decide whether we should install license files
Some of our packages currently install their license files to the reMarkable. We should decide whether this is needed and whether we actually want this, considering the low amount of space available on the device.
I believe some licenses require the license to be distributed with the application.
Indeed. I believe that is the case for GPL and MIT, for example. Also, Entware does not seem to provide license files with their packages.
https://www.debian.org/doc/debian-policy/ch-docs.html#s-copyrightfile
on debian, they require copyright files per package but they usually point to the licenses in /usr/share/common-licenses. i think we can auto generate these files
on debian, they require copyright files per package but they usually point to the licenses in /usr/share/common-licenses. i think we can auto generate these files
Do you know what happens if we encounter a new license that doesn't exist in that common location? Can a package conditionally add a license?
if it's non standard, the text of the license will be in the copyright file instead of the path of the license
https://www.debian.org/doc/debian-policy/ch-docs.html#s-copyrightfile
on debian, they require copyright files per package but they usually point to the licenses in /usr/share/common-licenses. i think we can auto generate these files
Arch also does this.
Indeed. I believe that is the case for GPL and MIT, for example. Also, Entware does not seem to provide license files with their packages.
That's very odd, someone should probably raise an issue with them as they are breaking the license by doing so. Unless they assume those licenses are already in the host's root filesystem?
For reference, the way Arch does it is by providing the licenses package, which is part of the base install, and installs licenses to /usr/share/licenses/common. It is then up to packagers to check whether the licenses used by the package are among those provided, in which case it can be referenced in the package's build script and metadata by a name such as "GPL3" or "Apache" or what have you. If the package uses a license which isn't part of the licenses package, then the license is listed as "custom:<name-of-package>" and any such license is installed to /usr/share/licenses/<name-of-package>. Note that this includes many BSD/ISC-style licenses, because they include non-generic text such as the name of the program and the author(s); fortunately, these also tend to be short.
Edit: fix angle bracketed text not showing up and fix a typo