swupdate

Software Update for Embedded Systems

GPL-2.0 License

Stars
1.4K
swupdate - 2024.05.2 Latest Release

Published by sbabic 4 months ago

  • Fix release (UBI swap regression bug)
swupdate - 2024.05

Published by sbabic 5 months ago

New features:
- Support auto generation of sw-versions
- Runtime installable Handlers (handler as part of SWU)
- Introduce global Lua State per update
- Support for postfailure scripts
- Updated Webapp
- eMMC switch boot handler
- docker: support for volumes / network

Fixes:
- remove 16KB limitation when SWU is stored
- Fix small licensing issues
- Enforce check during parsing
- Fix last chunk in delta handler
- SEGV in swuforwarder handler
- Fix IVT regression
- Fix GPG support

swupdate - 2023.12.1

Published by sbabic 9 months ago

Fix postupdate regression issue. This is just a bug fix for postupdate command not working in 2023.12

swupdate - 2023.12

Published by sbabic 10 months ago

2023.12

New features:

  • handlers: docker support for loading images and create
    containers
  • add nodejs binding
  • bootloader : support NVIDIA cboot
  • IPC : download URL can be transferred via IPC
  • Support new libubootenv version
  • Support per application vars and not just bootloader's
  • Support SSL for delta updates
  • Support newer libgpiod

Fixes:

  • please read git history for the complete list
swupdate - 2023.05

Published by sbabic over 1 year ago

  • New features:

    • support btrfs in the partitioner
    • suricatta / backend: allow runtime selection
    • Mongoose : updated to 7.9
    • Support dynamic loading and static linking of bootloader libraries
    • Add PKCS#7 verification for wolfSSL
    • Python package swupdateclient
  • Fixes:

    • improve documentation
    • fix SEGV in mbedtls
    • fix memory usage in delta handler
    • fix number of steps in progress
    • deadlock if progress client are blocked
    • fix decrypt for zchunk header
    • fix grubenv with new grub version
swupdate - 2022.12

Published by sbabic almost 2 years ago

New features:
Lua:
- Expose bootloader interface to Lua
- Filesystem functions
Bootloader:
- Dynamic loading of bootloader library
Webserver:
- Mongoose updated to 7.8
Progress:
- fix steps when scripts are used
Handler:
- generic copy handler in chain
- gtp_partition handler
Suricatta:
- Lua implementation
- Generic Server example code
Fixes:
- fix steps when scripts are used
- Fix Coverity Issues
- wrong erase blocks in flash handlers

swupdate - 2022.05

Published by sbabic over 2 years ago

swupdate - 2021.11

Published by sbabic almost 3 years ago

Features:

  • security:

    • Add optional CMS single signer verification
  • general:
    - BUG: buffer overflow with semantic version > 50
    - Functions to detect automatically rootfs

  • License:
    - Completed REUSE compliant

  • handlers:
    - diskpart : fixes, hybrid partitions, device lock force mode, partuuid support
    - Delta Update
    - Fix rawcopy as script handler
    - MTD: erase sectors instead of whole device

  • Lua :
    - Fix, support for Luajit recovered.
    - New function (version and getroot)

  • Webserver:
    - fix progress bar in browser

  • doc:
    - Improved documentation for building with Yocto
    - Best practise
    - Fixes

  • ipc:
    - add status streaming support

  • fixes :
    - fix defects reported by coverity

  • ci:
    - switch from Travis to gitlab

Just run git log -M 2021.04..2021.11 for full Changelog

swupdate -

Published by sbabic over 3 years ago

2021.04

Features:

  • security:

    • first block decryption with pkcs11
  • general:

    • merge install from file with OTA install
    • extend -o option
      • create directory if not present
    • selections via configuration file
    • optimize reuse of configuration file
    • fix postinstall in case of downloader
    • add thread synchronization at startup
  • License:

    • prepare to be REUSE compatible (WIP)
  • handlers:

    • diskpart : extend to initialize a filesystem
      • support for VFAT
      • support for ext2 / ext3 /ext4
  • Lua :

    • detect root device and export to Lua
  • Webserver:

    • Update to Mongoose 6.18
  • doc:

    • rewrote some parts not very clear
  • ipc:

    • extend IPC with new option
    • -o can be set via IPC
    • dry-run can be set via IPC
    • version checking via IPC
    • increase robustness
  • parser:

    • full support of links
    • extend hook to partitions
  • bootloader:

    • fix grub interface
  • build:

    • do not rebuild if nothing changed
  • fixes :

    • fix defects reported by coverity
