[yocto] minimize size of SW update bundle

Marc Ferland marc.ferland at gmail.com
Tue Oct 17 07:11:59 PDT 2017


On Tue, Oct 17, 2017 at 9:12 AM, Robert Berger
<yocto.user.mailinglist at gmail.com> wrote:
> Hi,
>
> Imagine you have only a limited bandwidth to your devices available for SW
> update. So you would like to minimize what's uploaded (over the air) to your
> devices.
>
> How would you do this with yocto?
>
> [1] and [2] might be able to do incremental updates, but maybe there are
> more ideas out there.
>
> Like how would you get a diff between two release builds...
>

Some ideas:

- SquashFS with agressive compression settings can be quite
impressive. I was able to reduce my image size from 650MB
(uncompressed) down to maybe 120MB. This was for a complete system
update though.
- The new zstd algo from facebook looks promising (haven't tried it
yet) and might be worth investigating, I think it is supported as a
squashfs decompressor.
- bsdiff can generate diffs from binary files (be carefull if diffing
compressed files, i.e.: gzip --rsyncable).
- there's also casync (never tried it): https://github.com/systemd/casync/

Enjoy!

Marc



More information about the yocto mailing list