Mender is an open source over-the-air (OTA) software updater for embedded Linux devices. Mender comprises a client running at the embedded device, as well as a server that manages deployments across many devices.
This repository contains the artifacts library, which is used by the Mender client, command line interface, server and for build integration with the Yocto Project.
The artifacts library makes it easy to programmatically work with a Mender artifact, which
is a file that can be recognized by its .mender
suffix. Mender artifacts
can contain binaries, metadata, checksums, signatures and scripts that are
used during a deployment. The artifact format acts as a wrapper, and
uses the tar
format to bundle several files into one.
In its simplest form, an artifact contains just a rootfs image, along with its checksum, id and device type compatibility.
The artifacts library might also be useful for other updaters or purposes. We are always happy to see other uses of it!
To start using Mender, we recommend that you begin with the Getting started section in the Mender documentation.
You can use the parser and reader in go in the standard way:
import (
"github.com/mendersoftware/artifacts/parser"
"github.com/mendersoftware/artifacts/reader"
...
)
For sample usage, please see the Mender client source code.
We welcome and ask for your contribution. If you would like to contribute to Mender, please read our guide on how to best get started contributing code or documentation.
Mender is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.
We take security very seriously. If you come across any issue regarding security, please disclose the information by sending an email to [email protected]. Please do not create a new public issue. We thank you in advance for your cooperation.
- Join our Google group
- Follow us on Twitter. Please feel free to tweet us questions.
- Fork us on Github
- Email us at [email protected]