[ubuntu-in] Experimental debdelta repository

Onkar Shinde onkarshinde at gmail.com
Tue Sep 15 12:59:22 BST 2009


Hi all,

I have setup a experimental debdelta repository for packages in
jaunty-security on our website hosting ubuntu-in.info. I will try to
explain what this means and how can users benefit.

What is debdelta:
Debdelta is a program that generates delta (difference) between two
.deb files. This delta can be used to generate new version of a
package if you already have old version with you. Actual generation of
delta is done with help of utilities such as xdelta, bsdiff.

What are benefits:
Some of the packages in Ubuntu get regular security/bugfixes updates
ex. firefox. Every time a security/bugfix is released user has to
re-download the .deb files corresponding to latest version. This
causes lot of download and considering that most users have limited
bandwidth this is one of the main reason why users are reluctant to
install updates.
With help of debdelta, if you have installed update for a package
(let's say firefox) and if the .deb file is present on the machine (by
default in /var/cache/apt/archive), next time a update is released for
same package user will just need to download the delta and new package
can be created locally. This usually reduces the download required by
50%-80%.


How to use it.
As of now if you wish to use the debdelta repository you will have to
follow these steps.
1. Install debdelta package using your favorite package manager.
2. Edit /etc/debdelta/sources.conf file. Set value for 'Origin' and
'Label' to Ubuntu. Change delta_uri to http://ubuntu-in.info/ubuntu/
A sample file is available at - http://paste.ubuntu.com/271384/
3. For downloading the upgrades run commands in following sequence.
sudo apt-get update
sudo apt-get debdelta-upgrade
sudo apt-get dist-upgrade


Limitations
1. Currently the repository contains debdelta only for packages in
jaunty-security from 'main' component for i386. This is because of
limited disk space.
2. Since debdelta is created only when more then one versions of a
package are available in the repository, our repository contains very
few of them. As of today it contains debdelta corresponding to latest
update of openssl package. More debdeltas will get accumulated in the
repository as more security updates are released.


The road ahead:
If use of debdeltas proves beneficial we can suggest the same to
admins at IITM for the semi-official Ubuntu repository. This will save
lot of bandwidth for everyone in the long run.


Disclaimer:
The usual disclaimer applies. Use at your own risk.


Onkar
-- 
Passion - Some people climb mountains - others write Free software.
Don't ask why - the reason is the same.



More information about the ubuntu-in mailing list