We have moved to a new Sailfish OS Forum. Please start new discussions there.
16

Suggestion: Use delta-RPM (presto) for bandwidth efficient updates

asked 2013-12-25 16:27:12 +0300

MartinK gravatar image

updated 2013-12-27 19:57:05 +0300

eric gravatar image

As Jolla is a mobile device, available Internet bandwidth might be sometimes severely limited (2G, data cap reached, etc.), preventing the download of bigger updates.

What is delta-RPM/presto ?

In short, it makes it possible to download only the the diff from the last package version and creating the updated package on-device by applying the diff on the old package.

Advantages

  • should save a lot of bandwidth
  • makes updates over mobile data connection more feasible

Potential disadvantages

  • packages will need to be stored, so that the diff can be applied to them
  • some processing needs to be done to apply the diff

Is this already used elsewhere?

The Fedora Linux distribution has been using delta-RPM/Presto by default since version 11, so for about 4-5 years already.

edit retag flag offensive close delete

3 Answers

Sort by » oldest newest most voted
2

answered 2013-12-25 17:37:09 +0300

wstephenson gravatar image

/etc/zypp/zypp.conf leaves the default setting of

download.use_deltarpm = true

so it's just a matter of the repos providing deltarpms.

It would be interesting to see which option sucks most battery.

edit flag offensive delete publish link more
1

answered 2013-12-25 17:26:08 +0300

pcfe gravatar image

updated 2014-04-27 15:35:52 +0300

UI elements to add: have a toggle (I, personally, would expect to find this under Preferences / System Settings / About product in the pulley menu) for the user to choose between saving bandwidth and saving CPU cycles (ideally after testing to see just how much assembling the 10 largest packages would cost)

Clarification: When roaming I would set it to save bandwidth, when on a WLAN or with enough mobile data left for the month I would opt for speed over bandwidth. Hence the request for a toggle.

edit flag offensive delete publish link more
1

answered 2014-02-28 18:44:22 +0300

Xeno_PL gravatar image

Actually I think it can be quite counterproductive. Even on my i7 equipped lappy, downloading full packages faster than download delta and rebuild RPM. The only good reason would be saving costs when updates have to be downloaded over mobile data.

edit flag offensive delete publish link more

Comments

It’s probably less I/O load for the servers, once the deltas are computed. That would be another reason.

sami.boukortt ( 2014-03-01 00:23:17 +0300 )edit

@sami.boukortt but not less io for the jolla device.. the update process would actually take much longer with delta rpm'es.

tigeli ( 2014-04-28 10:59:26 +0300 )edit

Another possibility would be to use OSTree - it works with versioned filesystem trees and supports differential tree updates, atomic tree switching and rollback. The project is a bit new, but pretty active.

MartinK ( 2014-04-28 20:49:51 +0300 )edit
Login/Signup to Answer

Question tools

Follow
2 followers

Stats

Asked: 2013-12-25 16:27:12 +0300

Seen: 576 times

Last updated: Apr 27 '14