Red Hat Bugzilla – Bug 966143
Many duplicate files lead to unreasonable increase of size of a publican installation, Publican should share common files
Last modified: 2013-08-09 00:47:12 EDT
With the official Debian package, an installation of publican 2.8 weighs 6 Mb. An installation of publican 3.1 weighs 50 Mb.
It looks like most of the size increase is due to duplicated files in various translations like /usr/share/publican/Common_Content/common-db5/<lang>/images/title_logo.png
This has been initially reported to Debian in http://bugs.debian.org/708705
http://dedup.debian.net/compare/publican/publican provides a list of files which are duplicated once or more in the binary package.
Some of them are attributable to (bad) choices of me (like installing all versions of the publican user's guide) but many of them concern files in Common_Content which are duplicated dozens of times.
It would be nice if Publican could avoid this duplication, for example by supporting Common_Content/common/default/* that would be copied first and then overwritten by Commont_Content/common/<lang>/*. That way we can put the basic files in that directory and avoid the duplication between all translations.
dev note: there is no need for the content in /usr/share to be duplicated per language. The build process already copies the source language content and then copies the translation language content over the top.
This is just a flat out bug.
(In reply to Jeff Fearn from comment #2)
> dev note: there is no need for the content in /usr/share to be duplicated
> per language. The build process already copies the source language content
> and then copies the translation language content over the top.
> This is just a flat out bug.
Actually I am wrong. I was thinking this was in /usr/share/publican but it's in /usr/share/doc/publican.
/usr/share/doc/publican contains static HTML. You have no guarantee at this point that any other language, or any other output format, is installed, so you have to assume you need all the content for each format in each language.
You will note that /usr/share/publican/CommonContent does not have this duplication, because that is source and the logic in #1 is used during the build phase.
This would be a very intrusive change to make on the normal output and would probably make more sense to do as a specific output format for this use case.
No, no, you were right. /usr/share/publican contains most of the problematic duplication, the duplication in /usr/share/doc/ is expected, the documentation must be stand-alone.
dpkg -L publican | sed -ne 's|/usr/share/publican/Common_Content/.*/||p' | sort | uniq -c | sort -nr|head
ah then it's a bug in the brand publishing code. Not so hard to fix.
HSS-QE has reviewed and declined this request. QE for this bug will be handled by IED.
Stopped brand install from duplicating css, images, & scripts sources.
b85fec3..4bd6cc7 HEAD -> devel
$ rpm -qi publican | grep Size
Size : 3093902
Publican now seems to be vastly reduced in size. Verified in publican-3.1.5-0.fc17.t62.noarch.
The fix for this bug has been shipped in publican 3.2.0