ssut / payload-dumper-go

an android OTA payload dumper written in Go
Apache License 2.0
2.36k stars 201 forks source link

Incremental OTA support #44

Open anonymix007 opened 9 months ago

anonymix007 commented 9 months ago

Closes #19

This is an initial poorly tested implementation supporting some InstallOperation types for delta payloads: BSDIFF, SOURCE_BSDIFF, BROTLI_BSDIFF and PUFFDIFF. Others (ZUCCHINI, LZ4DIFF_BSDIFF and LZ4DIFF_PUFFDIFF) could be implemented similarly. This is probably broken for many payloads, so any help is welcome.

Usage:

./payload-dumper-go -d extracted_v340 -o extracted_v346 payload_346.bin

extracted_v340 directory contains full images, output extracted_v346 will contain images after applying incremental payload_346.bin

snowwolf725 commented 5 months ago

Screenshot_2024-06-13-17-49-44-44_84d3000e3f4017145260f7618db1d683 I tried to compile but found that it failed due to the lack of relevant libraries.

anonymix007 commented 5 months ago

@snowwolf725 There are compilation instructions in the second commit:

Compilation

Linux and OSX

git submodule update --init --recursive
go generate chromeos_update_engine/update_engine.go 
go build .