* [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15
@ 2026-10-27 16:39 Adam Duskett
2026-10-27 16:39 ` [Buildroot] [PATCH v2 02/14] package/mender-connect: bump to version 3.1.0 Adam Duskett
` (13 more replies)
0 siblings, 14 replies; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:39 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
This commit unintentionally fixed a compile error when programs
include the asio.hpp header with gcc versions >= 15.
```
In function ‘void* memcpy(void*, const void*, size_t)’,
inlined from ‘static boost::asio::ip::basic_resolver_results<InternetProtocol>
boost::asio::ip::basic_resolver_results<InternetProtocol>::create(boost::asio::detail::addrinfo_type*,
const std::string&, const std::string&) [with InternetProtocol = boost::asio::ip::tcp]’
at /usr/include/boost/asio/ip/basic_resolver_results.hpp:147:15:
/usr/include/bits/string_fortified.h:29:33:
error: ‘void* __builtin___memcpy_chk(void*, const void*, unsigned int, unsigned int)’
forming offset [28, 128] is out of the bounds [0, 28] of object ‘endpoint’ with type
‘boost::asio::ip::tcp::endpoint’ {aka ‘boost::asio::ip::basic_endpoint<boost::asio::ip::tcp>’}
[-Werror=array-bounds=]
```
Backport URL: https://github.com/boostorg/asio/commit/b2478a9ba9ed76d7c858419e3f677cc454591d45
Fixes: None reported
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
...002-remove-FORTIFY_SOURCE-workaround.patch | 75 +++++++++++++++++++
1 file changed, 75 insertions(+)
create mode 100644 package/boost/0002-remove-FORTIFY_SOURCE-workaround.patch
diff --git a/package/boost/0002-remove-FORTIFY_SOURCE-workaround.patch b/package/boost/0002-remove-FORTIFY_SOURCE-workaround.patch
new file mode 100644
index 0000000000..d044b62676
--- /dev/null
+++ b/package/boost/0002-remove-FORTIFY_SOURCE-workaround.patch
@@ -0,0 +1,75 @@
+From b3d87da5f87e2907ed004edf1c72ad3942ff1165 Mon Sep 17 00:00:00 2001
+From: Christopher Kohlhoff <chris@kohlhoff.com>
+Date: Wed, 5 Aug 2026 16:07:19 +0200
+Subject: [PATCH] Remove _FORTIFY_SOURCE workaround.
+
+This commit unintentionally fixed a compile error when programs
+include the asio.hpp header with gcc versions >= 15.
+
+```
+In function ‘void* memcpy(void*, const void*, size_t)’,
+
+inlined from ‘static boost::asio::ip::basic_resolver_results<InternetProtocol>
+ boost::asio::ip::basic_resolver_results<InternetProtocol>::create(boost::asio::detail::addrinfo_type*,
+ const std::string&, const std::string&) [with InternetProtocol = boost::asio::ip::tcp]’
+ at /usr/include/boost/asio/ip/basic_resolver_results.hpp:147:15:
+
+/usr/include/bits/string_fortified.h:29:33:
+ error: ‘void* __builtin___memcpy_chk(void*, const void*, unsigned int, unsigned int)’
+ forming offset [28, 128] is out of the bounds [0, 28] of object ‘endpoint’ with type
+ ‘boost::asio::ip::tcp::endpoint’ {aka ‘boost::asio::ip::basic_endpoint<boost::asio::ip::tcp>’}
+ [-Werror=array-bounds=]
+```
+
+
+Original patch commit message:
+```
+The previous workaround for _FORTIFY_SOURCE warnings increased the size
+of all IP endpoint objects. Instead, try fixing the warning at the point
+where it occurs, by limiting the length memcpy-ed while processing the
+addrinfo results from getaddrinfo.
+```
+
+Upstream: Backport [https://github.com/boostorg/asio/commit/b2478a9ba9ed76d7c858419e3f677cc454591d45]
+Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
+Signed-off-by: Christopher Kohlhoff <chris@kohlhoff.com>
+---
+ boost/asio/ip/basic_resolver_results.hpp | 22 ++++++++++++++--------
+ 1 file changed, 14 insertions(+), 8 deletions(-)
+
+diff --git a/boost/asio/ip/basic_resolver_results.hpp b/boost/asio/ip/basic_resolver_results.hpp
+index 0127473e2..87fa3fadf 100644
+--- a/boost/asio/ip/basic_resolver_results.hpp
++++ b/boost/asio/ip/basic_resolver_results.hpp
+@@ -141,14 +141,20 @@ public:
+ if (address_info->ai_family == BOOST_ASIO_OS_DEF(AF_INET)
+ || address_info->ai_family == BOOST_ASIO_OS_DEF(AF_INET6))
+ {
+- using namespace std; // For memcpy.
+- typename InternetProtocol::endpoint endpoint;
+- endpoint.resize(static_cast<std::size_t>(address_info->ai_addrlen));
+- memcpy(endpoint.data(), address_info->ai_addr,
+- address_info->ai_addrlen);
+- results.values_->push_back(
+- basic_resolver_entry<InternetProtocol>(endpoint,
+- actual_host_name, service_name));
++ const std::size_t expected_size =
++ address_info->ai_family == BOOST_ASIO_OS_DEF(AF_INET)
++ ? sizeof(boost::asio::detail::sockaddr_in4_type)
++ : sizeof(boost::asio::detail::sockaddr_in6_type);
++ if (address_info->ai_addrlen >= expected_size)
++ {
++ using namespace std; // For memcpy.
++ typename InternetProtocol::endpoint endpoint;
++ endpoint.resize(expected_size);
++ memcpy(endpoint.data(), address_info->ai_addr, expected_size);
++ results.values_->push_back(
++ basic_resolver_entry<InternetProtocol>(endpoint,
++ actual_host_name, service_name));
++ }
+ }
+ address_info = address_info->ai_next;
+ }
+--
+2.55.0
+
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 02/14] package/mender-connect: bump to version 3.1.0
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
@ 2026-10-27 16:39 ` Adam Duskett
2026-10-27 19:45 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 03/14] package/mender-artifact: bump version to 4.4.2 Adam Duskett
` (12 subsequent siblings)
13 siblings, 1 reply; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:39 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
License changes are due to golang dependency [1]
Update github.com/go-ozzo/ozzo-validation/v4 from v4.3.0 to v4.4.1
Update github.com/mendersoftware/go-lib-microfrom 904960e to f0e3087
Update github.com/stretchr/testify from v1.11.1 to v1.12.1
Update github.com/urfave/cli/v3 from v3.11.0 to v3.12.0
1: https://github.com/mendersoftware/mender-connect/commit/14ebf68bd4f83057f75beb06702d6f8adac84aac
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
package/mender-connect/mender-connect.hash | 20 +++++++++++---------
package/mender-connect/mender-connect.mk | 12 +++++++-----
2 files changed, 18 insertions(+), 14 deletions(-)
diff --git a/package/mender-connect/mender-connect.hash b/package/mender-connect/mender-connect.hash
index 2872bb467c..8daf1dc5af 100644
--- a/package/mender-connect/mender-connect.hash
+++ b/package/mender-connect/mender-connect.hash
@@ -1,6 +1,6 @@
# Locally computed:
-sha256 b04331f447b9d21c5962d5aef2670f1de861e3065522a1b298af0904a8ee6400 mender-connect-3.0.0-go2.tar.gz
-sha256 420fd444caf5a39bc2db0ae2202c71451a8ea3900011547bd0fb22678aaa4ef6 LIC_FILES_CHKSUM.sha256
+sha256 7cdd498ea5073b0b22cbe3b1db0a6f0d86243089112a5905a9b1d2b0c18609bb mender-connect-3.1.0-go2.tar.gz
+sha256 649734d795498f215fe39bba2a166a53864afe83caebd5fe9c363aac9132b9d4 LIC_FILES_CHKSUM.sha256
# Vendor licenses
# Generated with sed '/^[A-Za-z0-9_]/s/^/sha256 /' LIC_FILES_CHKSUM.sha256
@@ -8,21 +8,21 @@ sha256 420fd444caf5a39bc2db0ae2202c71451a8ea3900011547bd0fb22678aaa4ef6 LIC_FI
#
# Apache-2.0
sha256 d7e8fd4ad05371007d60285c309ba7a7ce3e61029b843f949fbb9ec79dc9eb47 LICENSE
-sha256 a4e99d13c6cd0e4faf3867ae5c9815ff88cab3cefdefe0dc1ec9ac28b1152944 vendor/github.com/mendersoftware/go-lib-micro/LICENSE
+sha256 80297c4cb7b51b895d0385e45fe3d773271c8ae4c58e7c6d1ee0312dddaa4ad2 vendor/github.com/mendersoftware/go-lib-micro/LICENSE
#
# BSD-2-Clause
sha256 8d427fd87bc9579ea368fde3d49f9ca22eac857f91a9dec7e3004bdfab7dee86 vendor/github.com/pkg/errors/LICENSE
sha256 1530185dd39cdde7cb2f786a7a5fcf8bc34368b6ae73c15e72bafe88fd80b9a2 vendor/github.com/vmihailenco/msgpack/v5/LICENSE
sha256 0f02aac22084ef463aa5f42f566feeec6aa4c99653519744a8c25cb079da5b5d vendor/github.com/vmihailenco/tagparser/v2/LICENSE
+sha256 75e1ca97a84a9da6051dee0114333388216f2c4a5a028296b882ff3d57274735 vendor/github.com/russross/blackfriday/v2/LICENSE.txt
#
# BSD-3-Clause
-sha256 2eb550be6801c1ea434feba53bf6d12e7c71c90253e0a9de4a4f46cf88b56477 vendor/github.com/pmezard/go-difflib/LICENSE
-sha256 2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067 vendor/golang.org/x/sys/LICENSE
-sha256 2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067 vendor/golang.org/x/net/LICENSE
-sha256 0b77fdea862f869ef4f201ac5649bdbd38ccb055c7f6454dffae9e2adb4941c1 vendor/github.com/gorilla/websocket/LICENSE
+sha256 c615fb76b7891c9b36b0e352c111d5a2fe77c0111e4129a23659b25b26c3fdd2 vendor/github.com/stretchr/testify/internal/difflib/LICENSE
+sha256 911f8f5782931320f5b8d1160a76365b83aea6447ee6c04fa6d5591467db9dad vendor/golang.org/x/sys/LICENSE
+sha256 2be1b548b0387ca8948e1bb9434e709126904d15f622cc2d0d8e7f186e4d122d vendor/github.com/gorilla/websocket/LICENSE
#
# ISC
-sha256 1b93a317849ee09d3d7e4f1d20c2b78ddb230b4becb12d7c224c927b9d470251 vendor/github.com/davecgh/go-spew/LICENSE
+sha256 1b93a317849ee09d3d7e4f1d20c2b78ddb230b4becb12d7c224c927b9d470251 vendor/github.com/stretchr/testify/internal/spew/LICENSE
#
# MIT
sha256 a2a1cea59d9c2d71908082f516f86bb560abf857646ecf69d70c121ead14aef4 vendor/github.com/creack/pty/LICENSE
@@ -32,4 +32,6 @@ sha256 51a0c9ec7f8b7634181b8d4c03e5b5d204ac21d6e72f46c313973424664b2e6b vendor
sha256 b2663894033a05fd80261176cd8da1d72546e25842d5c1abcc852ca23b6b61b0 vendor/github.com/stretchr/objx/LICENSE
sha256 f8e536c1c7b695810427095dc85f5f80d44ff7c10535e8a9486cf393e2599189 vendor/github.com/stretchr/testify/LICENSE
sha256 da277af11b85227490377fbcac6afccc68be560c4fff36ac05ca62de55345fd7 vendor/github.com/urfave/cli/v2/LICENSE
-sha256 d18f6323b71b0b768bb5e9616e36da390fbd39369a81807cca352de4e4e6aa0b vendor/gopkg.in/yaml.v3/LICENSE
+sha256 d18f6323b71b0b768bb5e9616e36da390fbd39369a81807cca352de4e4e6aa0b vendor/go.yaml.in/yaml/v3/LICENSE
+sha256 a55959c4e3e8917bfa857359bb641115336276a6cc97408fd8197e079fb18470 vendor/github.com/cpuguy83/go-md2man/v2/LICENSE.md
+sha256 c8024e31c1de453fea90f22a221968835cc7af9d520274a2576c9ec9976055b0 vendor/github.com/shurcooL/sanitized_anchor_name/LICENSE
diff --git a/package/mender-connect/mender-connect.mk b/package/mender-connect/mender-connect.mk
index 98fdfe16df..ae9094f3b4 100644
--- a/package/mender-connect/mender-connect.mk
+++ b/package/mender-connect/mender-connect.mk
@@ -4,7 +4,7 @@
#
################################################################################
-MENDER_CONNECT_VERSION = 3.0.0
+MENDER_CONNECT_VERSION = 3.1.0
MENDER_CONNECT_SITE = $(call github,mendersoftware,mender-connect,$(MENDER_CONNECT_VERSION))
MENDER_CONNECT_LICENSE = Apache-2.0, BSD-2-Clause, BSD-3-Clause, ISC, MIT
@@ -17,11 +17,11 @@ MENDER_CONNECT_LICENSE_FILES = \
vendor/github.com/pkg/errors/LICENSE \
vendor/github.com/vmihailenco/msgpack/v5/LICENSE \
vendor/github.com/vmihailenco/tagparser/v2/LICENSE \
- vendor/github.com/pmezard/go-difflib/LICENSE \
+ vendor/github.com/russross/blackfriday/v2/LICENSE.txt \
+ vendor/github.com/stretchr/testify/internal/difflib/LICENSE \
vendor/golang.org/x/sys/LICENSE \
- vendor/golang.org/x/net/LICENSE \
vendor/github.com/gorilla/websocket/LICENSE \
- vendor/github.com/davecgh/go-spew/LICENSE \
+ vendor/github.com/stretchr/testify/internal/spew/LICENSE \
vendor/github.com/creack/pty/LICENSE \
vendor/github.com/go-ozzo/ozzo-validation/v4/LICENSE \
vendor/github.com/satori/go.uuid/LICENSE \
@@ -29,7 +29,9 @@ MENDER_CONNECT_LICENSE_FILES = \
vendor/github.com/stretchr/objx/LICENSE \
vendor/github.com/stretchr/testify/LICENSE \
vendor/github.com/urfave/cli/v2/LICENSE \
- vendor/gopkg.in/yaml.v3/LICENSE
+ vendor/go.yaml.in/yaml/v3/LICENSE \
+ vendor/github.com/cpuguy83/go-md2man/v2/LICENSE.md \
+ vendor/github.com/shurcooL/sanitized_anchor_name/LICENSE
MENDER_CONNECT_DEPENDENCIES = \
dbus \
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 03/14] package/mender-artifact: bump version to 4.4.2
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
2026-10-27 16:39 ` [Buildroot] [PATCH v2 02/14] package/mender-connect: bump to version 3.1.0 Adam Duskett
@ 2026-10-27 16:40 ` Adam Duskett
2026-10-27 19:54 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 04/14] package/mender-grubenv: bump to version 32e10c0b Adam Duskett
` (11 subsequent siblings)
13 siblings, 1 reply; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:40 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
package/mender-artifact/mender-artifact.hash | 2 +-
package/mender-artifact/mender-artifact.mk | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/package/mender-artifact/mender-artifact.hash b/package/mender-artifact/mender-artifact.hash
index 5dffdbb7df..bf00b26464 100644
--- a/package/mender-artifact/mender-artifact.hash
+++ b/package/mender-artifact/mender-artifact.hash
@@ -1,5 +1,5 @@
# Locally computed:
-sha256 c7002052028496f230c34ef6f0488bf5e8ca32b075b7a96555532fe928aed984 mender-artifact-4.4.1-go2.tar.gz
+sha256 d8e9e18e48a2124e5e367ffafb3313a3dcba7a8a8a8b162b1dcb8791964c6385 mender-artifact-4.4.2-go2.tar.gz
sha256 0e7c48f6471ca81a2fce9e3f605dffeb0385afd4dc3b5eb7f4e86ece4aa9b068 LIC_FILES_CHKSUM.sha256
# License hash extracted from LIC_FILES_CHKSUM.sha256 using the
diff --git a/package/mender-artifact/mender-artifact.mk b/package/mender-artifact/mender-artifact.mk
index 9f235b55bd..e881529c82 100644
--- a/package/mender-artifact/mender-artifact.mk
+++ b/package/mender-artifact/mender-artifact.mk
@@ -4,7 +4,7 @@
#
################################################################################
-HOST_MENDER_ARTIFACT_VERSION = 4.4.1
+HOST_MENDER_ARTIFACT_VERSION = 4.4.2
HOST_MENDER_ARTIFACT_SITE = $(call github,mendersoftware,mender-artifact,$(HOST_MENDER_ARTIFACT_VERSION))
HOST_MENDER_ARTIFACT_LICENSE = Apache2.0, BSD-2-Clause, BSD-3-Clause, ISC, MIT, MPL-2.0
# Vendor license paths generated with:
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 04/14] package/mender-grubenv: bump to version 32e10c0b
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
2026-10-27 16:39 ` [Buildroot] [PATCH v2 02/14] package/mender-connect: bump to version 3.1.0 Adam Duskett
2026-10-27 16:40 ` [Buildroot] [PATCH v2 03/14] package/mender-artifact: bump version to 4.4.2 Adam Duskett
@ 2026-10-27 16:40 ` Adam Duskett
2026-10-27 19:55 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 05/14] package/mender-update-modules: bump to version 3745bbea3 Adam Duskett
` (10 subsequent siblings)
13 siblings, 1 reply; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:40 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
package/mender-grubenv/mender-grubenv.hash | 2 +-
package/mender-grubenv/mender-grubenv.mk | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/package/mender-grubenv/mender-grubenv.hash b/package/mender-grubenv/mender-grubenv.hash
index 06456f6818..1780c8a180 100644
--- a/package/mender-grubenv/mender-grubenv.hash
+++ b/package/mender-grubenv/mender-grubenv.hash
@@ -1,3 +1,3 @@
# Locally computed
-sha256 9200dfc8ce8d9e5fae13947857fec44961df87c5bee92f90e37049279a94fb6f mender-grubenv-ddbc5cb054c7a8245c2d6c79eb4cb60ed0ec27e4.tar.gz
+sha256 88c9cc9ea375b8391e6a2ab716e758c3ef1d10145496d7abcea0f1a7a6867a97 mender-grubenv-32e10c0b33b26277099b5ce7047896202cd18781.tar.gz
sha256 d7e8fd4ad05371007d60285c309ba7a7ce3e61029b843f949fbb9ec79dc9eb47 LICENSE
diff --git a/package/mender-grubenv/mender-grubenv.mk b/package/mender-grubenv/mender-grubenv.mk
index d93159802d..9604958fbf 100644
--- a/package/mender-grubenv/mender-grubenv.mk
+++ b/package/mender-grubenv/mender-grubenv.mk
@@ -4,7 +4,7 @@
#
################################################################################
-MENDER_GRUBENV_VERSION = ddbc5cb054c7a8245c2d6c79eb4cb60ed0ec27e4
+MENDER_GRUBENV_VERSION = 32e10c0b33b26277099b5ce7047896202cd18781
MENDER_GRUBENV_SITE = $(call github,mendersoftware,grub-mender-grubenv,$(MENDER_GRUBENV_VERSION))
MENDER_GRUBENV_LICENSE = Apache-2.0
MENDER_GRUBENV_LICENSE_FILES = LICENSE
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 05/14] package/mender-update-modules: bump to version 3745bbea3
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
` (2 preceding siblings ...)
2026-10-27 16:40 ` [Buildroot] [PATCH v2 04/14] package/mender-grubenv: bump to version 32e10c0b Adam Duskett
@ 2026-10-27 16:40 ` Adam Duskett
2026-10-27 19:56 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 06/14] package/mender-update-modules: add banner module Adam Duskett
` (9 subsequent siblings)
13 siblings, 1 reply; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:40 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
package/mender-update-modules/mender-update-modules.hash | 2 +-
package/mender-update-modules/mender-update-modules.mk | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/package/mender-update-modules/mender-update-modules.hash b/package/mender-update-modules/mender-update-modules.hash
index f6de69c42c..08dd47cf98 100644
--- a/package/mender-update-modules/mender-update-modules.hash
+++ b/package/mender-update-modules/mender-update-modules.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 4846f39abc254ad2ae2a9f3d5479b064bc1bae5034b9d276ebdb09d8c60f4541 mender-update-modules-d8c4683e6660af6c65069e10ee4b8ee50ec1af46.tar.gz
+sha256 52b3b19bd3ad437caa7d1bce7f4766055a204909889f3436c8459da28dcef771 mender-update-modules-3745bbea3fc8ce73cf6489a58fb77dfb66660ebf.tar.gz
sha256 c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 LICENSE
diff --git a/package/mender-update-modules/mender-update-modules.mk b/package/mender-update-modules/mender-update-modules.mk
index 0024acc189..d18b5111ae 100644
--- a/package/mender-update-modules/mender-update-modules.mk
+++ b/package/mender-update-modules/mender-update-modules.mk
@@ -4,7 +4,7 @@
#
################################################################################
-MENDER_UPDATE_MODULES_VERSION = d8c4683e6660af6c65069e10ee4b8ee50ec1af46
+MENDER_UPDATE_MODULES_VERSION = 3745bbea3fc8ce73cf6489a58fb77dfb66660ebf
MENDER_UPDATE_MODULES_SITE = $(call github,mendersoftware,mender-update-modules,$(MENDER_UPDATE_MODULES_VERSION))
MENDER_UPDATE_MODULES_LICENSE = Apache-2.0
MENDER_UPDATE_MODULES_LICENSE_FILES = LICENSE
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 06/14] package/mender-update-modules: add banner module
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
` (3 preceding siblings ...)
2026-10-27 16:40 ` [Buildroot] [PATCH v2 05/14] package/mender-update-modules: bump to version 3745bbea3 Adam Duskett
@ 2026-10-27 16:40 ` Adam Duskett
2026-10-27 19:58 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 07/14] package/mender-update-modules: add persistent-app module Adam Duskett
` (8 subsequent siblings)
13 siblings, 1 reply; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:40 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
package/mender-update-modules/Config.in | 12 ++++++++++++
.../mender-update-modules/mender-update-modules.mk | 4 ++++
2 files changed, 16 insertions(+)
diff --git a/package/mender-update-modules/Config.in b/package/mender-update-modules/Config.in
index 7c5a7e4442..97f583e0e2 100644
--- a/package/mender-update-modules/Config.in
+++ b/package/mender-update-modules/Config.in
@@ -16,6 +16,18 @@ config BR2_PACKAGE_MENDER_UPDATE_MODULES
if BR2_PACKAGE_MENDER_UPDATE_MODULES
+config BR2_PACKAGE_MENDER_UPDATE_MODULES_BANNER
+ bool "banner"
+ help
+ The Banner Update Module manages the system's message of
+ the day (MOTD) displayed when users log in via SSH or
+ console. It uses metadata-driven updates to change the
+ banner text without requiring any file payload, supports
+ rollback functionality, and operates without requiring
+ system reboots.
+
+ https://github.com/aduskett/mender-update-modules/tree/master/banner
+
config BR2_PACKAGE_MENDER_UPDATE_MODULES_DFU
bool "DFU"
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
diff --git a/package/mender-update-modules/mender-update-modules.mk b/package/mender-update-modules/mender-update-modules.mk
index d18b5111ae..1db47cbd15 100644
--- a/package/mender-update-modules/mender-update-modules.mk
+++ b/package/mender-update-modules/mender-update-modules.mk
@@ -12,6 +12,10 @@ MENDER_UPDATE_MODULES_DEPENDENCIES = host-mender-artifact mender
MENDER_UPDATE_MODULES_MODULES = script
+ifeq ($(BR2_PACKAGE_MENDER_UPDATE_MODULES_BANNER),y)
+MENDER_UPDATE_MODULES_MODULES += banner
+endif
+
ifeq ($(BR2_PACKAGE_MENDER_UPDATE_MODULES_DFU),y)
MENDER_UPDATE_MODULES_MODULES += dfu
endif
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 07/14] package/mender-update-modules: add persistent-app module
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
` (4 preceding siblings ...)
2026-10-27 16:40 ` [Buildroot] [PATCH v2 06/14] package/mender-update-modules: add banner module Adam Duskett
@ 2026-10-27 16:40 ` Adam Duskett
2026-10-27 20:00 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 08/14] configs/mender_x86_64_efi_defconfig: bump kernel version to 6.18.59 Adam Duskett
` (7 subsequent siblings)
13 siblings, 1 reply; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:40 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
package/mender-update-modules/Config.in | 18 ++++++++++++++++++
.../mender-update-modules.mk | 9 +++++++++
2 files changed, 27 insertions(+)
diff --git a/package/mender-update-modules/Config.in b/package/mender-update-modules/Config.in
index 97f583e0e2..da0b385457 100644
--- a/package/mender-update-modules/Config.in
+++ b/package/mender-update-modules/Config.in
@@ -137,6 +137,24 @@ comment "ipk support needs a toolchain w/ wchar"
depends on BR2_USE_MMU
depends on !BR2_USE_WCHAR
+config BR2_PACKAGE_MENDER_UPDATE_MODULES_PERSISTENT_APP
+ bool "persistent-app"
+ help
+ The Persistent App Update Module installs files to a
+ user-defined directory on the persistent data partition,
+ ensuring deployments survive rootfs A/B updates.
+
+ This module uses the data-partition software filesystem
+ namespace, which means version tracking in mender
+ show-provides persists across system updates. When a
+ rootfs update clears rootfs-image.* provides, the
+ data-partition.* provides remain intact.
+
+ The module supports rollback by maintaining backups on
+ the same persistent partition.
+
+ https://github.com/mendersoftware/mender-update-modules/tree/master/persistent-app
+
config BR2_PACKAGE_MENDER_UPDATE_MODULES_PODMAN
bool "podman"
depends on BR2_USE_MMU # podman
diff --git a/package/mender-update-modules/mender-update-modules.mk b/package/mender-update-modules/mender-update-modules.mk
index 1db47cbd15..f3ea0e15cd 100644
--- a/package/mender-update-modules/mender-update-modules.mk
+++ b/package/mender-update-modules/mender-update-modules.mk
@@ -36,6 +36,15 @@ ifeq ($(BR2_PACKAGE_MENDER_UPDATE_MODULES_IPK),y)
MENDER_UPDATE_MODULES_MODULES += ipk
endif
+ifeq ($(BR2_PACKAGE_MENDER_UPDATE_MODULES_PERSISTENT_APP),y)
+MENDER_UPDATE_MODULES_MODULES += persistent-app
+define MENDER_UPDATE_MODULES_INSTALL_MENDER_PERSISTENT_APP_GEN
+ $(INSTALL) -D -m 0755 $(@D)/persistent-app/module-artifact-gen/persistent-app-artifact-gen \
+ $(HOST_DIR)/bin/persistent-app-artifact-gen
+endef
+MENDER_UPDATE_MODULES_POST_INSTALL_TARGET_HOOKS += MENDER_UPDATE_MODULES_INSTALL_MENDER_PERSISTENT_APP_GEN
+endif
+
ifeq ($(BR2_PACKAGE_MENDER_UPDATE_MODULES_PODMAN),y)
MENDER_UPDATE_MODULES_MODULES += podman
endif
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 08/14] configs/mender_x86_64_efi_defconfig: bump kernel version to 6.18.59
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
` (5 preceding siblings ...)
2026-10-27 16:40 ` [Buildroot] [PATCH v2 07/14] package/mender-update-modules: add persistent-app module Adam Duskett
@ 2026-10-27 16:40 ` Adam Duskett
2026-10-27 20:00 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 09/14] board/mender: change device type to compatible-types Adam Duskett
` (6 subsequent siblings)
13 siblings, 1 reply; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:40 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
Also update board/mender/x86_64/linux.config by running
`make linux-savedefconfig` and comparing the differences.
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
board/mender/x86_64/linux.config | 5 +++--
configs/mender_x86_64_efi_defconfig | 4 ++--
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/board/mender/x86_64/linux.config b/board/mender/x86_64/linux.config
index f17fc18edb..b758c6d45a 100644
--- a/board/mender/x86_64/linux.config
+++ b/board/mender/x86_64/linux.config
@@ -3,6 +3,7 @@ CONFIG_SMP=y
CONFIG_HYPERVISOR_GUEST=y
CONFIG_PARAVIRT=y
CONFIG_EFI=y
+# CONFIG_GCC_PLUGINS is not set
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_NET=y
@@ -10,6 +11,8 @@ CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_NETFILTER=y
+CONFIG_NETFILTER_XTABLES_LEGACY=y
+CONFIG_IP_NF_IPTABLES_LEGACY=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_FILTER=y
CONFIG_CFG80211=m
@@ -35,7 +38,6 @@ CONFIG_RT2800USB_RT3573=y
CONFIG_RT2800USB_RT53XX=y
CONFIG_RT2800USB_RT55XX=y
# CONFIG_RTL_CARDS is not set
-CONFIG_RTL8XXXU=m
CONFIG_INPUT_EVDEV=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
@@ -43,7 +45,6 @@ CONFIG_VIRTIO_CONSOLE=y
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_DRM=y
CONFIG_DRM_VIRTIO_GPU=y
-CONFIG_FB_VESA=y
CONFIG_SOUND=y
CONFIG_SND=y
CONFIG_USB=y
diff --git a/configs/mender_x86_64_efi_defconfig b/configs/mender_x86_64_efi_defconfig
index 219f02839c..619122f5c9 100644
--- a/configs/mender_x86_64_efi_defconfig
+++ b/configs/mender_x86_64_efi_defconfig
@@ -1,5 +1,5 @@
BR2_x86_64=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_12=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_18=y
BR2_INIT_SYSV=y
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
@@ -9,7 +9,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/mender/x86_64/post-image-efi.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="--data-part-size=32M --device-type=buildroot-x86_64 --artifact-name=1.0"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.28"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.18.59"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/mender/x86_64/linux.config"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 09/14] board/mender: change device type to compatible-types
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
` (6 preceding siblings ...)
2026-10-27 16:40 ` [Buildroot] [PATCH v2 08/14] configs/mender_x86_64_efi_defconfig: bump kernel version to 6.18.59 Adam Duskett
@ 2026-10-27 16:40 ` Adam Duskett
2026-10-27 20:03 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 10/14] board/mender/x86_64/post-image-efi.sh: do not prepend artifact name to mender image Adam Duskett
` (5 subsequent siblings)
13 siblings, 1 reply; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:40 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
Newer versions of mender-artifact echo deprecation warnings when using
the --device-type argument and tell users to use --compatible-types.
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
board/mender/x86_64/post-build.sh | 12 ++++++------
board/mender/x86_64/post-image-efi.sh | 18 +++++++++---------
configs/mender_x86_64_efi_defconfig | 2 +-
.../tests/package/test_mender/post-build.sh | 6 +++---
4 files changed, 19 insertions(+), 19 deletions(-)
diff --git a/board/mender/x86_64/post-build.sh b/board/mender/x86_64/post-build.sh
index 9e909e9281..3989b58b42 100755
--- a/board/mender/x86_64/post-build.sh
+++ b/board/mender/x86_64/post-build.sh
@@ -1,11 +1,11 @@
#!/usr/bin/env bash
set -e
-DEVICE_TYPE="buildroot-x86_64"
+COMPATIBLE_TYPES="buildroot-x86_64"
parse_args() {
local o O opts
- o='a:o:d:'
- O='artifact-name:,data-part-size:,device-type:'
+ o='a:o:c:'
+ O='artifact-name:,data-part-size:,compatible-types:'
opts="$(getopt -o "${o}" -l "${O}" -- "${@}")"
eval set -- "${opts}"
while [ ${#} -gt 0 ]; do
@@ -14,8 +14,8 @@ parse_args() {
# Ignored to have same options as other scripts
shift 2
;;
- (-d|--device-type)
- DEVICE_TYPE="${2}"; shift 2
+ (-c|--compatible-types)
+ COMPATIBLE_TYPES="${2}"; shift 2
;;
(-a|--artifact-name)
# Ignored to have same options as other scripts
@@ -42,7 +42,7 @@ mender_fixup() {
main() {
parse_args "${@}"
mender_fixup
- echo "device_type=${DEVICE_TYPE}" > "${TARGET_DIR}/etc/mender/device_type"
+ echo "device_type=${COMPATIBLE_TYPES}" > "${TARGET_DIR}/etc/mender/device_type"
}
main "${@}"
diff --git a/board/mender/x86_64/post-image-efi.sh b/board/mender/x86_64/post-image-efi.sh
index a3e262f8fe..a1dccb25b3 100755
--- a/board/mender/x86_64/post-image-efi.sh
+++ b/board/mender/x86_64/post-image-efi.sh
@@ -3,14 +3,14 @@ set -e
BOARD_DIR="$(realpath "$(dirname "$0")")"
DATA_PART="${BINARIES_DIR}"/data-part
DATA_PART_SIZE="32M"
-DEVICE_TYPE="buildroot-x86_64"
+COMPATIBLE_TYPES="buildroot-x86_64"
ARTIFACT_NAME="1.0"
# Parse arguments.
parse_args() {
local o O opts
- o='a:o:d:'
- O='artifact-name:,data-part-size:,device-type:'
+ o='a:o:c:'
+ O='artifact-name:,data-part-size:,compatible-types:'
opts="$(getopt -o "${o}" -l "${O}" -- "${@}")"
eval set -- "${opts}"
while [ ${#} -gt 0 ]; do
@@ -18,8 +18,8 @@ parse_args() {
(-o|--data-part-size)
DATA_PART_SIZE="${2}"; shift 2
;;
- (-d|--device-type)
- DEVICE_TYPE="${2}"; shift 2
+ (-c|--compatible-types)
+ COMPATIBLE_TYPES="${2}"; shift 2
;;
(-a|--artifact-name)
ARTIFACT_NAME="${2}"; shift 2
@@ -55,7 +55,7 @@ generate_mender_bootstrap_artifact() {
write bootstrap-artifact \
--compression none \
--artifact-name "${ARTIFACT_NAME}" \
- --device-type "${DEVICE_TYPE}" \
+ --compatible-types "${COMPATIBLE_TYPES}" \
--provides "rootfs-image.version:${ARTIFACT_NAME}" \
--provides "rootfs-image.checksum:${img_checksum}" \
--clears-provides "rootfs-image.*" \
@@ -65,14 +65,14 @@ generate_mender_bootstrap_artifact() {
# Create a mender image.
generate_mender_image() {
- echo "Creating ${BINARIES_DIR}/${DEVICE_TYPE}-${ARTIFACT_NAME}.mender"
+ echo "Creating ${BINARIES_DIR}/${COMPATIBLE_TYPES}-${ARTIFACT_NAME}.mender"
"${HOST_DIR}/bin/mender-artifact" \
write rootfs-image \
--compression none \
- -t "${DEVICE_TYPE}" \
+ -c "${COMPATIBLE_TYPES}" \
-n "${BR2_VERSION}" \
-f "${BINARIES_DIR}/rootfs.ext2" \
- -o "${BINARIES_DIR}/${DEVICE_TYPE}-${ARTIFACT_NAME}.mender"
+ -o "${BINARIES_DIR}/${COMPATIBLE_TYPES}-${ARTIFACT_NAME}.mender"
}
generate_image() {
diff --git a/configs/mender_x86_64_efi_defconfig b/configs/mender_x86_64_efi_defconfig
index 619122f5c9..f10a461770 100644
--- a/configs/mender_x86_64_efi_defconfig
+++ b/configs/mender_x86_64_efi_defconfig
@@ -6,7 +6,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
BR2_ROOTFS_OVERLAY="board/mender/x86_64/overlay"
BR2_ROOTFS_POST_BUILD_SCRIPT="board/mender/x86_64/post-build.sh"
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/mender/x86_64/post-image-efi.sh"
-BR2_ROOTFS_POST_SCRIPT_ARGS="--data-part-size=32M --device-type=buildroot-x86_64 --artifact-name=1.0"
+BR2_ROOTFS_POST_SCRIPT_ARGS="--data-part-size=32M --compatible-types=buildroot-x86_64 --artifact-name=1.0"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.18.59"
diff --git a/support/testing/tests/package/test_mender/post-build.sh b/support/testing/tests/package/test_mender/post-build.sh
index 1afa231082..76698fb7d9 100755
--- a/support/testing/tests/package/test_mender/post-build.sh
+++ b/support/testing/tests/package/test_mender/post-build.sh
@@ -1,13 +1,13 @@
#!/usr/bin/env bash
set -e
-DEVICE_TYPE="buildroot-arm"
+COMPATIBLE_TYPE="buildroot-arm"
ARTIFACT_NAME="RUNTIME_TEST_ARTIFACT_NAME"
generate_mender_bootstrap_artifact() {
"${HOST_DIR}"/bin/mender-artifact \
write bootstrap-artifact \
--artifact-name "${ARTIFACT_NAME}" \
- --device-type "${DEVICE_TYPE}" \
+ --compatible-types "${COMPATIBLE_TYPE}" \
--provides "rootfs-image.version:${ARTIFACT_NAME}" \
--clears-provides "rootfs-image.*" \
--output-path "${TARGET_DIR}"/var/lib/mender/bootstrap.mender \
@@ -17,7 +17,7 @@ generate_mender_bootstrap_artifact() {
function mender_fixup() {
rm -rf "${TARGET_DIR}"/var/lib/mender
mkdir -p "${TARGET_DIR}"/var/lib/mender
- echo "device_type=${DEVICE_TYPE}" > "${TARGET_DIR}"/var/lib/mender/device_type
+ echo "device_type=${COMPATIBLE_TYPE}" > "${TARGET_DIR}"/var/lib/mender/device_type
}
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 10/14] board/mender/x86_64/post-image-efi.sh: do not prepend artifact name to mender image
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
` (7 preceding siblings ...)
2026-10-27 16:40 ` [Buildroot] [PATCH v2 09/14] board/mender: change device type to compatible-types Adam Duskett
@ 2026-10-27 16:40 ` Adam Duskett
2026-10-27 20:15 ` Thomas Petazzoni via buildroot
2026-10-27 20:46 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 11/14] board/mender/x86_64: add a udev rule to create /dev/root Adam Duskett
` (4 subsequent siblings)
13 siblings, 2 replies; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:40 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
Do not prepend ${COMPATIBLE_TYPES} to the user-specified artifact
name. Especially since compatible types can be added multiple times
to mender-artifact.
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
board/mender/x86_64/post-image-efi.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/board/mender/x86_64/post-image-efi.sh b/board/mender/x86_64/post-image-efi.sh
index a1dccb25b3..5f0b5a83ec 100755
--- a/board/mender/x86_64/post-image-efi.sh
+++ b/board/mender/x86_64/post-image-efi.sh
@@ -65,14 +65,14 @@ generate_mender_bootstrap_artifact() {
# Create a mender image.
generate_mender_image() {
- echo "Creating ${BINARIES_DIR}/${COMPATIBLE_TYPES}-${ARTIFACT_NAME}.mender"
+ echo "Creating ${BINARIES_DIR}/${ARTIFACT_NAME}.mender"
"${HOST_DIR}/bin/mender-artifact" \
write rootfs-image \
--compression none \
-c "${COMPATIBLE_TYPES}" \
-n "${BR2_VERSION}" \
-f "${BINARIES_DIR}/rootfs.ext2" \
- -o "${BINARIES_DIR}/${COMPATIBLE_TYPES}-${ARTIFACT_NAME}.mender"
+ -o "${BINARIES_DIR}/${ARTIFACT_NAME}.mender"
}
generate_image() {
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 11/14] board/mender/x86_64: add a udev rule to create /dev/root
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
` (8 preceding siblings ...)
2026-10-27 16:40 ` [Buildroot] [PATCH v2 10/14] board/mender/x86_64/post-image-efi.sh: do not prepend artifact name to mender image Adam Duskett
@ 2026-10-27 16:40 ` Adam Duskett
2026-10-27 20:44 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 12/14] test_mender/post-build.sh: add rootfs image checksum for bootstrap artifact Adam Duskett
` (3 subsequent siblings)
13 siblings, 1 reply; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:40 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
As /dev/root does not appear automatically, add a rule to
create /dev/root. Without this rule, even running a simple command
outputs the following warning:
```
WARN[0000] Could not resolve path link: /dev/root Attempting to continue
WARN[0000] Could not resolve path link: /dev/root Attempting to continue
```
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
.../mender/x86_64/overlay/etc/udev/rules.d/99-root-symlink.rules | 1 +
1 file changed, 1 insertion(+)
create mode 100644 board/mender/x86_64/overlay/etc/udev/rules.d/99-root-symlink.rules
diff --git a/board/mender/x86_64/overlay/etc/udev/rules.d/99-root-symlink.rules b/board/mender/x86_64/overlay/etc/udev/rules.d/99-root-symlink.rules
new file mode 100644
index 0000000000..7d2ae8cb89
--- /dev/null
+++ b/board/mender/x86_64/overlay/etc/udev/rules.d/99-root-symlink.rules
@@ -0,0 +1 @@
+SUBSYSTEM=="block", ACTION=="add|change", PROGRAM="/bin/grep -q root=/dev/%k /proc/cmdline", SYMLINK+="root"
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 12/14] test_mender/post-build.sh: add rootfs image checksum for bootstrap artifact
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
` (9 preceding siblings ...)
2026-10-27 16:40 ` [Buildroot] [PATCH v2 11/14] board/mender/x86_64: add a udev rule to create /dev/root Adam Duskett
@ 2026-10-27 16:40 ` Adam Duskett
2026-10-27 20:45 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 13/14] test_mender/post-build.sh: use /etc/mender/device_type Adam Duskett
` (2 subsequent siblings)
13 siblings, 1 reply; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:40 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
Just like the generate_mender_bootstrap_artifact method in
board/mender/x86_64/post-image-efi.sh, calculate the rootfs-image checksum.
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
support/testing/tests/package/test_mender/post-build.sh | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/support/testing/tests/package/test_mender/post-build.sh b/support/testing/tests/package/test_mender/post-build.sh
index 76698fb7d9..db075628e0 100755
--- a/support/testing/tests/package/test_mender/post-build.sh
+++ b/support/testing/tests/package/test_mender/post-build.sh
@@ -4,11 +4,15 @@ COMPATIBLE_TYPE="buildroot-arm"
ARTIFACT_NAME="RUNTIME_TEST_ARTIFACT_NAME"
generate_mender_bootstrap_artifact() {
+ img_checksum=$(sha256sum "${BINARIES_DIR}"/rootfs.cpio |awk '{print $1}')
+
"${HOST_DIR}"/bin/mender-artifact \
write bootstrap-artifact \
+ --compression none \
--artifact-name "${ARTIFACT_NAME}" \
--compatible-types "${COMPATIBLE_TYPE}" \
--provides "rootfs-image.version:${ARTIFACT_NAME}" \
+ --provides "rootfs-image.checksum:${img_checksum}" \
--clears-provides "rootfs-image.*" \
--output-path "${TARGET_DIR}"/var/lib/mender/bootstrap.mender \
--version 3
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 13/14] test_mender/post-build.sh: use /etc/mender/device_type
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
` (10 preceding siblings ...)
2026-10-27 16:40 ` [Buildroot] [PATCH v2 12/14] test_mender/post-build.sh: add rootfs image checksum for bootstrap artifact Adam Duskett
@ 2026-10-27 16:40 ` Adam Duskett
2026-10-27 20:47 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 14/14] package/mender: bump to version 5.2.0 Adam Duskett
2026-10-27 19:07 ` [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Thomas Petazzoni via buildroot
13 siblings, 1 reply; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:40 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
To keep parody with board/mender/x86_64/overlay/etc/mender/mender.conf,
change /var/lib/mender/device_type to /etc/mender/device_type and
add a /etc/mender/mender.conf file.
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
.../testing/tests/package/test_mender/post-build.sh | 3 +--
.../test_mender/rootfs-overlay/etc/mender/mender.conf | 11 +++++++++++
2 files changed, 12 insertions(+), 2 deletions(-)
create mode 100644 support/testing/tests/package/test_mender/rootfs-overlay/etc/mender/mender.conf
diff --git a/support/testing/tests/package/test_mender/post-build.sh b/support/testing/tests/package/test_mender/post-build.sh
index db075628e0..f27b0f9417 100755
--- a/support/testing/tests/package/test_mender/post-build.sh
+++ b/support/testing/tests/package/test_mender/post-build.sh
@@ -21,8 +21,7 @@ generate_mender_bootstrap_artifact() {
function mender_fixup() {
rm -rf "${TARGET_DIR}"/var/lib/mender
mkdir -p "${TARGET_DIR}"/var/lib/mender
- echo "device_type=${COMPATIBLE_TYPE}" > "${TARGET_DIR}"/var/lib/mender/device_type
-
+ echo "device_type=${COMPATIBLE_TYPE}" > "${TARGET_DIR}"/etc/mender/device_type
}
mender_fixup
diff --git a/support/testing/tests/package/test_mender/rootfs-overlay/etc/mender/mender.conf b/support/testing/tests/package/test_mender/rootfs-overlay/etc/mender/mender.conf
new file mode 100644
index 0000000000..5f423fb2cb
--- /dev/null
+++ b/support/testing/tests/package/test_mender/rootfs-overlay/etc/mender/mender.conf
@@ -0,0 +1,11 @@
+{
+ "InventoryPollIntervalSeconds": 1800,
+ "UpdatePollIntervalSeconds": 1800,
+ "RetryPollIntervalSeconds": 300,
+ "RootfsPartA": "/dev/vda2",
+ "RootfsPartB": "/dev/vda3",
+ "ServerCertificate": "/etc/mender/server.crt",
+ "ServerURL": "https://docker.mender.io",
+ "TenantToken": "dummy",
+ "DeviceTypeFile": "/etc/mender/device_type"
+}
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* [Buildroot] [PATCH v2 14/14] package/mender: bump to version 5.2.0
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
` (11 preceding siblings ...)
2026-10-27 16:40 ` [Buildroot] [PATCH v2 13/14] test_mender/post-build.sh: use /etc/mender/device_type Adam Duskett
@ 2026-10-27 16:40 ` Adam Duskett
2026-10-27 20:59 ` Thomas Petazzoni via buildroot
2026-10-27 19:07 ` [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Thomas Petazzoni via buildroot
13 siblings, 1 reply; 29+ messages in thread
From: Adam Duskett @ 2026-10-27 16:40 UTC (permalink / raw)
To: buildroot; +Cc: Adam Duskett, Angelo Compagnucci
Starting with Mender version 4, the program is rewritten from Go to C++ using
CMake.
The current package provided by Buildroot is 3.5.3, which is quite old, having
been released on 12/6/2024. Since then, several changes have occurred,
necessitating a substantially large patch with many changes all at once.
The following is a list of changes:
MAJOR:
- Mender is now a C++ project
- Mender depends on systemd
- Drops sysvinit support
- Mender is split into two binaries:
- mender-authd
- mender-updated
MINOR:
- Drop the 0001-openssl-v4-update.patch.
- OpenSSL 4.x is not in buildroot master yet.
- The following busyboxy options are required by the rootfs module and are
enabled by default:
- flock
- stat
- stat_format
- sync_fancy
- wget
- wget_https
- wget_openssl
Note: While sync_fancy isn't strictly necessary, enabling this feature
prevents several messages about sync ignoring all arguments.
- New dependencies are as follows:
- boost
- dbus
- libarchive
- libglib2
- lmdb
- openssl
- systemd
- yaml-cpp
The configs/mender_x86_64_efi_defconfig file is updated to
use systemd by default.
The support/testing/tests/package/test_mender.py is updated:
- Uses systemd
- Bumped kernel version to 6.18.59
- Adds a simple network as mender-authd requires network-online.target
- Drops sysvinit tests
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
board/mender/x86_64/linux.config | 11 +
board/mender/x86_64/readme.txt | 4 +-
configs/mender_x86_64_efi_defconfig | 7 +-
package/mender/0001-openssl-v4-update.patch | 191 ------------------
package/mender/Config.in | 40 ++--
package/mender/S42mender | 44 ----
package/mender/mender-client.service | 13 --
package/mender/mender.hash | 52 ++---
package/mender/mender.mk | 160 ++++++++-------
package/mender/server.crt | 22 --
support/testing/tests/package/test_mender.py | 96 ++++-----
.../package/test_mender/linux-e1000e.fragment | 1 +
12 files changed, 199 insertions(+), 442 deletions(-)
delete mode 100644 package/mender/0001-openssl-v4-update.patch
delete mode 100644 package/mender/S42mender
delete mode 100644 package/mender/mender-client.service
delete mode 100644 package/mender/server.crt
create mode 100644 support/testing/tests/package/test_mender/linux-e1000e.fragment
diff --git a/board/mender/x86_64/linux.config b/board/mender/x86_64/linux.config
index b758c6d45a..f980ec39ab 100644
--- a/board/mender/x86_64/linux.config
+++ b/board/mender/x86_64/linux.config
@@ -1,4 +1,8 @@
CONFIG_SYSVIPC=y
+CONFIG_CGROUPS=y
+CONFIG_CGROUP_SCHED=y
+CONFIG_CFS_BANDWIDTH=y
+CONFIG_USER_NS=y
CONFIG_SMP=y
CONFIG_HYPERVISOR_GUEST=y
CONFIG_PARAVIRT=y
@@ -15,18 +19,22 @@ CONFIG_NETFILTER_XTABLES_LEGACY=y
CONFIG_IP_NF_IPTABLES_LEGACY=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_FILTER=y
+CONFIG_NET_SCHED=y
+CONFIG_NET_SCH_FQ_CODEL=y
CONFIG_CFG80211=m
CONFIG_CFG80211_WEXT=y
CONFIG_MAC80211=m
CONFIG_PCI=y
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
+CONFIG_DMI_SYSFS=y
CONFIG_VIRTIO_BLK=y
CONFIG_BLK_DEV_SD=y
CONFIG_SCSI_VIRTIO=y
CONFIG_ATA=y
CONFIG_NETDEVICES=y
CONFIG_VIRTIO_NET=y
+CONFIG_E1000E=y
CONFIG_ATH9K=m
CONFIG_ATH9K_HTC=m
CONFIG_CARL9170=m
@@ -57,8 +65,11 @@ CONFIG_VIRTIO_INPUT=y
CONFIG_VIRTIO_MMIO=y
CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
CONFIG_EXT4_FS=y
+CONFIG_AUTOFS_FS=y
CONFIG_FUSE_FS=y
CONFIG_VFAT_FS=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
CONFIG_SQUASHFS=y
CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_ISO8859_1=y
diff --git a/board/mender/x86_64/readme.txt b/board/mender/x86_64/readme.txt
index 01a0254511..01cf4077b7 100644
--- a/board/mender/x86_64/readme.txt
+++ b/board/mender/x86_64/readme.txt
@@ -53,12 +53,12 @@ Optional arguments:
The login prompt will appear in the serial window.
-Tested with QEMU 4.1.1 on Fedora 31
+Tested with QEMU 10.2.2 on Fedora 44
Creating a mender-artifact
========================
-The mender artifact is created in output/images/buildroot-x86_64-1.0.mender
+The mender artifact is created in output/images/1.0.mender
You may wish to change --artifact-name=1.0 to a name that best suits your
particular needs, as this option changes the mender artifact name.
diff --git a/configs/mender_x86_64_efi_defconfig b/configs/mender_x86_64_efi_defconfig
index f10a461770..1c65dff4d9 100644
--- a/configs/mender_x86_64_efi_defconfig
+++ b/configs/mender_x86_64_efi_defconfig
@@ -1,7 +1,7 @@
BR2_x86_64=y
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_18=y
-BR2_INIT_SYSV=y
-BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
+BR2_TOOLCHAIN_BUILDROOT_CXX=y
+BR2_INIT_SYSTEMD=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
BR2_ROOTFS_OVERLAY="board/mender/x86_64/overlay"
BR2_ROOTFS_POST_BUILD_SCRIPT="board/mender/x86_64/post-build.sh"
@@ -15,6 +15,7 @@ BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/mender/x86_64/linux.config"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
+BR2_PACKAGE_JQ=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9170=y
BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9271=y
@@ -42,7 +43,7 @@ BR2_PACKAGE_MENDER_GRUBENV=y
BR2_PACKAGE_MENDER_GRUBENV_DEFINES="board/mender/x86_64/mender_grubenv_defines"
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
-BR2_TARGET_ROOTFS_EXT2_SIZE="128M"
+BR2_TARGET_ROOTFS_EXT2_SIZE="256M"
# BR2_TARGET_ROOTFS_TAR is not set
BR2_TARGET_GRUB2=y
BR2_TARGET_GRUB2_X86_64_EFI=y
diff --git a/package/mender/0001-openssl-v4-update.patch b/package/mender/0001-openssl-v4-update.patch
deleted file mode 100644
index 65443614d5..0000000000
--- a/package/mender/0001-openssl-v4-update.patch
+++ /dev/null
@@ -1,191 +0,0 @@
-Description: Fix build compatibility with OpenSSL 4.0
- Include <openssl/x509v3.h> in hostname.c and hostname.go before checking
- #ifndef X509_CHECK_FLAG_ALWAYS_CHECK_SUBJECT, preventing fallback to
- legacy OpenSSL < 1.0.2 code that attempts to directly access opaque
- ASN1_STRING fields.
- Also add preprocessor guards around deprecated protocol methods
- (SSLv3_method, TLSv1_method, TLSv1_1_method, TLSv1_2_method) in shim.c
- and ENGINE functions (ENGINE_by_id, ENGINE_init, ENGINE_free,
- ENGINE_finish, ENGINE_load_private_key, ENGINE_load_builtin_engines)
- in shim.c, shim.h, engine.go, key.go to prevent implicit declaration
- and undefined reference errors when building against OpenSSL 4.0.
-Author: Frank Heimes <frank.heimes@canonical.com>
-
-Downloaded from Ubuntu:
-https://git.launchpad.net/ubuntu/+source/golang-github-mendersoftware-openssl/tree/debian/patches/0004-openssl-v4-update.patch?h=applied/ubuntu/stonking-devel
-
-Upstream: not applicable, upstream moved to c++ in newer versions
-
-[Bernd: rebased for vendored download by buildroot infra]
-Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
-
-diff -uNr mender-3.5.3.orig/vendor/github.com/mendersoftware/openssl/engine.go mender-3.5.3/vendor/github.com/mendersoftware/openssl/engine.go
---- mender-3.5.3.orig/vendor/github.com/mendersoftware/openssl/engine.go 2024-05-24 12:07:27.000000000 +0200
-+++ mender-3.5.3/vendor/github.com/mendersoftware/openssl/engine.go 2026-09-20 18:37:50.270612314 +0200
-@@ -15,6 +15,7 @@
- package openssl
-
- /*
-+#include "shim.h"
- #include "openssl/engine.h"
- */
- import "C"
-@@ -33,18 +34,18 @@
- cname := C.CString(name)
- defer C.free(unsafe.Pointer(cname))
- e := &Engine{
-- e: C.ENGINE_by_id(cname),
-+ e: C.X_ENGINE_by_id(cname),
- }
- if e.e == nil {
- return nil, fmt.Errorf("engine %s missing", name)
- }
-- if C.ENGINE_init(e.e) == 0 {
-- C.ENGINE_free(e.e)
-+ if C.X_ENGINE_init(e.e) == 0 {
-+ C.X_ENGINE_free(e.e)
- return nil, fmt.Errorf("engine %s not initialized", name)
- }
- runtime.SetFinalizer(e, func(e *Engine) {
-- C.ENGINE_finish(e.e)
-- C.ENGINE_free(e.e)
-+ C.X_ENGINE_finish(e.e)
-+ C.X_ENGINE_free(e.e)
- })
- return e, nil
- }
-diff -uNr mender-3.5.3.orig/vendor/github.com/mendersoftware/openssl/hostname.c mender-3.5.3/vendor/github.com/mendersoftware/openssl/hostname.c
---- mender-3.5.3.orig/vendor/github.com/mendersoftware/openssl/hostname.c 2024-05-24 12:07:27.000000000 +0200
-+++ mender-3.5.3/vendor/github.com/mendersoftware/openssl/hostname.c 2026-09-20 18:32:37.854514981 +0200
-@@ -6,6 +6,7 @@
- */
-
- #include <openssl/x509.h>
-+#include <openssl/x509v3.h>
-
- #ifndef X509_CHECK_FLAG_ALWAYS_CHECK_SUBJECT
-
-diff -uNr mender-3.5.3.orig/vendor/github.com/mendersoftware/openssl/key.go mender-3.5.3/vendor/github.com/mendersoftware/openssl/key.go
---- mender-3.5.3.orig/vendor/github.com/mendersoftware/openssl/key.go 2024-05-24 12:07:27.000000000 +0200
-+++ mender-3.5.3/vendor/github.com/mendersoftware/openssl/key.go 2026-09-20 18:38:13.462370202 +0200
-@@ -303,7 +303,7 @@
- keyID := C.CString(id)
- defer C.free(unsafe.Pointer(keyID))
-
-- key := C.ENGINE_load_private_key(e.e, keyID, nil, nil)
-+ key := C.X_ENGINE_load_private_key(e.e, keyID, nil, nil)
- if key == nil {
- return nil, errors.New("cannot load private key, ENGINE_load_private_key error")
- }
-diff -uNr mender-3.5.3.orig/vendor/github.com/mendersoftware/openssl/shim.c mender-3.5.3/vendor/github.com/mendersoftware/openssl/shim.c
---- mender-3.5.3.orig/vendor/github.com/mendersoftware/openssl/shim.c 2024-05-24 12:07:27.000000000 +0200
-+++ mender-3.5.3/vendor/github.com/mendersoftware/openssl/shim.c 2026-09-20 18:36:02.855038372 +0200
-@@ -382,7 +382,9 @@
- int rc = 0;
-
- OPENSSL_config(NULL);
-+#if OPENSSL_VERSION_NUMBER < 0x40000000L && !defined(OPENSSL_NO_ENGINE)
- ENGINE_load_builtin_engines();
-+#endif
- SSL_load_error_strings();
- SSL_library_init();
- OpenSSL_add_all_algorithms();
-@@ -403,6 +405,46 @@
- return 0;
- }
-
-+ENGINE *X_ENGINE_by_id(const char *id) {
-+#if OPENSSL_VERSION_NUMBER < 0x40000000L && !defined(OPENSSL_NO_ENGINE)
-+ return ENGINE_by_id(id);
-+#else
-+ return NULL;
-+#endif
-+}
-+
-+int X_ENGINE_init(ENGINE *e) {
-+#if OPENSSL_VERSION_NUMBER < 0x40000000L && !defined(OPENSSL_NO_ENGINE)
-+ return ENGINE_init(e);
-+#else
-+ return 0;
-+#endif
-+}
-+
-+int X_ENGINE_free(ENGINE *e) {
-+#if OPENSSL_VERSION_NUMBER < 0x40000000L && !defined(OPENSSL_NO_ENGINE)
-+ return ENGINE_free(e);
-+#else
-+ return 0;
-+#endif
-+}
-+
-+int X_ENGINE_finish(ENGINE *e) {
-+#if OPENSSL_VERSION_NUMBER < 0x40000000L && !defined(OPENSSL_NO_ENGINE)
-+ return ENGINE_finish(e);
-+#else
-+ return 0;
-+#endif
-+}
-+
-+EVP_PKEY *X_ENGINE_load_private_key(ENGINE *e, const char *key_id, UI_METHOD *ui_method, void *callback_data) {
-+#if OPENSSL_VERSION_NUMBER < 0x40000000L && !defined(OPENSSL_NO_ENGINE)
-+ return ENGINE_load_private_key(e, key_id, ui_method, callback_data);
-+#else
-+ return NULL;
-+#endif
-+}
-+
- void * X_OPENSSL_malloc(size_t size) {
- return OPENSSL_malloc(size);
- }
-@@ -480,7 +522,7 @@
- }
-
- const SSL_METHOD *X_SSLv3_method() {
--#ifndef OPENSSL_NO_SSL3_METHOD
-+#if OPENSSL_VERSION_NUMBER < 0x40000000L && !defined(OPENSSL_NO_SSL3_METHOD) && !defined(OPENSSL_NO_DEPRECATED_1_1_0) && !defined(OPENSSL_NO_DEPRECATED_3_0)
- return SSLv3_method();
- #else
- return NULL;
-@@ -488,11 +530,15 @@
- }
-
- const SSL_METHOD *X_TLSv1_method() {
-+#if OPENSSL_VERSION_NUMBER < 0x40000000L && !defined(OPENSSL_NO_TLS1_METHOD) && !defined(OPENSSL_NO_DEPRECATED_1_1_0) && !defined(OPENSSL_NO_DEPRECATED_3_0)
- return TLSv1_method();
-+#else
-+ return NULL;
-+#endif
- }
-
- const SSL_METHOD *X_TLSv1_1_method() {
--#if defined(TLS1_1_VERSION) && !defined(OPENSSL_SYSNAME_MACOSX)
-+#if OPENSSL_VERSION_NUMBER < 0x40000000L && defined(TLS1_1_VERSION) && !defined(OPENSSL_SYSNAME_MACOSX) && !defined(OPENSSL_NO_TLS1_1_METHOD) && !defined(OPENSSL_NO_DEPRECATED_1_1_0) && !defined(OPENSSL_NO_DEPRECATED_3_0)
- return TLSv1_1_method();
- #else
- return NULL;
-@@ -500,7 +546,7 @@
- }
-
- const SSL_METHOD *X_TLSv1_2_method() {
--#if defined(TLS1_2_VERSION) && !defined(OPENSSL_SYSNAME_MACOSX)
-+#if OPENSSL_VERSION_NUMBER < 0x40000000L && defined(TLS1_2_VERSION) && !defined(OPENSSL_SYSNAME_MACOSX) && !defined(OPENSSL_NO_TLS1_2_METHOD) && !defined(OPENSSL_NO_DEPRECATED_1_1_0) && !defined(OPENSSL_NO_DEPRECATED_3_0)
- return TLSv1_2_method();
- #else
- return NULL;
-diff -uNr mender-3.5.3.orig/vendor/github.com/mendersoftware/openssl/shim.h mender-3.5.3/vendor/github.com/mendersoftware/openssl/shim.h
---- mender-3.5.3.orig/vendor/github.com/mendersoftware/openssl/shim.h 2024-05-24 12:07:27.000000000 +0200
-+++ mender-3.5.3/vendor/github.com/mendersoftware/openssl/shim.h 2026-09-20 18:38:33.117854985 +0200
-@@ -40,6 +40,13 @@
- /* shim methods */
- extern int X_shim_init();
-
-+/* Engine methods */
-+extern ENGINE *X_ENGINE_by_id(const char *id);
-+extern int X_ENGINE_init(ENGINE *e);
-+extern int X_ENGINE_free(ENGINE *e);
-+extern int X_ENGINE_finish(ENGINE *e);
-+extern EVP_PKEY *X_ENGINE_load_private_key(ENGINE *e, const char *key_id, UI_METHOD *ui_method, void *callback_data);
-+
- /* Library methods */
- extern void X_OPENSSL_free(void *ref);
- extern void *X_OPENSSL_malloc(size_t size);
diff --git a/package/mender/Config.in b/package/mender/Config.in
index c9b9d0b757..d4685986be 100644
--- a/package/mender/Config.in
+++ b/package/mender/Config.in
@@ -1,9 +1,21 @@
config BR2_PACKAGE_MENDER
bool "mender"
- depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
- depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
- depends on BR2_TOOLCHAIN_HAS_THREADS
- select BR2_PACKAGE_HOST_GO
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # yaml-cpp -> C++11
+ depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # boost-log
+ depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-log
+ depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-log
+ depends on BR2_USE_MMU # libglib2
+ depends on BR2_USE_WCHAR # libglib2
+ depends on BR2_PACKAGE_SYSTEMD
+ select BR2_PACKAGE_BOOST
+ select BR2_PACKAGE_BOOST_FILESYSTEM
+ select BR2_PACKAGE_BOOST_LOG
+ select BR2_PACKAGE_CA_CERTIFICATES
+ select BR2_PACKAGE_LIBARCHIVE
+ select BR2_PACKAGE_LIBGLIB2
+ select BR2_PACKAGE_YAML_CPP
+ select BR2_PACKAGE_LMDB
select BR2_PACKAGE_OPENSSL
select BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL
select BR2_PACKAGE_LIBOPENSSL_ENGINES
@@ -21,16 +33,13 @@ config BR2_PACKAGE_MENDER
- uboot-tools must be selected.
- fw_printenv must be functional on the device.
The Mender Uboot patches are at:
- https://github.com/mendersoftware/meta-mender/
+ https://github.com/mendersoftware/meta-mender/tree/master/meta-mender-core/recipes-bsp/u-boot/patches
For more information on Manual U-Boot integration, see:
- https://docs.mender.io/2.6/system-updates-yocto-project/board-integration/bootloader-support/u-boot/manual-u-boot-integration
+ https://docs.mender.io/3.4/system-updates-yocto-project/board-integration/bootloader-support/u-boot/manual-u-boot-integration
For systems using Grub2 as the bootloader:
- Mender depends on the mender-grubenv package.
- - The mender-grubenv package provides a fw_printenv script,
- which is not compatible with the uboot-tools fw_printenv
- script.
The mender project recommends using uboot to load Grub2 as a
secondary bootloader whenever possible. Using Grub2 as a
@@ -39,7 +48,12 @@ config BR2_PACKAGE_MENDER
https://github.com/mendersoftware/mender
-comment "mender needs a toolchain w/ threads"
- depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
- depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
- depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "mender needs systemd"
+ depends on !BR2_PACKAGE_SYSTEMD
+
+comment "mender needs a toolchain w/ C++, NPTL, wchar, not affected by GCC bug 64735"
+ depends on BR2_USE_MMU
+ depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
+ depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
+ !BR2_TOOLCHAIN_HAS_THREADS_NPTL
diff --git a/package/mender/S42mender b/package/mender/S42mender
deleted file mode 100644
index 70116ed4eb..0000000000
--- a/package/mender/S42mender
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/bin/sh
-#
-# Starts mender service.
-#
-DAEMON="mender"
-DAEMON_PATH="/usr/bin/mender"
-PIDFILE="/var/run/${DAEMON}.pid"
-DAEMON_ARGS="daemon"
-
-start() {
- printf "Starting mender service: "
- umask 077
- start-stop-daemon -bmSqp "$PIDFILE" -x ${DAEMON_PATH} -- ${DAEMON_ARGS}
- status=$?
- [ "${status}" = 0 ] && echo "OK" || echo "FAIL"
-}
-
-stop() {
- printf "Stopping mender service: "
- start-stop-daemon -Kqp "$PIDFILE"
- status=$?
- [ "${status}" = 0 ] && echo "OK" || echo "FAIL"
-}
-restart() {
- stop
- start
-}
-
-case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- restart|reload)
- restart
- ;;
- *)
- echo "Usage: $0 {start|stop|reload|restart}"
- exit 1
-esac
-
-exit $?
diff --git a/package/mender/mender-client.service b/package/mender/mender-client.service
deleted file mode 100644
index 47e439993c..0000000000
--- a/package/mender/mender-client.service
+++ /dev/null
@@ -1,13 +0,0 @@
-[Unit]
-Description=Mender OTA update service
-After=systemd-resolved.service
-
-[Service]
-Type=idle
-User=root
-Group=root
-ExecStart=/usr/bin/mender daemon
-Restart=on-abort
-
-[Install]
-WantedBy=multi-user.target
diff --git a/package/mender/mender.hash b/package/mender/mender.hash
index 17fe08c827..1aa8fb63bd 100644
--- a/package/mender/mender.hash
+++ b/package/mender/mender.hash
@@ -1,47 +1,27 @@
# Locally computed:
-sha256 35e369759b8d4f012153e538b5daf1e0cebe842205811e708332c5a092270ac5 mender-3.5.3-go2.tar.gz
+sha256 436ae559358f29c672b98ca77b953936ba6ef51455466fb5ed0ced7ae77fc226 mender-5.2.0.tar.gz
+sha256 4d3409e4f8f7f3b9de5da7fee7c03e36a2381a02b2e318702485fc993a735cc9 LIC_FILES_CHKSUM.sha256
# Vendor licenses
# Generated with sed '/^[A-Za-z0-9_]/s/^/sha256 /' LIC_FILES_CHKSUM.sha256
# Apache-2.0 license.
-sha256 d0f406b04e7901e6b4076bdf5fd20f9d7f04fc41681069fd8954413ac6295688 LICENSE
-sha256 52b2497ce07650b825015e80ca7a5d40c360c04c530234ca6d950b0f98bca23a vendor/github.com/mendersoftware/mender-artifact/LICENSE
-sha256 73ba74dfaa520b49a401b5d21459a8523a146f3b7518a833eea5efa85130bf68 vendor/github.com/mendersoftware/openssl/LICENSE
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 vendor/github.com/minio/sha256-simd/LICENSE
-sha256 8f5d89b47d7a05a199b77b7e0f362dad391d451ebda4ef48ba11c50c071564c7 vendor/github.com/mendersoftware/progressbar/LICENSE
+sha256 d7e8fd4ad05371007d60285c309ba7a7ce3e61029b843f949fbb9ec79dc9eb47 LICENSE
#
-# BSD 2 Clause license.
-sha256 8d427fd87bc9579ea368fde3d49f9ca22eac857f91a9dec7e3004bdfab7dee86 vendor/github.com/pkg/errors/LICENSE
-sha256 e4646a82a976369d7ae8f6ed5c11d35dc0af18433a8ccc24c85b459ad8b95128 vendor/github.com/godbus/dbus/LICENSE
-sha256 2be1b548b0387ca8948e1bb9434e709126904d15f622cc2d0d8e7f186e4d122d vendor/github.com/gorilla/websocket/LICENSE
+# MIT clause license
+sha256 d64d1b4d948aa7751cfb613c02dc246aab7b358d760053e6580f01affe946906 src/common/vendor/json/LICENSE.MIT
+sha256 7920c8620b1e073a79a667c44f9149c25724eb9f0f6b220b3c8d9564e2d40a43 src/common/vendor/json/docs/mkdocs/docs/home/license.md
+sha256 2aefa40fa7e1c0fab18fbad5b15b02406eea1399d3cca42cc1012b65b4a56f74 src/common/vendor/tiny-process-library/LICENSE
+sha256 aa6fcc27be034e41e21dd832f9175bfe694a48491d9e14ff0fa278e19ad14f1b src/common/vendor/yaml-cpp/LICENSE
#
-# BSD 3 Clause license.
-sha256 0d9e582ee4bff57bf1189c9e514e6da7ce277f9cd3bc2d488b22fbb39a6d87cf vendor/github.com/klauspost/compress/LICENSE
-sha256 2eb550be6801c1ea434feba53bf6d12e7c71c90253e0a9de4a4f46cf88b56477 vendor/github.com/pmezard/go-difflib/LICENSE
-sha256 2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067 vendor/golang.org/x/sys/LICENSE
-sha256 0634b008cee55ca01f0888d2f5aba2d34e66c3f52c31a4e16a5d5d33d0c2a03e vendor/github.com/bmatsuo/lmdb-go/LICENSE.md
-sha256 87640bc4df2ceb1559f268a3db1ba859ab780f7ba5b1b4545173d4680a3d918b vendor/github.com/remyoudompheng/go-liblzma/LICENSE
-sha256 2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067 vendor/golang.org/x/term/LICENSE
+# UNLICENSE
+sha256 7e12e5df4bae12cb21581ba157ced20e1986a0508dd10d0e8a4ab9a4cf94e85c src/common/vendor/lmdbxx/UNLICENSE
#
-# ISC license.
-sha256 1b93a317849ee09d3d7e4f1d20c2b78ddb230b4becb12d7c224c927b9d470251 vendor/github.com/davecgh/go-spew/LICENSE
+# CC0 1.0 Universal
+sha256 a2010f343487d3f7618affe54f789f5487602331c0a8d03f49e9a7c547cf0499 src/common/vendor/expected/COPYING
#
-# MIT license.
-sha256 6d2de1cde19c4d2bd8bcd9aaa1d581f4cfa3db9cf71896140330eaa2f2687685 vendor/github.com/klauspost/pgzip/LICENSE
-sha256 f69f157b0be75da373605dbc8bbf142e8924ee82d8f44f11bcaf351335bf98cf vendor/github.com/klauspost/compress/internal/snapref/LICENSE
-sha256 f566a9f97bacdaf00d9f21dd991e81dc11201c4e016c86b470799429a1c9a79c vendor/github.com/klauspost/compress/zstd/internal/xxhash/LICENSE.txt
-sha256 5d966570d7a442d4e969892860a914e542c97f262c873baee8f0aa48e1f40212 vendor/github.com/klauspost/cpuid/v2/LICENSE
-sha256 51a0c9ec7f8b7634181b8d4c03e5b5d204ac21d6e72f46c313973424664b2e6b vendor/github.com/sirupsen/logrus/LICENSE
-sha256 f8e536c1c7b695810427095dc85f5f80d44ff7c10535e8a9486cf393e2599189 vendor/github.com/stretchr/testify/LICENSE
-sha256 ffa15bdce332058a03a1d923910864fb6e58bf6df66a0e3914284725b327183e vendor/github.com/ungerik/go-sysfs/LICENSE
-sha256 da277af11b85227490377fbcac6afccc68be560c4fff36ac05ca62de55345fd7 vendor/github.com/urfave/cli/v2/LICENSE
-sha256 b2663894033a05fd80261176cd8da1d72546e25842d5c1abcc852ca23b6b61b0 vendor/github.com/stretchr/objx/LICENSE
-sha256 d18f6323b71b0b768bb5e9616e36da390fbd39369a81807cca352de4e4e6aa0b vendor/gopkg.in/yaml.v3/LICENSE
-sha256 08eab1118c80885fa1fa6a6dd7303f65a379fcb3733e063d20d1bbc2c76e6fa1 vendor/github.com/mattn/go-isatty/LICENSE
+# Boost Software License
+sha256 c9bff75738922193e67fa726fa225535870d2aa1059f91452c411736284ad566 src/common/vendor/optional-lite/LICENSE.txt
#
-# OpenLDAP Public License
-sha256 310fe25c858a9515fc8c8d7d1f24a67c9496f84a91e0a0e41ea9975b1371e569 vendor/github.com/bmatsuo/lmdb-go/LICENSE.mdb.md
-
-# sha256 of all the vendor licenses combined
-sha256 86407bd98d5ea7fb0f09ab771c3333e975d06565b809a2dd95f864dc1e3a09b3 LIC_FILES_CHKSUM.sha256
+# BSD-3
+sha256 9702de7e4117a8e2b20dafab11ffda58c198aede066406496bef670d40a22138 src/common/vendor/yaml-cpp/test/googletest-1.16.0/LICENSE
diff --git a/package/mender/mender.mk b/package/mender/mender.mk
index 76dc28d547..03e59f6a73 100644
--- a/package/mender/mender.mk
+++ b/package/mender/mender.mk
@@ -4,107 +4,121 @@
#
################################################################################
-MENDER_VERSION = 3.5.3
-MENDER_SITE = $(call github,mendersoftware,mender,$(MENDER_VERSION))
-MENDER_LICENSE = Apache-2.0, BSD-2-Clause, BSD-3-Clause, ISC, MIT, OLDAP-2.8
+MENDER_VERSION = 5.2.0
+MENDER_SITE = https://github.com/mendersoftware/mender/releases/download/$(MENDER_VERSION)
+MENDER_LICENSE = Apache-2.0, BSL-1.0, BSD-3-Clause, CC0-1.0, MIT, Unlicense
MENDER_CPE_ID_VENDOR = northern.tech
-# CVE-2024-46948 only affects mender-server
-MENDER_IGNORE_CVES = CVE-2024-46948
# Vendor license paths generated with:
# awk '{print $2}' LIC_FILES_CHKSUM.sha256 | grep vendor
MENDER_LICENSE_FILES = \
LICENSE \
LIC_FILES_CHKSUM.sha256 \
- vendor/github.com/mendersoftware/mender-artifact/LICENSE \
- vendor/github.com/mendersoftware/openssl/LICENSE \
- vendor/github.com/minio/sha256-simd/LICENSE \
- vendor/github.com/mendersoftware/progressbar/LICENSE \
- vendor/github.com/pkg/errors/LICENSE \
- vendor/github.com/godbus/dbus/LICENSE \
- vendor/github.com/gorilla/websocket/LICENSE \
- vendor/github.com/klauspost/compress/LICENSE \
- vendor/github.com/pmezard/go-difflib/LICENSE \
- vendor/golang.org/x/sys/LICENSE \
- vendor/github.com/bmatsuo/lmdb-go/LICENSE.md \
- vendor/github.com/remyoudompheng/go-liblzma/LICENSE \
- vendor/golang.org/x/term/LICENSE \
- vendor/github.com/davecgh/go-spew/LICENSE \
- vendor/github.com/klauspost/pgzip/LICENSE \
- vendor/github.com/klauspost/compress/internal/snapref/LICENSE \
- vendor/github.com/klauspost/compress/zstd/internal/xxhash/LICENSE.txt \
- vendor/github.com/klauspost/cpuid/v2/LICENSE \
- vendor/github.com/sirupsen/logrus/LICENSE \
- vendor/github.com/stretchr/testify/LICENSE \
- vendor/github.com/ungerik/go-sysfs/LICENSE \
- vendor/github.com/urfave/cli/v2/LICENSE \
- vendor/github.com/stretchr/objx/LICENSE \
- vendor/gopkg.in/yaml.v3/LICENSE \
- vendor/github.com/mattn/go-isatty/LICENSE \
- vendor/github.com/bmatsuo/lmdb-go/LICENSE.mdb.md
-
-MENDER_DEPENDENCIES = host-pkgconf openssl
-
-MENDER_LDFLAGS = -X github.com/mendersoftware/mender/conf.Version=$(MENDER_VERSION)
-
-MENDER_UPDATE_MODULES_FILES = directory single-file
+ src/common/vendor/json/LICENSE.MIT \
+ src/common/vendor/json/docs/mkdocs/docs/home/license.md \
+ src/common/vendor/tiny-process-library/LICENSE \
+ src/common/vendor/yaml-cpp/LICENSE \
+ src/common/vendor/lmdbxx/UNLICENSE \
+ src/common/vendor/expected/COPYING \
+ src/common/vendor/optional-lite/LICENSE.txt \
+ src/common/vendor/yaml-cpp/test/googletest-1.16.0/LICENSE
+
+MENDER_DEPENDENCIES += \
+ host-pkgconf \
+ boost \
+ dbus \
+ libarchive \
+ libglib2 \
+ lmdb \
+ openssl \
+ systemd \
+ yaml-cpp
+
+MENDER_INSTALL_TARGET_OPTS = \
+ install-bin \
+ install-dbus \
+ install-dbus-service-files \
+ install-identity-scripts \
+ install-inventory-network-scripts \
+ install-inventory-scripts \
+ install-modules \
+ install-rootfs-image-module \
+ install-systemd
define MENDER_INSTALL_CONFIG_FILES
- $(INSTALL) -d -m 755 $(TARGET_DIR)/etc/mender/scripts
- echo -n "3" > $(TARGET_DIR)/etc/mender/scripts/version
-
$(INSTALL) -D -m 0644 $(MENDER_PKGDIR)/mender.conf \
$(TARGET_DIR)/etc/mender/mender.conf
- $(INSTALL) -D -m 0644 $(MENDER_PKGDIR)/server.crt \
- $(TARGET_DIR)/etc/mender/server.crt
- $(INSTALL) -D -m 0755 $(@D)/support/mender-device-identity \
- $(TARGET_DIR)/usr/share/mender/identity/mender-device-identity
- $(foreach f,bootloader-integration hostinfo network os rootfs-type, \
- $(INSTALL) -D -m 0755 $(@D)/support/mender-inventory-$(f) \
- $(TARGET_DIR)/usr/share/mender/inventory/mender-inventory-$(f)
- )
+ $(INSTALL) -D -m 0644 $(@D)/support/demo.crt \
+ $(TARGET_DIR)/etc/mender/server.crt
$(INSTALL) -D -m 0755 $(MENDER_PKGDIR)/device_type \
$(TARGET_DIR)/etc/mender/device_type
- mkdir -p $(TARGET_DIR)/var/lib/mender
- $(foreach f,$(MENDER_UPDATE_MODULES_FILES), \
- $(INSTALL) -D -m 0755 $(@D)/support/modules/$(notdir $(f)) \
- $(TARGET_DIR)/usr/share/mender/modules/v3/$(notdir $(f))
- )
+ mkdir -p $(TARGET_DIR)/var/lib
endef
-
MENDER_POST_INSTALL_TARGET_HOOKS += MENDER_INSTALL_CONFIG_FILES
+MENDER_CONF_OPTS += \
+ -DMENDER_EMBED_MENDER_AUTH=OFF \
+ -DMENDER_USE_DBUS=ON \
+ -DMENDER_DOWNLOAD_GTEST=OFF \
+ -DMENDER_VERSION=$(MENDER_VERSION)
+
+ifeq ($(BR2_PACKAGE_GZIP),y)
+MENDER_DEPENDENCIES += gzip
+MENDER_CONF_OPTS += -DMENDER_ARTIFACT_GZIP_COMPRESSION=ON
+else
+MENDER_CONF_OPTS += -DMENDER_ARTIFACT_GZIP_COMPRESSION=OFF
+endif
+
ifeq ($(BR2_PACKAGE_XZ),y)
MENDER_DEPENDENCIES += xz
+MENDER_CONF_OPTS += -DMENDER_ARTIFACT_LZMA_COMPRESSION=ON
else
-MENDER_TAGS += nolzma
+MENDER_CONF_OPTS += -DMENDER_ARTIFACT_LZMA_COMPRESSION=OFF
endif
-ifeq ($(BR2_PACKAGE_DBUS)$(BR2_PACKAGE_LIBGLIB2),yy)
-MENDER_DEPENDENCIES += libglib2
-define MENDER_INSTALL_DBUS_AUTHENTICATION_MANAGER_CONF
- $(INSTALL) -D -m 0755 $(@D)/support/dbus/io.mender.AuthenticationManager.conf \
- $(TARGET_DIR)/etc/dbus-1/system.d/io.mender.AuthenticationManager.conf
-
- $(INSTALL) -D -m 0755 $(@D)/support/dbus/io.mender.UpdateManager.conf \
- $(TARGET_DIR)/etc/dbus-1/system.d/io.mender.UpdateManager.conf
-endef
-MENDER_POST_INSTALL_TARGET_HOOKS += MENDER_INSTALL_DBUS_AUTHENTICATION_MANAGER_CONF
+ifeq ($(BR2_PACKAGE_ZSTD),y)
+MENDER_DEPENDENCIES += zstd
+MENDER_CONF_OPTS += -DMENDER_ARTIFACT_ZSTD_COMPRESSION=ON
else
-MENDER_TAGS += nodbus
+MENDER_CONF_OPTS += -DMENDER_ARTIFACT_ZSTD_COMPRESSION=OFF
endif
-define MENDER_INSTALL_INIT_SYSTEMD
- $(INSTALL) -D -m 0644 $(MENDER_PKGDIR)/mender-client.service \
- $(TARGET_DIR)/usr/lib/systemd/system/mender-client.service
+define MENDER_INSTALL_MODULES_GEN
+ DESTDIR=$(HOST_DIR) \
+ $(BR2_MAKE) -C $(@D) \
+ install-modules-gen
+endef
+MENDER_POST_INSTALL_TARGET_HOOKS += += MENDER_INSTALL_MODULES_GEN
+
+# Cmake does not install libtiny-process-library leading to the error:
+# libtiny-process-library.so: cannot open shared object file
+define MENDER_INSTALL_LIBTINY_PROC_SO
+ $(INSTALL) -D -m 0755 \
+ $(@D)/src/common/vendor/tiny-process-library/libtiny-process-library.so \
+ $(TARGET_DIR)/usr/lib/libtiny-process-library.so
+endef
+MENDER_POST_INSTALL_TARGET_HOOKS += MENDER_INSTALL_LIBTINY_PROC_SO
+
+define MENDER_INSTALL_TARGET_CMDS
+ $(TARGET_MAKE_ENV) \
+ $(TARGET_BUILD_ENV) \
+ DESTDIR=$(TARGET_DIR) \
+ $(BR2_MAKE) -C $(@D) \
+ $(MENDER_INSTALL_TARGET_OPTS)
endef
-define MENDER_INSTALL_INIT_SYSV
- $(INSTALL) -D -m 755 $(MENDER_PKGDIR)/S42mender \
- $(TARGET_DIR)/etc/init.d/S42mender
+# Needed for rootfs-image-module
+define MENDER_BUSYBOX_CONFIG_FIXUPS
+ $(call KCONFIG_ENABLE_OPT,CONFIG_FLOCK)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_STAT)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_STAT_FORMAT)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_SYNC_FANCY)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_WGET)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_WGET_HTTPS)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_WGET_OPENSSL)
endef
-$(eval $(golang-package))
+$(eval $(cmake-package))
diff --git a/package/mender/server.crt b/package/mender/server.crt
deleted file mode 100644
index 79a57e15e7..0000000000
--- a/package/mender/server.crt
+++ /dev/null
@@ -1,22 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIBfTCCASOgAwIBAgIJAJOS76a0qWuZMAoGCCqGSM49BAMCMBsxGTAXBgNVBAMM
-EGRvY2tlci5tZW5kZXIuaW8wHhcNMTYxMjE0MTk1MjQ2WhcNMjYxMjEyMTk1MjQ2
-WjAbMRkwFwYDVQQDDBBkb2NrZXIubWVuZGVyLmlvMFkwEwYHKoZIzj0CAQYIKoZI
-zj0DAQcDQgAE7AVYis6MWGPGQYU1/tlLEnskRifDIhvkRb8Y4nQPekRkLkiBYYT3
-iJ46wHrnejbHaLstU9GRdKWOmOuU6HGdO6NQME4wHQYDVR0OBBYEFGOIU4q++Vz8
-9HuT1jg9V+wFeJcyMB8GA1UdIwQYMBaAFGOIU4q++Vz89HuT1jg9V+wFeJcyMAwG
-A1UdEwQFMAMBAf8wCgYIKoZIzj0EAwIDSAAwRQIhAPLnEeWPNeN7eDCEYRitBfyO
-X1yf2kzOm4ohBE5GY9gzAiBCq7HOSkzQDkelmQCCCpGXf/UwYNgQJjSoeGfk0j1a
-TQ==
------END CERTIFICATE-----
------BEGIN CERTIFICATE-----
-MIIBhDCCASmgAwIBAgIJALQrf4QDot4IMAoGCCqGSM49BAMCMB4xHDAaBgNVBAMM
-E3MzLmRvY2tlci5tZW5kZXIuaW8wHhcNMTYxMjE0MTk1MjQ2WhcNMjYxMjEyMTk1
-MjQ2WjAeMRwwGgYDVQQDDBNzMy5kb2NrZXIubWVuZGVyLmlvMFkwEwYHKoZIzj0C
-AQYIKoZIzj0DAQcDQgAEEc/Y3T+l3DvINePkpvVZORMIdHVs29jgsl48ia7z/NRX
-HlKtKxVGJyFN5Y7sBZeLgBYH3F4Bo3KfmxI7ad0tI6NQME4wHQYDVR0OBBYEFIUm
-cip00QZYpe4ULflbGNJan+Y9MB8GA1UdIwQYMBaAFIUmcip00QZYpe4ULflbGNJa
-n+Y9MAwGA1UdEwQFMAMBAf8wCgYIKoZIzj0EAwIDSQAwRgIhANHij9VZBDHOUPaC
-pFiagnWnYL2HBR72W1xTKQbrLLTXAiEAvpwA4HzSnGmLd3010+jqQuMRHArN5WaX
-h0fy7niBbIQ=
------END CERTIFICATE-----
diff --git a/support/testing/tests/package/test_mender.py b/support/testing/tests/package/test_mender.py
index 14440c9527..44196d6a96 100644
--- a/support/testing/tests/package/test_mender.py
+++ b/support/testing/tests/package/test_mender.py
@@ -3,45 +3,69 @@ import os
import infra.basetest
+# gitlab-runner: large
class TestMenderInfra(infra.basetest.BRTest):
- config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \
- """
- BR2_PACKAGE_MENDER=y
- BR2_PACKAGE_HOST_MENDER_ARTIFACT=y
- BR2_TARGET_ROOTFS_CPIO=y
- BR2_ROOTFS_POST_BUILD_SCRIPT="{}"
- BR2_ROOTFS_OVERLAY="{}"
- """.format(
- infra.filepath("tests/package/test_mender/post-build.sh"),
- # overlay to add a fake 'fw_printenv', used by Mender
- infra.filepath("tests/package/test_mender/rootfs-overlay"))
+ # infra.basetest.BASIC_TOOLCHAIN_CONFIG cannot be used as it does
+ # not include BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
+ # needed by mender. This config also uses an ext4 rootfs as
+ # the default 128MB is too small for an image with mender and systemd.
+ config = \
+ """
+ BR2_x86_64=y
+ BR2_x86_corei7=y
+ BR2_TOOLCHAIN_EXTERNAL=y
+ BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_STABLE=y
+ BR2_INIT_SYSTEMD=y
+ BR2_SYSTEM_DHCP="eth0"
+ BR2_LINUX_KERNEL=y
+ BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+ BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.18.59"
+ BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
+ BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/mender/x86_64/linux.config"
+ BR2_PACKAGE_MENDER=y
+ BR2_ROOTFS_POST_BUILD_SCRIPT="{}"
+ BR2_ROOTFS_OVERLAY="{}"
+ BR2_PACKAGE_HOST_MENDER_ARTIFACT=y
+ BR2_TARGET_ROOTFS_EXT2=y
+ BR2_TARGET_ROOTFS_EXT2_4=y
+ BR2_TARGET_ROOTFS_EXT2_SIZE="256M"
+ # BR2_TARGET_ROOTFS_TAR is not set
+ """.format(
+ infra.filepath("tests/package/test_mender/post-build.sh"),
+ # overlay to add a fake 'fw_printenv', used by Mender
+ infra.filepath("tests/package/test_mender/rootfs-overlay"))
def base_test_run(self):
- cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio")
- self.emulator.boot(arch="armv5", kernel="builtin",
- options=["-initrd", cpio_file])
+ drive = os.path.join(self.builddir, "images", "rootfs.ext4")
+ kern = os.path.join(self.builddir, "images", "bzImage")
+ self.emulator.boot(arch="x86_64",
+ kernel=kern,
+ kernel_cmdline=["root=/dev/vda console=ttyS0 net.ifnames=0"],
+ options=["-cpu", "Nehalem",
+ "-m", "256M",
+ "-net", "nic,model=virtio",
+ "-net", "user",
+ "-drive", f"file={drive},if=virtio,format=raw"])
self.emulator.login()
def run_mender_test(self):
- self.assertRunOk("ps aux | egrep [m]ender")
+
+ # mender-authd requires systemd-resolved.service to be up,
+ # so wait for eth0 to get its DHCP address before querying.
+ cmd = "while ! ifconfig eth0 | grep -q 'inet addr'; do sleep 1; done"
+ self.assertRunOk(cmd, timeout=30)
+
+ output, _ = self.emulator.run("systemctl is-active mender-updated")
+ self.assertEqual(output[0], "active")
# Check if a simple Mender command is correctly executed
- self.assertRunOk("mender -log-level debug show-artifact")
- self.assertRunOk("mender -log-level debug show-artifact | grep 'RUNTIME_TEST_ARTIFACT_NAME'")
- cmd = "mender show-artifact 2>&1 | grep -i 'err'" # Check if no 'error' among the traces
+ self.assertRunOk("mender-update --log-level debug show-artifact")
+ self.assertRunOk("mender-update --log-level debug show-artifact | grep 'RUNTIME_TEST_ARTIFACT_NAME'")
+ cmd = "mender-update show-artifact 2>&1 | grep -i 'err'" # Check if no 'error' among the traces
_, exit_code = self.emulator.run(cmd)
self.assertEqual(exit_code, 1)
-class TestMenderRW(TestMenderInfra):
- def test_run(self):
- TestMenderInfra.base_test_run(self)
-
- # Check if the Daemon is running
- self.assertRunOk("ls /var/run/mender.pid")
- self.run_mender_test()
-
-
class TestMenderRO(TestMenderInfra):
config = \
"""
@@ -51,22 +75,4 @@ class TestMenderRO(TestMenderInfra):
def test_run(self):
TestMenderInfra.base_test_run(self)
-
- # Check if the Daemon is running
- self.assertRunOk("ls /var/run/mender.pid")
- self.run_mender_test()
-
-
-# gitlab-runner: large
-class TestMenderSystemd(TestMenderInfra):
- config = \
- """
- {}
- BR2_INIT_SYSTEMD=y
- """.format(TestMenderInfra.config)
-
- def test_run(self):
- TestMenderInfra.base_test_run(self)
- output, _ = self.emulator.run("systemctl is-active mender-client")
- self.assertEqual(output[0], "active")
self.run_mender_test()
diff --git a/support/testing/tests/package/test_mender/linux-e1000e.fragment b/support/testing/tests/package/test_mender/linux-e1000e.fragment
new file mode 100644
index 0000000000..cc3fe0047e
--- /dev/null
+++ b/support/testing/tests/package/test_mender/linux-e1000e.fragment
@@ -0,0 +1 @@
+CONFIG_E1000E=y
--
2.56.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
` (12 preceding siblings ...)
2026-10-27 16:40 ` [Buildroot] [PATCH v2 14/14] package/mender: bump to version 5.2.0 Adam Duskett
@ 2026-10-27 19:07 ` Thomas Petazzoni via buildroot
13 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 19:07 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
Hello,
On Tue, Oct 27, 2026 at 05:39:58PM +0100, Adam Duskett wrote:
> This commit unintentionally fixed a compile error when programs
> include the asio.hpp header with gcc versions >= 15.
>
> ```
> In function ‘void* memcpy(void*, const void*, size_t)’,
>
> inlined from ‘static boost::asio::ip::basic_resolver_results<InternetProtocol>
> boost::asio::ip::basic_resolver_results<InternetProtocol>::create(boost::asio::detail::addrinfo_type*,
> const std::string&, const std::string&) [with InternetProtocol = boost::asio::ip::tcp]’
> at /usr/include/boost/asio/ip/basic_resolver_results.hpp:147:15:
>
> /usr/include/bits/string_fortified.h:29:33:
> error: ‘void* __builtin___memcpy_chk(void*, const void*, unsigned int, unsigned int)’
> forming offset [28, 128] is out of the bounds [0, 28] of object ‘endpoint’ with type
> ‘boost::asio::ip::tcp::endpoint’ {aka ‘boost::asio::ip::basic_endpoint<boost::asio::ip::tcp>’}
> [-Werror=array-bounds=]
> ```
>
> Backport URL: https://github.com/boostorg/asio/commit/b2478a9ba9ed76d7c858419e3f677cc454591d45
>
> Fixes: None reported
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Thanks, I've applied, after doing minor tweaks to the patch, see
below.
> diff --git a/package/boost/0002-remove-FORTIFY_SOURCE-workaround.patch b/package/boost/0002-remove-FORTIFY_SOURCE-workaround.patch
> new file mode 100644
> index 0000000000..d044b62676
> --- /dev/null
> +++ b/package/boost/0002-remove-FORTIFY_SOURCE-workaround.patch
> @@ -0,0 +1,75 @@
> +From b3d87da5f87e2907ed004edf1c72ad3942ff1165 Mon Sep 17 00:00:00 2001
> +From: Christopher Kohlhoff <chris@kohlhoff.com>
> +Date: Wed, 5 Aug 2026 16:07:19 +0200
> +Subject: [PATCH] Remove _FORTIFY_SOURCE workaround.
> +
> +This commit unintentionally fixed a compile error when programs
> +include the asio.hpp header with gcc versions >= 15.
> +
> +```
> +In function ‘void* memcpy(void*, const void*, size_t)’,
> +
> +inlined from ‘static boost::asio::ip::basic_resolver_results<InternetProtocol>
> + boost::asio::ip::basic_resolver_results<InternetProtocol>::create(boost::asio::detail::addrinfo_type*,
> + const std::string&, const std::string&) [with InternetProtocol = boost::asio::ip::tcp]’
> + at /usr/include/boost/asio/ip/basic_resolver_results.hpp:147:15:
> +
> +/usr/include/bits/string_fortified.h:29:33:
> + error: ‘void* __builtin___memcpy_chk(void*, const void*, unsigned int, unsigned int)’
> + forming offset [28, 128] is out of the bounds [0, 28] of object ‘endpoint’ with type
> + ‘boost::asio::ip::tcp::endpoint’ {aka ‘boost::asio::ip::basic_endpoint<boost::asio::ip::tcp>’}
> + [-Werror=array-bounds=]
> +```
> +
> +
> +Original patch commit message:
> +```
> +The previous workaround for _FORTIFY_SOURCE warnings increased the size
> +of all IP endpoint objects. Instead, try fixing the warning at the point
> +where it occurs, by limiting the length memcpy-ed while processing the
> +addrinfo results from getaddrinfo.
> +```
> +
> +Upstream: Backport [https://github.com/boostorg/asio/commit/b2478a9ba9ed76d7c858419e3f677cc454591d45]
Just:
Upstream: https://github.com/boostorg/asio/commit/b2478a9ba9ed76d7c858419e3f677cc454591d45
is enough.
> +Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
> +Signed-off-by: Christopher Kohlhoff <chris@kohlhoff.com>
Your SoB should be below the one of the author. But in this case, the
original patch does not have an SoB from the author (from what I could
see), so you cannot add it by yourself (it's like faking a signature
at the end of an important piece of paperwork!). However, you must add
your own SoB to indicate that the patch was conveyed through you.
Thanks!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 02/14] package/mender-connect: bump to version 3.1.0
2026-10-27 16:39 ` [Buildroot] [PATCH v2 02/14] package/mender-connect: bump to version 3.1.0 Adam Duskett
@ 2026-10-27 19:45 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 19:45 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
On Tue, Oct 27, 2026 at 05:39:59PM +0100, Adam Duskett wrote:
> License changes are due to golang dependency [1]
>
> Update github.com/go-ozzo/ozzo-validation/v4 from v4.3.0 to v4.4.1
> Update github.com/mendersoftware/go-lib-microfrom 904960e to f0e3087
> Update github.com/stretchr/testify from v1.11.1 to v1.12.1
> Update github.com/urfave/cli/v3 from v3.11.0 to v3.12.0
>
> 1: https://github.com/mendersoftware/mender-connect/commit/14ebf68bd4f83057f75beb06702d6f8adac84aac
>
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Applied to master, thanks!
Best regards,
Thomas Petazzoni
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 03/14] package/mender-artifact: bump version to 4.4.2
2026-10-27 16:40 ` [Buildroot] [PATCH v2 03/14] package/mender-artifact: bump version to 4.4.2 Adam Duskett
@ 2026-10-27 19:54 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 19:54 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
On Tue, Oct 27, 2026 at 05:40:00PM +0100, Adam Duskett wrote:
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Applied to master, thanks!
Best regards,
Thomas Petazzoni
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 04/14] package/mender-grubenv: bump to version 32e10c0b
2026-10-27 16:40 ` [Buildroot] [PATCH v2 04/14] package/mender-grubenv: bump to version 32e10c0b Adam Duskett
@ 2026-10-27 19:55 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 19:55 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
On Tue, Oct 27, 2026 at 05:40:01PM +0100, Adam Duskett wrote:
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Applied to master, thanks!
Best regards,
Thomas Petazzoni
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 05/14] package/mender-update-modules: bump to version 3745bbea3
2026-10-27 16:40 ` [Buildroot] [PATCH v2 05/14] package/mender-update-modules: bump to version 3745bbea3 Adam Duskett
@ 2026-10-27 19:56 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 19:56 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
On Tue, Oct 27, 2026 at 05:40:02PM +0100, Adam Duskett wrote:
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Applied to master, thanks!
Best regards,
Thomas Petazzoni
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 06/14] package/mender-update-modules: add banner module
2026-10-27 16:40 ` [Buildroot] [PATCH v2 06/14] package/mender-update-modules: add banner module Adam Duskett
@ 2026-10-27 19:58 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 19:58 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
Hello Adam,
On Tue, Oct 27, 2026 at 05:40:03PM +0100, Adam Duskett wrote:
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
> ---
> package/mender-update-modules/Config.in | 12 ++++++++++++
> .../mender-update-modules/mender-update-modules.mk | 4 ++++
> 2 files changed, 16 insertions(+)
>
> diff --git a/package/mender-update-modules/Config.in b/package/mender-update-modules/Config.in
> index 7c5a7e4442..97f583e0e2 100644
> --- a/package/mender-update-modules/Config.in
> +++ b/package/mender-update-modules/Config.in
> @@ -16,6 +16,18 @@ config BR2_PACKAGE_MENDER_UPDATE_MODULES
>
> if BR2_PACKAGE_MENDER_UPDATE_MODULES
>
> +config BR2_PACKAGE_MENDER_UPDATE_MODULES_BANNER
> + bool "banner"
> + help
> + The Banner Update Module manages the system's message of
> + the day (MOTD) displayed when users log in via SSH or
> + console. It uses metadata-driven updates to change the
> + banner text without requiring any file payload, supports
> + rollback functionality, and operates without requiring
> + system reboots.
> +
> + https://github.com/aduskett/mender-update-modules/tree/master/banner
^^^^^^^^ any reason this points to your
Github fork instead of
github.com/mendersoftware/ ?
No need to resend just for this, just let me know and I'll fix while
applying.
Thanks!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 07/14] package/mender-update-modules: add persistent-app module
2026-10-27 16:40 ` [Buildroot] [PATCH v2 07/14] package/mender-update-modules: add persistent-app module Adam Duskett
@ 2026-10-27 20:00 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 20:00 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
On Tue, Oct 27, 2026 at 05:40:04PM +0100, Adam Duskett wrote:
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Applied to master, thanks!
Best regards,
Thomas Petazzoni
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 08/14] configs/mender_x86_64_efi_defconfig: bump kernel version to 6.18.59
2026-10-27 16:40 ` [Buildroot] [PATCH v2 08/14] configs/mender_x86_64_efi_defconfig: bump kernel version to 6.18.59 Adam Duskett
@ 2026-10-27 20:00 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 20:00 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
On Tue, Oct 27, 2026 at 05:40:05PM +0100, Adam Duskett wrote:
> Also update board/mender/x86_64/linux.config by running
> `make linux-savedefconfig` and comparing the differences.
>
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Applied to master, thanks!
Best regards,
Thomas Petazzoni
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 09/14] board/mender: change device type to compatible-types
2026-10-27 16:40 ` [Buildroot] [PATCH v2 09/14] board/mender: change device type to compatible-types Adam Duskett
@ 2026-10-27 20:03 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 20:03 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
On Tue, Oct 27, 2026 at 05:40:06PM +0100, Adam Duskett wrote:
> Newer versions of mender-artifact echo deprecation warnings when using
> the --device-type argument and tell users to use --compatible-types.
>
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Applied to master, thanks!
Best regards,
Thomas Petazzoni
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 10/14] board/mender/x86_64/post-image-efi.sh: do not prepend artifact name to mender image
2026-10-27 16:40 ` [Buildroot] [PATCH v2 10/14] board/mender/x86_64/post-image-efi.sh: do not prepend artifact name to mender image Adam Duskett
@ 2026-10-27 20:15 ` Thomas Petazzoni via buildroot
2026-10-27 20:46 ` Thomas Petazzoni via buildroot
1 sibling, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 20:15 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
On Tue, Oct 27, 2026 at 05:40:07PM +0100, Adam Duskett wrote:
> Do not prepend ${COMPATIBLE_TYPES} to the user-specified artifact
> name. Especially since compatible types can be added multiple times
> to mender-artifact.
>
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Applied to master, thanks!
Best regards,
Thomas Petazzoni
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 11/14] board/mender/x86_64: add a udev rule to create /dev/root
2026-10-27 16:40 ` [Buildroot] [PATCH v2 11/14] board/mender/x86_64: add a udev rule to create /dev/root Adam Duskett
@ 2026-10-27 20:44 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 20:44 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
On Tue, Oct 27, 2026 at 05:40:08PM +0100, Adam Duskett wrote:
> As /dev/root does not appear automatically, add a rule to
> create /dev/root. Without this rule, even running a simple command
> outputs the following warning:
Which "simple command"? Are we talking about Mender commands/tools?
>
> ```
> WARN[0000] Could not resolve path link: /dev/root Attempting to continue
> WARN[0000] Could not resolve path link: /dev/root Attempting to continue
> ```
>
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
> ---
> .../mender/x86_64/overlay/etc/udev/rules.d/99-root-symlink.rules | 1 +
> 1 file changed, 1 insertion(+)
> create mode 100644 board/mender/x86_64/overlay/etc/udev/rules.d/99-root-symlink.rules
>
> diff --git a/board/mender/x86_64/overlay/etc/udev/rules.d/99-root-symlink.rules b/board/mender/x86_64/overlay/etc/udev/rules.d/99-root-symlink.rules
> new file mode 100644
> index 0000000000..7d2ae8cb89
> --- /dev/null
> +++ b/board/mender/x86_64/overlay/etc/udev/rules.d/99-root-symlink.rules
> @@ -0,0 +1 @@
> +SUBSYSTEM=="block", ACTION=="add|change", PROGRAM="/bin/grep -q root=/dev/%k /proc/cmdline", SYMLINK+="root"
Is this supposed to work in all cases, or just for the "basic" case of
our defconfig?
For example on my machine, /proc/cmdline has
root=UUID=898654ab-a9dc-46ee-922f-8f5077c83176, and I don't think a
symlink /dev/root -> /dev/UUID=898654ab-a9dc-46ee-922f-8f5077c83176
would work well.
Note: I'm fine if the answer is "it works for the basic case of this
defconfig".
Thanks!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 12/14] test_mender/post-build.sh: add rootfs image checksum for bootstrap artifact
2026-10-27 16:40 ` [Buildroot] [PATCH v2 12/14] test_mender/post-build.sh: add rootfs image checksum for bootstrap artifact Adam Duskett
@ 2026-10-27 20:45 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 20:45 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
On Tue, Oct 27, 2026 at 05:40:09PM +0100, Adam Duskett wrote:
> Just like the generate_mender_bootstrap_artifact method in
> board/mender/x86_64/post-image-efi.sh, calculate the rootfs-image checksum.
>
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Applied to master, thanks!
Best regards,
Thomas Petazzoni
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 10/14] board/mender/x86_64/post-image-efi.sh: do not prepend artifact name to mender image
2026-10-27 16:40 ` [Buildroot] [PATCH v2 10/14] board/mender/x86_64/post-image-efi.sh: do not prepend artifact name to mender image Adam Duskett
2026-10-27 20:15 ` Thomas Petazzoni via buildroot
@ 2026-10-27 20:46 ` Thomas Petazzoni via buildroot
1 sibling, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 20:46 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
On Tue, Oct 27, 2026 at 05:40:07PM +0100, Adam Duskett wrote:
> # Create a mender image.
> generate_mender_image() {
> - echo "Creating ${BINARIES_DIR}/${COMPATIBLE_TYPES}-${ARTIFACT_NAME}.mender"
> + echo "Creating ${BINARIES_DIR}/${ARTIFACT_NAME}.mender"
> "${HOST_DIR}/bin/mender-artifact" \
> write rootfs-image \
> --compression none \
> -c "${COMPATIBLE_TYPES}" \
> -n "${BR2_VERSION}" \
> -f "${BINARIES_DIR}/rootfs.ext2" \
> - -o "${BINARIES_DIR}/${COMPATIBLE_TYPES}-${ARTIFACT_NAME}.mender"
> + -o "${BINARIES_DIR}/${ARTIFACT_NAME}.mender"
I've applied already, but doesn't this require an update to
board/mender/x86_64/readme.txt which currently states:
"""
The mender artifact is created in output/images/buildroot-x86_64-1.0.mender
"""
I assume it is now just output/images/1.0.mender ?
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 13/14] test_mender/post-build.sh: use /etc/mender/device_type
2026-10-27 16:40 ` [Buildroot] [PATCH v2 13/14] test_mender/post-build.sh: use /etc/mender/device_type Adam Duskett
@ 2026-10-27 20:47 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 20:47 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
On Tue, Oct 27, 2026 at 05:40:10PM +0100, Adam Duskett wrote:
> To keep parody with board/mender/x86_64/overlay/etc/mender/mender.conf,
Should this be s/parody/parity/ ?
> change /var/lib/mender/device_type to /etc/mender/device_type and
> add a /etc/mender/mender.conf file.
>
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Thanks!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [Buildroot] [PATCH v2 14/14] package/mender: bump to version 5.2.0
2026-10-27 16:40 ` [Buildroot] [PATCH v2 14/14] package/mender: bump to version 5.2.0 Adam Duskett
@ 2026-10-27 20:59 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 29+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-10-27 20:59 UTC (permalink / raw)
To: Adam Duskett; +Cc: buildroot, Angelo Compagnucci
Hello Adam,
Thanks for the patch. Looks mostly good. A small number of
questions/comments below.
On Tue, Oct 27, 2026 at 05:40:11PM +0100, Adam Duskett wrote:
> MINOR:
>
> - Drop the 0001-openssl-v4-update.patch.
> - OpenSSL 4.x is not in buildroot master yet.
That's a bit annoying. The patch was added in preparation to bumping
OpenSSL 4.x. As it required patching a LOT of packages, it is done
gradually, but "regressing" on this is a bit problematic. Does mender
5.x build with OpenSSL 4.x?
> index 01a0254511..01cf4077b7 100644
> --- a/board/mender/x86_64/readme.txt
> +++ b/board/mender/x86_64/readme.txt
> @@ -53,12 +53,12 @@ Optional arguments:
>
> The login prompt will appear in the serial window.
>
> -Tested with QEMU 4.1.1 on Fedora 31
> +Tested with QEMU 10.2.2 on Fedora 44
>
> Creating a mender-artifact
> ========================
>
> -The mender artifact is created in output/images/buildroot-x86_64-1.0.mender
> +The mender artifact is created in output/images/1.0.mender
Ah, so this is where this is being updated, while this change occurred
several patches ago in your patch series, as I pointed out.
> diff --git a/configs/mender_x86_64_efi_defconfig b/configs/mender_x86_64_efi_defconfig
> index f10a461770..1c65dff4d9 100644
> --- a/configs/mender_x86_64_efi_defconfig
> +++ b/configs/mender_x86_64_efi_defconfig
> @@ -1,7 +1,7 @@
> BR2_x86_64=y
> BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_18=y
> -BR2_INIT_SYSV=y
> -BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
> +BR2_TOOLCHAIN_BUILDROOT_CXX=y
If you want, you can switch the defconfig to use a pre-built external
toolchain, like a Bootlin toolchain.
> +BR2_INIT_SYSTEMD=y
> BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
> BR2_ROOTFS_OVERLAY="board/mender/x86_64/overlay"
> BR2_ROOTFS_POST_BUILD_SCRIPT="board/mender/x86_64/post-build.sh"
> @@ -15,6 +15,7 @@ BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/mender/x86_64/linux.config"
> BR2_LINUX_KERNEL_INSTALL_TARGET=y
> BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
> BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
> +BR2_PACKAGE_JQ=y
Why is jq needed on the target?
> diff --git a/package/mender/Config.in b/package/mender/Config.in
> index c9b9d0b757..d4685986be 100644
> --- a/package/mender/Config.in
> +++ b/package/mender/Config.in
> @@ -1,9 +1,21 @@
> config BR2_PACKAGE_MENDER
> bool "mender"
> - depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
> - depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
> - depends on BR2_TOOLCHAIN_HAS_THREADS
> - select BR2_PACKAGE_HOST_GO
> + depends on BR2_INSTALL_LIBSTDCPP
> + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # yaml-cpp -> C++11
You can just put "yaml-cpp" as the comment here if you want, that's
sufficient.
> + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # boost-log
> + depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-log
> + depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-log
> + depends on BR2_USE_MMU # libglib2
> + depends on BR2_USE_WCHAR # libglib2
Also boost, libarchive. But admittedly keeping those comments fully
up-to-date is a bit tricky, and we are not super strict about this.
> +define MENDER_INSTALL_MODULES_GEN
> + DESTDIR=$(HOST_DIR) \
> + $(BR2_MAKE) -C $(@D) \
> + install-modules-gen
Why $(BR2_MAKE) and not just $(MAKE) ?
Also, we normally put DESTDIR as a make option, not an environment
variable, i.e:
$(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) install-modules-gen
> +endef
> +MENDER_POST_INSTALL_TARGET_HOOKS += += MENDER_INSTALL_MODULES_GEN
> +
> +# Cmake does not install libtiny-process-library leading to the error:
> +# libtiny-process-library.so: cannot open shared object file
> +define MENDER_INSTALL_LIBTINY_PROC_SO
> + $(INSTALL) -D -m 0755 \
> + $(@D)/src/common/vendor/tiny-process-library/libtiny-process-library.so \
> + $(TARGET_DIR)/usr/lib/libtiny-process-library.so
Missing one indentation level.
But more importantly: isn't this a bug in Mender's build system that
should be fixed by a patch?
> +endef
> +MENDER_POST_INSTALL_TARGET_HOOKS += MENDER_INSTALL_LIBTINY_PROC_SO
> +
> +define MENDER_INSTALL_TARGET_CMDS
> + $(TARGET_MAKE_ENV) \
> + $(TARGET_BUILD_ENV) \
What is $(TARGET_BUILD_ENV) ?
> + DESTDIR=$(TARGET_DIR) \
> + $(BR2_MAKE) -C $(@D) \
> + $(MENDER_INSTALL_TARGET_OPTS)
Same as above:
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) $(MENDER_INSTALL_TARGET_OPTS)
> diff --git a/support/testing/tests/package/test_mender/linux-e1000e.fragment b/support/testing/tests/package/test_mender/linux-e1000e.fragment
> new file mode 100644
> index 0000000000..cc3fe0047e
> --- /dev/null
> +++ b/support/testing/tests/package/test_mender/linux-e1000e.fragment
Is this fragment used anywhere?
Thanks for your feedback!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 29+ messages in thread
end of thread, other threads:[~2026-10-27 21:00 UTC | newest]
Thread overview: 29+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-27 16:39 [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Adam Duskett
2026-10-27 16:39 ` [Buildroot] [PATCH v2 02/14] package/mender-connect: bump to version 3.1.0 Adam Duskett
2026-10-27 19:45 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 03/14] package/mender-artifact: bump version to 4.4.2 Adam Duskett
2026-10-27 19:54 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 04/14] package/mender-grubenv: bump to version 32e10c0b Adam Duskett
2026-10-27 19:55 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 05/14] package/mender-update-modules: bump to version 3745bbea3 Adam Duskett
2026-10-27 19:56 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 06/14] package/mender-update-modules: add banner module Adam Duskett
2026-10-27 19:58 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 07/14] package/mender-update-modules: add persistent-app module Adam Duskett
2026-10-27 20:00 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 08/14] configs/mender_x86_64_efi_defconfig: bump kernel version to 6.18.59 Adam Duskett
2026-10-27 20:00 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 09/14] board/mender: change device type to compatible-types Adam Duskett
2026-10-27 20:03 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 10/14] board/mender/x86_64/post-image-efi.sh: do not prepend artifact name to mender image Adam Duskett
2026-10-27 20:15 ` Thomas Petazzoni via buildroot
2026-10-27 20:46 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 11/14] board/mender/x86_64: add a udev rule to create /dev/root Adam Duskett
2026-10-27 20:44 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 12/14] test_mender/post-build.sh: add rootfs image checksum for bootstrap artifact Adam Duskett
2026-10-27 20:45 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 13/14] test_mender/post-build.sh: use /etc/mender/device_type Adam Duskett
2026-10-27 20:47 ` Thomas Petazzoni via buildroot
2026-10-27 16:40 ` [Buildroot] [PATCH v2 14/14] package/mender: bump to version 5.2.0 Adam Duskett
2026-10-27 20:59 ` Thomas Petazzoni via buildroot
2026-10-27 19:07 ` [Buildroot] [PATCH v2 01/14] package/boost: fix asio.hpp compile errors with gcc >= 15 Thomas Petazzoni via buildroot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox