[Cupt-devel] Bug#680010: Bug#680010: wanted: debdelta-only-upgrade option.

Eugene V. Lyubimkin jackyf at debian.org
Tue Jul 3 07:49:10 UTC 2012


[ CC'ing debdelta people for comments if any ]

Hi!

On 2012-07-02 18:07, A. Costa wrote:
> On my Debian 'unstable', with a 5K/sec modem for internet,
> sometimes an upgrade/update cycle lists many big files with 
> no currently available debdeltas, which means 400M or so to 
> download, a 23 hour upgrade (ideal case).
> 
> It would be useful if users with low bandwidth could 
> run an update/upgrade cycle that offered available 
> debdeltas only.  The CLI interface might look like:
> 
>     # update deltas
>     cupt debdelta-update
[...]
>     # upgrade with only deltas
>     cupt debdelta-only-upgrade
>     ...
> 
> Benefits include: In some cases it would make systems safer 
> faster, as would be the case when a needed upgrade has deltas 
> available, which would otherwise wait behind a 23 hour queue.
> (i.e. a 23 hour window of vulnerability.)  It needn't slow anything 
> down, since the user could always run 'debdelta-only-upgrade' first, 
> then opt for a standard upgrade.  Also saves user time, electricity,
> phone bandwidth, and server bandwidth.  
> 
> 
> I'm not sure if the debdelta infrastructure as of 7/2012 provides an 
> easy way to do this.  If not, something extra would need to be 
> added to debdelta to make it work.

This part would be very tricky to implement using the current
infrastructure.

A package manager uses repository index(es) to determine
which packages are available, then dependency resolver can do its work,
without knowing through what download method packages are actually
available, and debdelta built-in download plugin in Cupt is an
implementation detail of downloading .debs.

If one wants to implement scheduling an upgrade which uses only
debdeltas, Cupt absolutely has to know about what deltas are available
at early stages, and that means indexes, which are not present as of now [1].

In theory, Cupt would can use two types of debdelta indexes:

1) APT-like repository, with all metadata including dependencies, and with
adding new field like 'XB-Debdelta-From-Version: 1.2.3-1' for each
entry (and, of course, debdelta-specific value of 'Filepath:' tag).

Advantages: much easier to use in package manager than 2), does not need
to be synchronized with "main" repositories, more user visibility.

2) compact index in some debdelta-specific format outlining what deltas
are available (in dumbest variant: list of files)

Advantages: easier to implement on the server side.


All in all, I would like to see 1) implemented for the future, in that
case I can easily implement what you want. If 2) is chosen, then it will
need a considerable amount of work. If neither of two, this bug is
wontfix.

[1] http://debdelta.debian.net/html/x65.html#no_indexes

-- 
Eugene V. Lyubimkin aka JackYF, JID: jackyf.devel(maildog)gmail.com
C++ GNU/Linux developer, Debian Developer





More information about the Cupt-devel mailing list