How to contribute to the Edge Microvisor Toolkit? A Guide for Edge AI Developers #352
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.
-
The Edge Microvisor Toolkit (EMT) is an open-source project designed to help developers build secure, immutable edge systems. If you're an Edge AI developer passionate about infrastructure, security, or embedded innovation—this is your chance to get involved.
Let's go through the contribution process, highlights key areas for collaboration, and shows how to set up your workflow to successfully submit pull requests (PRs) to the project.
Why Contribute?
EMT is actively developed and maintained by the open-edge-platform community and always welcomes contributions, particularly in:
The build infrastructure pipeline
Enhancing or optimizing microvisor image definitions
Supporting new edge hardware platforms
Implementing new security or runtime features
Whether you want to propose an enhancement or build something yourself, there’s room to make a real impact.
For new feature requests, start with a Design Proposal
Before diving into the code, all new larger features or architectural changes should begin with a Design Proposal, using the standard template and be submitted via a Architecture Decision Record (ADR) GitHub issue.
This ensures the community aligns on direction before implementation starts. Be thorough—detailed context helps maintainers and stakeholders assess and prioritize effectively.
Your proposal should include:
Template Outline:
Contribution Workflow
All contributions follow this branching and release model:
Target branch for PRs:
3.0-dev
Official releases are published from:
3.0
Pull Requests should:
Be tested and validated
Include updated
.signatures.json
hashes for sources(use
sha256sum
ormake input-srpms
)Update
cgmanifest.json
(alphabetically sorted)(
.github/workflows/validate-cg-manifest.sh SPECS/<pkg>/<pkg>.spec
)Here’s a step-by-step summary of the EMT contribution flow:
Fork and clone the EMT repository.
Base your work on the
3.0-dev
branch.Create a feature branch from
3.0-dev
.Make your changes.
Follow checklist (below) before opening a PR.
Submit a PR targeting
3.0-dev
.Packaging and Build Structure
EMT follows Azure Linux’s RPM packaging conventions and uses two directories:
SPECS
: Officially supported and published packagesSPECS-EXTENDED
: Experimental packages requiring self-built imagesWhen working with packages:
Validate the cgmanifest file (used for tracking package sources):
bash
CopyEdit
.github/workflows/validate-cg-manifest.sh SPECS/<package>/<package>.spec
Update source file hashes in
*.signatures.json
files using:bash
CopyEdit
cd toolkit sudo make input-srpms REBUILD_TOOLS=y SRPM_FILE_SIGNATURE_HANDLING=update
Licensing
All contributions are under the MIT license. By contributing, you assert that:
Your contribution is your own.
It can be published under the MIT license.
You grant the rights to include it in EMT.
What Makes a Good Contribution?
Clear, modular code
Updated documentation or comments
Validation steps or test cases (if applicable)
Alignment with existing build and packaging conventions
🌐 Join the Edge Microvisor Community
EMT is more than a toolkit—it's a collaborative project to redefine what's possible at the intelligent edge. Your contributions help improve edge computing for a wide range of industries, from AI-driven robotics to industrial automation.
Whether you're filing an issue, building an extension, or reviewing code—your effort counts. :)
Beta Was this translation helpful? Give feedback.
All reactions