Hacker News new | past | comments | ask | show | jobs | submit login

I'm the author of the article in question. I didn't know about zsync! Thanks, I'll link to it from the footnote.

Flipping quickly through the zsync docs, it looks very well done. I'm not sure if the way they adapted rsync is better or worse than the bup/bupdate way of doing it; it looks like they take more time to do the initial encoding of the index file, but that's not very important since you only do it once, especially if it saves bytes.

They also have a (complex and potentially error-prone) way to look into .gz files and sync them extremely efficiently even without gzip --rsyncable. That's really cool, but risky, and of course only works with gzip, not other compressors. Not sure if that's a good idea or a bad idea, but nobody forces you to use it.

tl;dr zsync has actual documentation and an actual release, so you should probably use it instead of bupdate.

(People should feel free to ask me any questions about redo, bupdate, the redo container builder, etc in the comments here if you like.)




I'm always interested in tools that can download only changed chunks, or repair damaged files without having to re-download the whole lot. Habit, after being on extremely slow connections for about 15 years.

See also:

* http://atterer.org/jigdo

* https://multipar.eu/

* I've abused webseed support in torrent clients to do similar things - a downloader based on the torrent chunk hashing format would be quite interesting

* rsync can do it, maybe

* http://xdelta.org/ - have used this to patch Raspberry Pi images


> They also have a (complex and potentially error-prone) way to look into .gz files and sync them extremely efficiently even without gzip --rsyncable.

FWIW, the last release of `zsync` predates `gzip --rsyncable` by about six years¹.

> People should feel free to ask me any questions

"Thanks" isn't a question, but thanks for creating `redo` and the great articles. I always seem to come out of them having learnt something new, and often end up rabbit holed in the interesting side topics that are raised too.

1. http://git.savannah.gnu.org/cgit/gzip.git/tree/NEWS#n74


You're welcome :)

The zsync docs clearly talk about "gzip --rsync", which I guess must have been an earlier version of "gzip --rsyncable".


Balena seems to have a developed a docker-native solution; not sure how it's implemented though.

https://www.balena.io/docs/learn/deploy/delta/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: