* [Buildroot] [PATCH] package/snagboot: bump to version 2.6.1
@ 2026-08-08 17:11 Thomas Petazzoni via buildroot
2026-08-08 23:06 ` Julien Olivain via buildroot
0 siblings, 1 reply; 2+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-08-08 17:11 UTC (permalink / raw)
To: Buildroot List; +Cc: Romain Gantois, Thomas Petazzoni
Changelog 2.5..2.6:
treewide:
Migrate documentation to readthedocs
Emit more specific error messages for USB permission-based access issues
Add unit tests
snagflash:
Support compressed input files, e.g. *.wic.bz2
Refactor fastboot-uboot logic to factor out common code and improve logging
Automatically detect when oem_run isn't supported by U-Boot, and fallback to ucmd
snagrecover:
Support Renesas RZ/N1 platforms
Support SoC model aliases, and add i.MX8MP alias
Handle relative path prefixes with the -F syntax
Changelog 2.6..2.6.1:
snagrecover:
Correct i.MX93 ROM code recovery which doesn't support control endpoint HID commands
Add multi-board support to AM335x recovery setup script
Add i.MX7Solo support
treewide:
Fix broken links in documentation
Drop Python 3.9 support
Add CI for Python 3.14
One packaging-related change is that Snagboot would now
unconditionally import the bzip2, gzip and lzma Python modules, which
are not necessarily available. Since these are only needed when
compressed images are provided as input, we submitted a patch upstream
to make those imports only when compressed files are provided as
input, relaxing those dependencies.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
...utils.py-import-compression-modules-.patch | 57 +++++++++++++++++++
package/snagboot/snagboot.hash | 2 +-
package/snagboot/snagboot.mk | 2 +-
3 files changed, 59 insertions(+), 2 deletions(-)
create mode 100644 package/snagboot/0001-src-snagrecover-utils.py-import-compression-modules-.patch
diff --git a/package/snagboot/0001-src-snagrecover-utils.py-import-compression-modules-.patch b/package/snagboot/0001-src-snagrecover-utils.py-import-compression-modules-.patch
new file mode 100644
index 0000000000..ea92c0caa2
--- /dev/null
+++ b/package/snagboot/0001-src-snagrecover-utils.py-import-compression-modules-.patch
@@ -0,0 +1,57 @@
+From fa60aaf200eb1e6d31124ac3e7631e9e5458d145 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
+Date: Sat, 8 Aug 2026 19:03:52 +0200
+Subject: [PATCH] src/snagrecover/utils.py: import compression modules when
+ needed
+
+Commit 4f98bdec5ebeb13d9f851f848c3bd0086ef31eeb ("snagflash: Support
+on-the-fly decompression of input files") has added unconditional
+imports of lzma, bz2 and gzip Python modules, even if compressed input
+files are not used.
+
+Switch to dynamic imports where these modules are only imported
+on-demand. This allows to relax the need to have support for those
+modules in Python, which can be helpful in environments such as
+Buildroot where dependencies are kept to a minimum.
+
+Upstream: https://github.com/bootlin/snagboot/pull/95
+[Thomas: upstream version is different as upstream master branch also
+supports zstd compression, which wasn't supported as of v2.6.1 of
+snagboot]
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
+---
+ src/snagrecover/utils.py | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/src/snagrecover/utils.py b/src/snagrecover/utils.py
+index 8d240f6..dfe7d23 100644
+--- a/src/snagrecover/utils.py
++++ b/src/snagrecover/utils.py
+@@ -16,9 +16,7 @@ from snagrecover.usb import SnagbootUSBContext
+ import yaml
+ import importlib.resources
+
+-import lzma
+-import bz2
+-import gzip
++from math import ceil
+
+ USB_RETRIES = 9
+ USB_INTERVAL = 1
+@@ -47,10 +45,13 @@ def open_compressed_file(path: str, mode):
+ comp = get_compression_method(path)
+
+ if comp == "xz":
++ import lzma
+ file = lzma.open(path, mode)
+ elif comp == "bz2":
++ import bz2
+ file = bz2.open(path, mode)
+ elif comp == "gz":
++ import gzip
+ file = gzip.open(path, mode)
+ else:
+ return open(path, mode)
+--
+2.55.0
+
diff --git a/package/snagboot/snagboot.hash b/package/snagboot/snagboot.hash
index 6fff4c94c1..09d765d9f5 100644
--- a/package/snagboot/snagboot.hash
+++ b/package/snagboot/snagboot.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 03b3793feb9d926f5cb4f1c89f7a22075247fe91942c7be13065b6b62029376e snagboot-2.5.tar.gz
+sha256 0b94184d9668c46cc2cf11002772ddb2fe06542f4f96cc6884342b5561d84b8d snagboot-2.6.1.tar.gz
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE
diff --git a/package/snagboot/snagboot.mk b/package/snagboot/snagboot.mk
index 64b8b6fcc9..b3f699e988 100644
--- a/package/snagboot/snagboot.mk
+++ b/package/snagboot/snagboot.mk
@@ -4,7 +4,7 @@
#
################################################################################
-SNAGBOOT_VERSION = 2.5
+SNAGBOOT_VERSION = 2.6.1
SNAGBOOT_SITE = $(call github,bootlin,snagboot,v$(SNAGBOOT_VERSION))
SNAGBOOT_LICENSE = GPL-2.0
SNAGBOOT_LICENSE_FILES = LICENSE
--
2.55.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [Buildroot] [PATCH] package/snagboot: bump to version 2.6.1
2026-08-08 17:11 [Buildroot] [PATCH] package/snagboot: bump to version 2.6.1 Thomas Petazzoni via buildroot
@ 2026-08-08 23:06 ` Julien Olivain via buildroot
0 siblings, 0 replies; 2+ messages in thread
From: Julien Olivain via buildroot @ 2026-08-08 23:06 UTC (permalink / raw)
To: Thomas Petazzoni; +Cc: Buildroot List, Romain Gantois
On 08/08/2026 19:11, Thomas Petazzoni via buildroot wrote:
> Changelog 2.5..2.6:
>
> treewide:
> Migrate documentation to readthedocs
> Emit more specific error messages for USB permission-based access
> issues
> Add unit tests
>
> snagflash:
> Support compressed input files, e.g. *.wic.bz2
> Refactor fastboot-uboot logic to factor out common code and improve
> logging
> Automatically detect when oem_run isn't supported by U-Boot, and
> fallback to ucmd
>
> snagrecover:
> Support Renesas RZ/N1 platforms
> Support SoC model aliases, and add i.MX8MP alias
> Handle relative path prefixes with the -F syntax
>
> Changelog 2.6..2.6.1:
>
> snagrecover:
> Correct i.MX93 ROM code recovery which doesn't support control endpoint
> HID commands
> Add multi-board support to AM335x recovery setup script
> Add i.MX7Solo support
>
> treewide:
> Fix broken links in documentation
> Drop Python 3.9 support
> Add CI for Python 3.14
>
> One packaging-related change is that Snagboot would now
> unconditionally import the bzip2, gzip and lzma Python modules, which
> are not necessarily available. Since these are only needed when
> compressed images are provided as input, we submitted a patch upstream
> to make those imports only when compressed files are provided as
> input, relaxing those dependencies.
>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Applied to master, thanks.
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-08-08 23:06 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-08 17:11 [Buildroot] [PATCH] package/snagboot: bump to version 2.6.1 Thomas Petazzoni via buildroot
2026-08-08 23:06 ` Julien Olivain via buildroot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox