http://bugzilla.suse.com/show_bug.cgi?id=1082318 http://bugzilla.suse.com/show_bug.cgi?id=1082318#c201 --- Comment #201 from Fabian Vogt <fvogt@suse.com> --- (In reply to Kristoffer Gronlund from comment #200)
This is the document I read:
https://fedoraproject.org/wiki/Changes/ Use_license_macro_in_RPMs_for_packages_in_Cloud_Image
Use new %license macro to separate license files from documentation, so the latter can be excluded from container images without stripping license information which must be included.
I may be mistaken in saying that this was the original intention of the %license directive. In that case, instead of just the %doc directive being repurposed for reducing the size of cloud images, the same applies to %license. Though I find the license violation argument to smell of post-hoc reasoning after the idea of using nodocs to reduce the installation size was raised, of course I am not a lawyer. Unfortunately the pull request link in the commit which introduces the change no longer links correctly, so it's hard to follow the chain all the way back:
https://github.com/rpm-software-management/rpm/commit/ 55bf9abee25c7d101dce15898ebefcbe77a7d655
%license also allows for stuff like "rpm -qL aaa_base".(In reply to Kristoffer Gronlund from comment #200)
(In reply to Fabian Vogt from comment #199)
(In reply to Kristoffer Gronlund from comment #198)
(In reply to Fabian Vogt from comment #197)
(In reply to Kristoffer Gronlund from comment #196)
Is it too late to object to this change, which is completely misguided?
Instead of breaking every single package by changing the meaning of "excludedocs" to mean "let me strip these files from the package", how about adding support for tagging files in an rpm as strippable or optional, so that not only documentation can be dropped when space is at a premium, but any other files that may not be essential for the functionality?
That's what optional subpackages are for though.
That way, every single package would still be OK even without any markup, and packages can be updated to mark files as optional over time. Instead, this %license macro now means that all packages that have used %doc to tag the LICENSE file somehow violate the GPL.
That excludedocs means that files tagged as %doc are not installed is absolutely set in stone and will not change.
I have no problem whatsoever with excludedocs meaning that files tagged as %doc are not installed.
I have a problem with excludedocs being used in a way that breaks the existing intention and usage of the %doc tag in spec files.
That's not the case. Marking license files as %doc is what broke intention here.
My point is that license files were being marked as %doc before the %license directive existed. It looks to me like this only became a concern when the idea of stripping docs from packages in order to make them smaller came up, and this is what I object to.
You object to the concept of excludedocs in general, right? That would be an entirely separate topic though, this bug is about migration to %license for license files.
Whoever thought that using excludedocs to strip packages for inclusion in containers was a good idea was evidently wrong about that, as it required the introduction of the %license tag, so that there are now two useless tags: Not only can %doc no longer be used to simply mark up documentation files as intended because it's being subverted to mean something it did not do before, but the only reason %license exists is as a hack to work around the previously mentioned hack.
That is not true. Please read up on what %license means and does.
This is the document I read:
https://fedoraproject.org/wiki/Changes/ Use_license_macro_in_RPMs_for_packages_in_Cloud_Image
Use new %license macro to separate license files from documentation, so the latter can be excluded from container images without stripping license information which must be included.
I may be mistaken in saying that this was the original intention of the %license directive. In that case, instead of just the %doc directive being repurposed
%doc is meant to allow for exactly that, skipping installation of documentation. That licenses were marked as %doc was just wrong. That's also what the commit you linked below states.
for reducing the size of cloud images, the same applies to %license. Though I find the license violation argument to smell of post-hoc reasoning after the idea of using nodocs to reduce the installation size was raised, of course I am not a lawyer. Unfortunately the pull request link in the commit which introduces the change no longer links correctly, so it's hard to follow the chain all the way back:
https://github.com/rpm-software-management/rpm/commit/ 55bf9abee25c7d101dce15898ebefcbe77a7d655
The biggest motivation for migration to %license is indeed to make sure that installations with excludedocs do not violate software licenses. That's not the only reason for %license though, it also allows to query the individual license files of packages and to ensure that every package ships its license file. Without %license that is not possible. -- You are receiving this mail because: You are on the CC list for the bug.