LiveCD optimisations

John McCabe-Dansted gmatht at gmail.com
Tue Nov 2 05:04:09 GMT 2010


Hi Martin, I intended to send the following to lyx-devel, but my dog
ate it. Louis has mentioned AdvanceCOMP, but I thought you might find
the summary below useful. I think that the figures may be out by about
30%, possibly do to squashfs doing some form of intra-file
de-duplication, but I hope it gives a good feel as to where space can
be saved.

On Thu, Oct 14, 2010 at 5:45 PM, Scott Ritchie <scott at open-vote.org> wrote:
> On 10/03/2010 11:50 PM, Martin Pitt wrote:
>>  * Optimize images in packages, as proposed by Louis Simard in May.
>>
> We could do this in a very simple and automated fashion by just running
> pngcrush on every png image.  It could even be a part of the build
> daemon or built into debhelper.

Note that running advdef -z4 (after optipng) can further compress png
images, saving another 3MB. Advdef could also compress the existing gz
files by about 5MB (less if there are less gz files because we remove
man pages etc.). Optimizing svg files with Scour.py could save a
further 7MB on the LiveCD, but we should not run Scour on cards as
card games make use of non-visual tags in those SVG files [1]. Other
XML files can be optimized, but applications expect a particular
format; for a list of XML files safe to optimize see [2].

If we want to go crazy with lossless recompression we could also run
jpegrescan on jpegs saving 0.5MB, and replace gz files with lzma
saving up to 10MB. Optimizing HTML files with webpack and html::clean
could save 100k on the LiveCD (2MB when uncompressed) but doing this
right is hard, and probably not worth it.

By comparison, the changelogs take about 30MB, and manpages take about
15MB. If we keep the changelogs, they would be a good candidate for
lzma recompression since they shrink by 4.4MB.

For more information, see the thread:
  More LiveCD space optimizations
  http://osdir.com/ml/ubuntu-devel-discuss/2010-10/msg00000.html

[1] http://www.mail-archive.com/ubuntu-devel-discuss@lists.ubuntu.com/msg11350.html
[2] http://www.mail-archive.com/ubuntu-devel-discuss@lists.ubuntu.com/msg11410.html

-- 
John C. McCabe-Dansted



More information about the Ubuntu-devel-discuss mailing list