-
Notifications
You must be signed in to change notification settings - Fork 93
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Brainstorm ways to shrink RPM metadata #399
Comments
@Conan-Kudo I know you had strong feelings on this a few years ago, what are your thoughts? I know that lazy filelists downloading makes the subject less relevant for Fedora 40+, but if there's an obvious win here we should still take it. |
According to fedora packaging guidlines, files outside of /usr/bin and /etc should not be used as requirements anyway, and files from /usr/bin and /etc are already part of the primary metadata. I'd be really happy if depsolving did not need filelists. Never. Actually, there are currently very few packages (in Fedora, not sure how the situation is in third party repos) that depends on such files, and lately issues have been filed for them to drop such dependencies. My only occasional use-case for filelists is "Which package provides this file?" (dnf provides /this/file/i/need), and for this reason I would prefer filelists.xml contained all the files. |
Third party repos tend to rely on file dependencies more because RPM distributions do not agree on packaging conventions. Fedora packaging guidelines should be ignored from an upstream RPM stack perspective (createrepo_c, dnf, etc.). |
Nobody has yet implemented lazy downloading. I've asked for this to be considered and provided a conceptual path to doing so, but nobody has responded to my comments about it. |
I've summarized information about implementation of lazy loading of filelists in rpm-software-management/dnf5#1053. |
#395 and other recent PRs have brought up the topic of shrinking RPM metadata once again.
I'm not thrilled with such approaches (I can live with it, but it's yak-shaving over just a few percent)
Therefore I'd like to have a discussion about potentially more meaningful approaches.
This ancient wiki page basically suggests specifically excluding icons and documentation entries e.g.
/usr/share/doc
,/usr/share/icons
from filelists.xml, given that they make up a huge proportion of the entries there, and in practice likely should never be used as dependencies.The data is compelling (but from 2010, so recomputing it would be useful)
This 6 year old discussion brings up the same point:
And makes a second suggestion also:
The text was updated successfully, but these errors were encountered: