#561734 Consider switching initrd compression from gz to xz

Package:
debian-installer
Source:
debian-installer
Description:
Debian Installer documentation
Submitter:
Date:
2013-08-30 10:33:10 UTC
Severity:
wishlist
#561734#5
Date:
2009-12-19 23:34:48 UTC
From:
To:
Image version:
http://people.debian.org/~joeyh/d-i/images/daily/netboot/mini.iso
Date: 2009/12/19

I did experiment to maximally decrease size of the installer and results
are:
file name - original size - optimized size - difference - %
initrd.gz - 6404938 B - 6127255 B - 277683 B - 95.6%
setup.exe - 280420 B - 250724 B - 29696 B - 89.4%
splash.png - 6329 B - 5687 B - 642 B - 89.9%
mini.iso - 9390080 B - 9082059 B - 308021 B - 96.7%
dpkg_1.15.5.4_i386.deb - 2166906 B - 2026557 B - 140349 B - 93.5%

How I did the optimization:
initrd.gz - recompressed with 7zip (7z a -tGZip -mx=9 initrd.gz initrd)
setup.exe - compressed with UPX (upx --lzma --ultra-brute setup.exe)
splash.png - optimized with advpng (advpng -z -4 splash.png)
mini.iso - only estimated size
dpkg_1.15.5.4_i386.deb - control.tar.gz and data.tar.gz recompressed
with 7zip

The initrd can be compressed even more with XZ. "xz -9 -e initrd"
produces file with size 4660512 B, i.e. 72.8% (and for mini.iso -
7615316 B, which is 81%).
The dpkg_1.15.5.4_i386.deb produced with XZ has size 1250000 B, which is
57.7%.


My personal opinions:
1. Using of 7zip is "compatible way" so it can be used with minimal
changes to build system and it can allow to place 5-10% more packages on
the installation CD.
2. XZ will be big step forward :-)

TonyMi

#561734#12
Date:
2012-12-27 00:50:51 UTC
From:
To:
Hi Tonda,

and sorry it took so long before getting back to you.

Tonda Míšek <miseka@naxo.net> (20/12/2009):
  29025138 initrd.gz

down to (using 7z with max compression), after a long while
compressing:
  27561651 initrd.gz

Using xz -1 we get to:
  22864564 initrd.xz

With default compression, even down to:
  20344888 initrd.xz

FWIW the initrd switch to xz happened already, but only for sparc. It
looks to me like this is too late to consider doing the same for other
architectures. Updating the title accordingly, hopefully we'll be able
to implement that during the jessie release cycle.

All udebs and most of CD#1 debs are now xz-compressed (at least the
data part of it); and that helped indeed.

Mraw,
KiBi.