Mender blog

First alpha version of Mender C++ client released

We have reached the first milestone of the Mender client rewrite to C++: the first alpha version is now available! There are still a lot of features missing, but here are the ones that should be working:

  • Standalone mode (command line client)
  • Update Modules
  • Root filesystem updates (provided by a rootfs-image Update Module)
  • Installing, committing, and rolling back

One notable omission from the list is State Scripts. These will be added in a later iteration. There is also no help screen available at the moment, but the client accepts the same arguments as the existing Golang client for the implemented features.

The client already undergoes a fair amount of testing, but keep in mind that this is bleeding-edge software which is under daily, active development - so expect bugs! And there is no official support for this version (yet). Feel free to try, test, and provide feedback as we continue to develop this functionality.

How to get it? (if you are brave enough)

There are three main avenues for getting the C++ client:

Run it

The binary is not called mender anymore, it's called mender-update. We may provide a wrapper using the old name later, but for now, just use mender-update in place of mender in all commands. For example:

mender-update install my-artifact.mender

What now?

Give it a try, see what you like and see what you don't like. Tell us about the former, and help us improve the latter. Although the client is under active development now, we would be happy to take applicable contributions. And if your idea is not applicable yet, then just check back in a few weeks. You can always find the current state on GitHub and discuss on the Mender Hub.

Troubleshooting

LMDB error

If you get a message like this:

Failed to intialize main context: LMDB error: mdb_env_open: No such file or directory

then you may need to create the /var/lib/mender and device_type manually:

mkdir /var/lib/mender
echo device_type=my_device_type > /var/lib/mender/device_type

Recent articles

The scope of EU Cyber Resilience Act (CRA) compliance

The scope of EU Cyber Resilience Act (CRA) compliance

Explore the scope of the EU Cyber Resilience Act (CRA). Learn about the CRA's scope, and why secure OTA updates are essential for compliance.
An overview of EU Cyber Resilience Act (CRA) compliance

An overview of EU Cyber Resilience Act (CRA) compliance

Learn how the EU Cyber Resilience Act (CRA) enforces stringent cybersecurity requirements for PDEs. Explore compliance essentials in part 1 of a 4-part series.
Challenges in complying with the EU Cyber Resilience Act (CRA)

Challenges in complying with the EU Cyber Resilience Act (CRA)

Discover how manufacturers can achieve Cyber Resilience Act (CRA) compliance by tackling secure updates, SBOM management, and vulnerability tracking with robust OTA solutions.
View more articles

Learn why leading companies choose Mender

Discover how Mender empowers both you and your customers with secure and reliable over-the-air updates for IoT devices. Focus on your product, and benefit from specialized OTA expertise and best practices.

 
sales-pipeline_295756365