HOWTO: Use xdelta
Xdelta provides the ability to generate deltas between a pair of files and later apply those deltas. It operates similar to the diff and patch commands. We use xdeltas during development, and when a release has minimal changes. This way we can distribute smaller files that can be used to patch an older iso to make it current.
To use xdelta you, of course, need to have it installed. If you do not, run this:
# emerge =dev-util/xdelta-1.1.4-r1
or
# equo install dev-util/xdelta-1.1.4-r1
NOTE: We do not want xdelta version 3, so be sure to emerge it like that.
To apply xdeltas do the following:
Split the ISO, using 2gb pieces, which should be 3 parts, with the last part being only a few hundred mb.
$ split -d -b 2000000000 SabayonLinux-x86-3.4a.iso old.0
You need to download the xdelta patches:
xdelta patch sl-x86-3.4a-to-3.4e-0.xdelta
xdelta patch sl-x86-3.4a-to-3.4e-1.xdelta
xdelta patch sl-x86-3.4a-to-3.4e-2.xdelta
to the same folder as the SabayonLinux-x86-3.4a.iso
This is how to apply the patches:
$ xdelta patch sl-x86-3.4a-to-3.4e-0.xdelta old.000 new.000 $ xdelta patch sl-x86-3.4a-to-3.4e-1.xdelta old.001 new.001 $ xdelta patch sl-x86-3.4a-to-3.4e-2.xdelta old.002 new.002
To rebuild the new iso, use 'cat' as follows:
$ cat new.00* > SabayonLinux-x86-3.4e.iso
Thats it! You may also want to download the md5sum to where you built the iso and run:
$ md5sum -c SabayonLinux-x86-3.4e.iso.md5
That will verify the iso was built properly.
After you have verified the iso is good, you should probably clean up the extra files, so that you arent wasting ~8gb of space:
$ rm new.* && rm old.*