Localization (thus non-vital) files of packages can take up to ~2/3 of the delivered bits #20
Labels
No labels
Discussion
Easy
Focus Area: Content Strategy
Focus Area: Ecosystems Exploration
Focus Area: Prototyping Tools
Focus Area: Use Case Analysis
Idea
Meeting
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: Docs/minimization#20
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Hello,
haven't seen this topic in a cursory search, hence raising it here
demonstrated with one particularly frequent package
findutils
:(note: regarding
1808667
vs.1808716
discrepancy;it must be accounted to
.build-id
, it seems, EDIT: filed a bug)We can easily see that, barring
find
andxargs
split, must-have portionis: 328944 + 80072 + 25 + 24 = 409065, or ~23% of the whole package.
Rest is:
documentation (perhaps except for
%license
droppable,see also
rpm --nodocs
):1375+83731+4539+1539+2860+24251+89616+1878+2478+35149+21948+5466
= 274830, or ~15%
localization:
the rest, i.e. 1124821, or ~62%
At least for quick containers, mockbuilds, etc. only about 1/4 of the packaged
bits are useful. Would there be a room for improvement regarding minimization?
Something like
rpm --locale-filter=CMD
, perhaps?Btw. this "content demultiplexing" is what I had in mind that would
nicely combine with cleverly chunked RPMs:
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/EQ2UDRE6NA7IUC7IA7VZMEHIUJQ7H2K6/
You can already set the %_install_langs rpm macro to only install the relevant files. This is common on container builds. Indeed, this is not save the download bandwidth. Only the disk space.
Oh, thanks, so that's something thought of, perfect!
Just the interface towards users is rather buried.
This idea, beside eclipsed with
%_install_langs
as mentioned, is mostly surpassedwith existing
--excludepath
that I missed originally (the idea was to "functionize"which language identifiers to allow, where
CMD
could be something like:). Problem with exclusion approach is that it's harder to work with than with the
list of the desired languanges -- but making
%_install_langs
trigger somethinglike the above command would be doable, nonetheless.
Note: the command would need more hardenings for sure.
Sidenote,
.build-id
links will be explicitly avoidable at install time with--excludeartifacts option to
rpm
.