swupdate - 2020.11

Published by sbabic almost 4 years ago

2020.11

Features:

  • security:

    • encryption of sw-description (aes-cbc-256)
    • fix IVT size for encryption (IPC)
    • support WolfSSL and PKCS#11
    • fix encryption of single block
    • mbedTLS : support RSA PSS
  • general:

    • rework dry-run mode (scripts were executed)
    • semantic version to compare versions
    • resume after a power-cut
    • library becomes shared
  • handlers:

    • diskpart: new table available after setting
      to be able to install SW
    • diskpart : write table only in case of changes
    • new: UUID checker. It checks that a filesystem with
      same UUID does not exist.
  • Lua :

    • add interface to get which selection is chosen
    • LuaJIT (5.1) compatibility
  • progress interface:

    • add non blocking mode
    • send total number of bytes to be downloaded, too.
  • doc:

    • maintain links to previous release on Website
  • ipc:

    • allow to set selection for each install request
    • new interface, API will be more stable
    • commands to enable / disable suricatta daemon
  • others:

    • drop CRC check (useful for not patched cpio,
      that means with Debian and files > 2GB)
    • support cpio newc format
    • state save also outside suricatta
  • build:

    • out of tree build fixed
  • tools:

    • swupdate-progress in quiet mode
  • fixes :

    • check in git history for full changelog
swupdate - 2020.04

Published by sbabic over 4 years ago

Prepare 2020.04

  • Lua: expose more functions
  • Webserver :
    • Updated to mongoose 6.16
  • New handlers:
    • readback handler
    • disk partitioning handler
    • provide full log for shell scripts
  • Handlers:
    • added "create-destination" to archive handler
  • Security:
    • Add an IPC to set AES key for decryption
    • IVT for each artifact
    • Added RSAPSS in case of mbedTLD
  • suricatta:
    • IPC to enable / disable daemon
    • send full log to Hawkbit Server
    • added configuration if token must be used
      to download artifacts (fix compatibility with AWS)
    • added "-f" to bind the interface to the channel
  • configuration:
    • default configuration file searched if none is passed
  • tools:
    • a script can be called after update
  • parser:
    • Hooks available for bootloader variables, too
    • Version of firmware sent to progress interface
  • general:
    • preupdate command
    • fix multilib support in OE
    • add support for coverity and fix of most defects found
    • fixes and clean up (list in git history)
swupdate - 2019.11

Published by sbabic almost 5 years ago

  • Improved support for libubootenv
  • rework swuforwarder, fix corruption
  • support system update
  • drop legacy webserver
  • support more as one instance of SWUpdate on the same target
  • improve support for Debian
  • Parser:
    • regexp for hardware compatibility check
    • new attribute: install-if-higher
    • hook support for bootloader section
    • new attribute: output to save SWU
    • bootloader_marker ("recovery_status") deactivable
  • Handlers:
    • ubiswap: atomic switch of UBI volumes
    • SSBL : switch between sw set with own structure
    • introduce handler without data
    • ubivol: auto-resize of volumes
    • fix rdiff handler
    • archive: set locale
  • Security:
    • support for rsa-pss
    • support for MBEDTLS
  • Lua:
    • export swupdate_progress_update
  • Compression:
    • added support for zstd
  • Documentation:
    • general improvements and fixes
    • links to newer talks about SWUpdate
  • Webserver:
    • fix hang if connection is broken
swupdate -

Published by sbabic over 5 years ago

swupdate - 2018.11

Published by sbabic almost 6 years ago

swupdate - 2018.03

Published by sbabic over 6 years ago

  • New Website
  • Support compression of encrypted images
  • Lua improvements
  • support local store of streams
  • Fix some issues in bootloader interface
  • Improve documentation and fixes
swupdate -

Published by sbabic almost 7 years ago

swupdate -

Published by sbabic about 7 years ago

swupdate -

Published by sbabic over 7 years ago

swupdate - Release 2017.01

Published by sbabic over 7 years ago

swupdate - 2016.10

Published by sbabic almost 8 years ago

A short list of new features:

- progress interface as general way to signalize the update
  status outside of the process.

- support encrypted artifacts (encryption via simmetric keys)

- host verification for swu images (-c option)

- configuration file to configure the update process

- HAwkbit backend: API extended, support for configData messages

- Hawkbit backend: supports SSL certificates

- remote handler : general interface to connect external
  installers.