Source, releases, issues, merge requests, and CI all live on GitLab. This GitHub copy is a read-only mirror and may lag. Please file issues and get releases there.
The canonical, authoritative home of this project is GitLab — always:
This GitHub repository is a frozen, read-only mirror. All development, issues, and releases happen on GitLab. Please open issues and merge requests there. The full history of this stub is preserved on GitLab.
Yocto layer for building minimal Linux images for the Raspberry Pi family, plus optional AI-agent runtime recipes layered on top.
All recipes are ARM-universal (COMPATIBLE_HOST = "(aarch64|arm).*-linux").
The maintainer has booted Pi 4 (2 GB + 8 GB); other family members
(Pi 5, Pi 3 64-bit, Pi Zero 2 W) are recipe-compatible but untested.
See INSTALL.md for the full MACHINE value matrix with
tested/untested flags.
nclawzero currently supports:
- x86_64 + macOS via Docker/Podman containers
(
ghcr.io/perlowja/nclawzero-demo,ghcr.io/perlowja/nclawzero-agent) - ARM Raspberry Pi family (Pi 4, Pi 5, Pi Zero 2 W, Pi 3 64-bit) via
Yocto-built flashable images from this layer or pre-built SD images
from
pi-gen-nclawzero
Jetson family support is deferred pending hardware validation.
No pre-built images are distributed from this repository. Everything is built locally from upstream source and this layer's recipes.
nclawzero-base-image— headless console image: systemd, SSH, networking, shell/dev tools, Python. This is the "just Linux + goodies" image. No compositor, no agent, nothing else.nclawzero-desktop-image— base + the Weston Wayland compositor with its built-in VNC backend. Connect from your workstation viavncviewer <device-ip>:5901.
nclawzero-agent-image— base + ZeroClaw (Rust AI agent runtime)- NemoClaw (Node.js sandbox framework, provisioned from upstream
github.com/NVIDIA/NemoClawon first boot).
- NemoClaw (Node.js sandbox framework, provisioned from upstream
packagegroup-nclawzero-agent— same dependencies, for inclusion in your own image recipes.
| Recipe | Role |
|---|---|
recipes-core/images/nclawzero-base-image.bb |
Headless minimal image |
recipes-core/images/nclawzero-desktop-image.bb |
Base + Weston/VNC |
recipes-core/images/nclawzero-agent-image.bb |
Base + agent stack |
recipes-core/packagegroups/packagegroup-nclawzero-base.bb |
Shell/dev tools |
recipes-core/packagegroups/packagegroup-nclawzero-agent.bb |
AI agent runtime |
recipes-core/packagegroups/packagegroup-nclawzero-desktop.bb |
Weston, mesa, fonts |
recipes-connectivity/nclawzero-network/ |
Wired networking defaults |
recipes-devtools/nodejs/ |
Pre-built Node.js aarch64 binary |
recipes-zeroclaw/ |
ZeroClaw agent (pulls public GitHub release) |
recipes-nemoclaw/ |
NemoClaw (builds from upstream + local patches) |
This layer is Apache-2.0 licensed. Upstream projects retain their own licenses:
- ZeroClaw (
zeroclaw-labs/zeroclaw) — MIT - NemoClaw (
NVIDIA/NemoClaw) — Apache-2.0
The recipes-nemoclaw/ tree contains three local patches authored
by Jason Perlow. Those patches are themselves Apache-2.0 derivative
work against upstream NemoClaw:
0001-fix-snapshot-symlink-protection.patch— security: guardcpSyncand directory walker against symlink traversal.0002-fix-config-file-permissions.patch— security: enforce mode0600on credential config files.0003-feat-agent-defs-zeroclaw.patch— integration: register ZeroClaw as an agent runtime alongside Hermes.
No binaries from any vendor are redistributed through this layer. All fetches happen at build time from public upstream sources.
openembedded-core(poky)meta-openembedded/meta-oe,meta-openembedded/meta-python,meta-openembedded/meta-networkingmeta-raspberrypi(for Pi targets)
QUICKSTART.md— one-page TL;DR: hardware requirements (host + target), a six-step build recipe, pointers into the upstream Yocto Project documentation. Start here if you've never used Yocto before.INSTALL.md— full build-host setup,bblayers.conf/local.conftemplates.FLASH.md— writing images to SD cards on Raspberry Pi (bmaptool,dd, macOS-specific notes).docker/README.md— Docker deliverables:nclawzero-demo(one-command interactive bench with zterm TUI + live agent) andnclawzero-agent(headless runtime for compose/k8s). Published toghcr.io/perlowja. If you just want to feel the stack before committing to hardware, this is the fastest path.
New to Yocto? The Yocto Project Quick Build
is a 20-minute walkthrough that builds core-image-minimal for
qemu — everything meta-nclawzero-base does is plain Yocto on top
of that foundation.
Before touching Yocto or flashing hardware, you can kick the tires on any x86_64 / arm64 machine with Docker installed:
docker run -it --rm ghcr.io/perlowja/nclawzero-demoThat's it — zterm TUI opens, already connected to a live ZeroClaw
agent inside the container. See docker/README.md for the
nclawzero-agent headless variant.
- Yocto release: scarthgap (5.0 LTS).
- Tested build hosts: Debian 12, Ubuntu 24.04.
Issues and PRs welcome at this repository. Upstream fixes to NemoClaw or ZeroClaw should be sent to their respective repositories directly:
github.com/NVIDIA/NemoClawgithub.com/zeroclaw-labs/zeroclaw
Jason Perlow — <jperlow@gmail.com>