I am using Ubuntu 14.04 and I have enabled automatic updates but every time my Firefox and Chrome are updated they are downloaded from scratch, so every time my update size is more or near 100MBs.

Why doesn't Ubuntu download only the update patch for these two browsers? I want it to download only the patch files, not the complete browsers on each update. I think Ubuntu does this for all software.


So does the package management. lt is not intended that individual patches are downloaded. That would mean that the software must be recompiled on your system. For this Ubuntu is the wrong distribution. You should try in this case Gentoo.


I'd strongly disagree that Gentoo is the fix for this. Gentoo might download a source patch but you'd still need to keep the full source, all the build dependencies and then recompile the whole thing. Wholly more expensive than just downloading a binary archive of the whole thing (in most cases).

Anyway, what you're asking for has been mooted before as delta-packages. Rather than downloading a whole package, you download successive upgrades and apply them.

While that might sound nice, it has serious practical problems:

  • Calculating deltas on the build servers is really time and memory -expensive. These are servers that are already overworked.
  • All the changes also have to be stored and listed and mirrored. That's a lot of extra disk space (the Debian version of this ran out of disk space two years ago).
  • To fully upgrade from an initial release can mean downloading data that has been repeatedly patched multiple times. This is bad for both mirror and user.
  • Updates take longer to apply because you're unpacking and patching from so many files. Far more expensive on the CPU than just replacing some files.

The first three points above alone spell out a situation that somebody creating and hosting packages would want to stay well away from. Remember that they're also doing this all for free. Their priorities aren't neccessarily yours. If you want to run your own mirror, I'm sure it would be possible to calculate delta-debs for your own machines.

And the current system has worked around this slightly. In an application (like a game) where large assets are unlikely to change frequently, the assets and application are split into package (or package-bin) and package-data so the first can get its upgrades without hammering the server with high-bandwidth downloads of data the user already has.

In short, the current system of downloading a whole replacement is objectively better for most people involved for most scenarios.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.