Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 236532 - games-strategy/wesnoth: use xdelta provided by upstream to save ~150MB on minor version upgrades
Summary: games-strategy/wesnoth: use xdelta provided by upstream to save ~150MB on min...
Status: RESOLVED DUPLICATE of bug 105379
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Gentoo Games
URL: http://www.wesnoth.org/wiki/Download_...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-09-03 05:04 UTC by Zeev Tarantov
Modified: 2008-09-03 20:08 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Zeev Tarantov 2008-09-03 05:04:44 UTC
The Wesnoth developers provide xdelta files to upgrade between the minor versions of the tarballs. I have successfully used them every time.
I use xdelta-1.1.4 (http://code.google.com/p/xdelta/) to create the .tar file for the next version from the tar file of the current version. Then I bzip2 the tar file and the resulting .tar.bz2 file passes the checksumming/hash test portage performs, so I know it's the same as downloading the whole file.
A minor problem of xdelta-1.1.4 is that I need to feed it the uncompressed source tar (it can write to pipe for the compression of the target, but can't read the source from pipe) so the operation takes some disk space. Still faster than downloading!
I propose to make it possible for the ebuild to see that I have the previous version's tarball and automatically enable this functionality. Obviously this would depend on xdelta being installed. If I knew how, I would have written a patch, but I'm a newb. Can't be that hard though!

Reproducible: Always

Steps to Reproduce:
1. install wesnoth-1.4.4
2. upgrade to wesnoth-1.4.5


Actual Results:  
see it download 150MB.

Expected Results:  
portage notices I have old tarball, downloads 2MB, creates and tests new tarballs, proceeds to use it regularly.
Comment 1 Gilles Dartiguelongue (RETIRED) gentoo-dev 2008-09-03 06:46:38 UTC
this is probably some sort of portage feature request because I frankly don't see a simple way to do this at the ebuild level.

Maybe specifying the same base tarball in X ebuilds and then adding relevant deltas to each new revision, but how many deltas to keep ?
Comment 2 Zeev Tarantov 2008-09-03 13:52:35 UTC
I didn't even think about layering the deltas. Yes, if I have wesnoth-1.4.0 I can patch it to 1.4.5 by applying the deltas in order. I am not sure if it will save me time, but on dialup it surely will be faster than downloading the full 1.4.5. Also, some people pay for their bandwidth. They host deltas on sourceforge that can upgrade between major versions. What do you mean by "but how many deltas to keep"?

I think I know how to make an alternate ebuild for wesnoth-1.4.5 that depends on the tarball for 1.4.4 and the xdelta. But how can I teach portage about choosing intelligently between the two options? Is there really no way?
Comment 3 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2008-09-03 14:39:24 UTC
I see your point but it is up to the maintainer at this point. Unless someone provides a patch'ed ebuild, etc.
Comment 4 Mr. Bones. (RETIRED) gentoo-dev 2008-09-03 14:46:43 UTC

*** This bug has been marked as a duplicate of bug 105379 ***
Comment 5 Azamat H. Hackimov 2008-09-03 20:08:38 UTC
Try to use deltup - it's better solution than xdelta