More LiveCD space optimizations
Matthias Klose
doko at ubuntu.com
Fri Oct 8 09:54:50 UTC 2010
[ compression related discussion removed ]
So maybe we can save some MB with better compression, but we can save more by
not including files at all. Of course this requires inspection of the packages
included on the liveCD. In the past we did identify some issues and did add
some diagnostics to the live CD build logs [1]. Of course you can't run
anything and lengthen the live CD build, but some additional diagnostics maybe
could be run.
In the past we did see wasted space:
- Packages which should not be on the CD. Some things should not be
on the CD at all. Looking at the current live CD log, a typical
candidate for this would be tcl8.4. Why is it there, and how can
it be avoided?
- Large doc directories. If a package becomes too large, maybe it is
worth to split a package into foo and foo-doc, and not ship foo-doc
on the CD (yes there are other ideas not to ship doc dirs at all).
See python-couchdb for an example. The API documentation does not
need to be on the live CD. The same may be true for other python
packages.
- Localized help images. You cannot just remove the images from an
application's help, but in the past we did ship all these localized
help images on the CD. CC'ing Martin, don't know the current status.
However it looks like there are some xml files which maybe should
be part of the language packs.
- Duplicate files. While this is not that important on the live CD,
it's important for the alternate CDs. Looking at the list of
duplicate files, I see a lot of potential in:
- all the mono packages and libraries
- broken build systems shipping doc files in every binary package.
see the upstream changelog.gz files (e.g. gnome and OOo).
- firefox and xulrunner shipping duplicate .js files
- package specific stuff (libc6-dev having some identical libs
in /usr/lib/xen).
- you may see and find more if you are familiar with a particular package.
There is potential in saving space with better compression, but IMO you can even
save more with closely looking what goes on the CD (where we currently don't do
a good job). The good thing is that both approaches don't exclude each other.
Matthias
[1]
http://people.canonical.com/~ubuntu-archive/livefs-build-logs/maverick/ubuntu/latest/livecd-20101007-i386.out
More information about the Ubuntu-devel-discuss
mailing list