futility: updater: support reading the archives using libarchive

The firmware archive files from buildbot are usually released in
tar+bzip2 format. Although the standard format of the archive
(chromeos-firmwareupdate) is ZIP, it is very helpful if the developers
can quickly run the update using the standard tar.bz2 archive files.

BUG=b:230679721
TEST=futility update --manifest -a \
       ~/Downloads/ChromeOS-firmware-R91-13885.3.0-asurada.tar.bz2
     QEMU_LD_PREFIX=/build/cherry qemu-arm /build/cherry/usr/bin/futility \
       update --manifest -a \
       ~/Downloads/ChromeOS-firmware-R91-13885.3.0-asurada.tar.bz2
BRANCH=None

Change-Id: Ibbab2e8226a00e8b5b292293af570eda37b31a8a
Signed-off-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/3644540
Reviewed-by: Yu-Ping Wu <yupingso@chromium.org>
2 files changed