Releases: fwup-home/fwup
v1.8.1
This release only contains meaningful changes for the host side. There is no
need to upgrade devices.
- Bug fixes
- Improved automatic detection of SD Cards on Linux and OSX. This includes
checks for whether they're writable, removable and non-virtual on Mac so
that a number of false positive drives can be removed from the list. - Remove arbitrary 64 GB max SD card size for automatic detection for OSX and
Linux. If you have a 128 GB or larger SD Card, you no longer have to force
it to be selected. The previous change makes this behavior less risky.
- Improved automatic detection of SD Cards on Linux and OSX. This includes
v1.8.0
-
New features
- U-Boot redundant environment support - Thanks to Davide Pianca,
fwup
can
read and update devices with redundant U-Boot environments. Add the
block-offset-redund
to your fwup.conf U-Boot environment specification to
enable and use.
- U-Boot redundant environment support - Thanks to Davide Pianca,
-
Bug fixes
- Fixed memory leaks in archive verification and when processing empty
fwup.conf
files. Neither of these leaks were in code paths that would
normally be exercised on devices.
- Fixed memory leaks in archive verification and when processing empty
v1.7.0
In this release, fwup
verifies writes to raw devices. Regular files are not
verified unless forced with the --verify-writes
option. Writes are verified as
they're written. Since the final write with fwup
firmware updates is usually
to toggle the active partition, corruption can fail an update before the toggle
occurs.
-
New features
- Writes verification on raw devices. This may be forced with
--verify-writes
or disabled with--no-verify-writes
. - The
boot
option works for GPT partitions now.boot=true
will set the GPT
attribute flags appropriately. Since the archive creation process replaces
theboot
parameter with raw flags, older versions offwup
can apply
updates that use this.
- Writes verification on raw devices. This may be forced with
-
Bug fixes
- After a write error was detected,
fwup
would continue to try to write a
few more blocks before exiting. Now it no longer writes after an error. An
on-error
handle can perform a write, but it will start from a clean slate
now.
- After a write error was detected,
v1.6.0
This release adds beta support for VCDIFF delta updates. This makes it possible
to significantly reduce firmware update sizes if you know the firmware version
running on the device. See the README.md for details.
IMPORTANT: If you were using fwup
's sparse file support, the skip-holes
option now defaults to false
. You must set skip-holes=true
for any resources
that should be scanned. Since this is an optimization, nothing should break, but
it will be slower. This will affect firmware that writes large and empty ext2/4
filesystems (and similar). Most known fwup
usage is unaffected. The default
was changed since skip-holes
could cause confusion and it was incompatible
with delta updates.
-
Improvements
- VCDIFF support using xdelta3
- Progress bar now shows bytes in
- Updated to FatFS R0.14
-
Bug fixes
- Refactor firmware archive validation logic to more closely match firmware
update code to avoid false failures due to differences in ZIP file
processing
- Refactor firmware archive validation logic to more closely match firmware
v1.5.2
This release does not change any functionality. It provides a modest (~30%) reduction in fwup's footprint by trimming easy-to-remove code.
- Support a minimal "apply-only" of
fwup
. Use./configure --enable-minimal-build
to select this. - Replace libsodium with Monocypher. Monocypher is a small crypto library that's very similar to libsodium in many ways, but optimizes for code size rather than performance.
Note that the regression tests will fail with the minimal version of fwup
since almost all tests create .fw
archives and the minimal one can't do that. It's possible to use a full-featured version of fwup
to handle the creation parts only so that the minimal fwup
can be tested on everything else. See the CI scripts if you'd like to replicate these tests.
v1.5.1
v1.5.0
-
Bug fixes
- Fixed overrun when writing to devices with non-128KB sizes. Fwup tries to
write in 128KB blocks for efficiency and in an attempted to avoid
read/modify/write operations for partial blocks on Flash-based devices. The
code for this could write past the end of a device and this became more
apparent with GPT support which writes partition information to the end of a
device.
- Fixed overrun when writing to devices with non-128KB sizes. Fwup tries to
-
New feature
- Encrypted partition support for use with dm-crypt. This functionality should
be considered "beta". Only the simplest encryption method (aes-cbc-plain)
is available. This works, but requires some knowledge about working with
encrypted root filesystems (the likely scenario for this feature).
- Encrypted partition support for use with dm-crypt. This functionality should
v1.4.0
- New feature
- GPT partitions. This is perhaps the oldest feature request for fwup. Thanks
for your patience. The support in this version allows for static GPT
partitions and ones where the last partition grows to available space. All
UUIDs must be specified (but you can use variables to inject dynamic UUIDs
from scripts calling fwup. See the newgpt_write
function and details in
the README.md.
- GPT partitions. This is perhaps the oldest feature request for fwup. Thanks
v1.3.2
- Improvements
- Support
SOURCE_DATE_EPOCH
for reproducible archive creation. See
https://reproducible-builds.org/ for motivation and details. Similar support
was available by setting theNOW
environment variable, but this makes
fwup
follow the conventions used by pretty much everyone else.
- Support