How do I build a Custom OS Image with Edge Microvisor Toolkit? #316
biapalmeiro
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
This is a walkthrough on how to build, customize, and extend EMT images—from creating base ISOs to injecting your own packages. Whether you're creating a streamlined image for a fleet of edge nodes or experimenting with real-time extensions, EMT gives you full control. Because your workload is unique, we have flexible tools tailored to that.
For a complete step by step guidance access the Developer Guide
Getting Started: Prerequisites
Make sure you’re working on Ubuntu and have installed essential build tools. Then:
Clone the Toolkit Repo
Build the Toolchain
Building Your First Image
Out of the box, EMT includes several JSON-based configurations in
imageconfigs/
. Each defines what the resulting OS image looks like, from included RPMs to kernel options.Build an ISO:
Build a RAW Image:
Without real-time:
With real-time extensions:
Customizing Your Image
Option 1: Add Existing RPMs (e.g.,
nano
)Create a custom package list:
Include it in your imageconfig:
Rebuild the image:
Option 2: Add a New Custom Package
Creating your own RPM involves writing a
.spec
file, a source archive, and computing SHA-256 checksums.Step-by-step:
Define
helloworld.spec
Create a
helloworld.sh
scriptGenerate a tarball and its signature
Copy to
~/rpmbuild/
and runrpmbuild -ba
Add to EMT’s
SPECS/
and updatecgmanifest.json
Include in your image as in Option 1
Once built and tested, raise a PR for inclusion in the official repository.
Updating an Agent (e.g., node-agent)
When updating an existing component like a Bare Metal Agent (BMA):
Bump version/release in the
.spec
fileUpdate SHA-256 signatures
Modify any wrappers or configuration scripts
Rebuild and update the
cgmanifest.json
The update process ensures consistency, reproducibility, and compatibility with Intel’s Edge Manageability Framework (EMF) .
Beta Was this translation helpful? Give feedback.
All reactions