The foundational Linux distribution for the cloud and the edge.
Hadron delivers a minimal, trustworthy operating system built from the ground up with vanilla upstream components. Engineered for security, flexibility, and reliability.
Hadron is Engineered by Spectro Cloud from the Kairos team.
- Minimal & Lean: Bare essentials only—no bloat, just what you need
- Trusted Boot: Secure boot environments with modern security standards
- Upstream First: Built with vanilla components, staying close to upstream
- Edge & Cloud Ready: Optimized for both cloud workloads and edge deployments
- Seamless Updates: A/B upgrade capabilities for zero-downtime operations
Hadron is a Linux Distribution built from scratch with a focus on minimalism and staying close to upstream sources:
- Core Components: Built on
musllibc,systemdinit system, and vanilla Linux kernels - Boot Methods: Supports both Trusted Boot (via USI/UKI) and standard boot (via Dracut/GRUB)
- Upgrade System: Managed via Kairos agent for A/B style atomic upgrades
- Upstream Alignment: Minimal patches, maximum compatibility with upstream projects
- Simple and no vendor-lock-in: Hadron doesn't ship a package manager by default, and it's not based on any other Linux distribution. You can build packages on top of Hadron, or use the package manager you like.
To build locally the image, you just need to have Docker installed, clone the repository and run:
make build
To create an ISO, you can:
make devel-iso
And you can run it in a VM with:
make run-qemu
Note: The following examples are for testing purposes only. The Dockerfile used for building Kairos images is automatically fetched from the kairos repository and should not be modified locally.
To build a core Kairos image (without Kubernetes distribution) based on Hadron:
# Pull the base Hadron image and build the Kairos image
make pull-image build-kairos BOOTLOADER=grub VERSION=v0.0.1
# Or for Trusted Boot:
make pull-image build-kairos BOOTLOADER=systemd VERSION=v0.0.1This will:
- Fetch the latest Dockerfile from the kairos repository
- Build a core Kairos image named
hadron-initbased on the Hadron base image - Use the specified bootloader (grub or systemd) and version
To build a standard image with a Kubernetes distribution (e.g., k3s or k0s):
# Build with k3s
make pull-image build-kairos BOOTLOADER=grub VERSION=v0.0.1 KUBERNETES_DISTRO=k3s
# Build with k0s
make pull-image build-kairos BOOTLOADER=grub VERSION=v0.0.1 KUBERNETES_DISTRO=k0s
# Optionally specify Kubernetes version
make pull-image build-kairos BOOTLOADER=grub VERSION=v0.0.1 KUBERNETES_DISTRO=k3s KUBERNETES_VERSION=v1.28.0After building the Kairos image, you can create an ISO:
# For GRUB bootloader
make grub-iso
# For Trusted Boot
make trusted-isoApache 2.0
- https://github.com/firasuke/mussel For making things even easier than musl-cross-make with mussel. It was so plug-n-play that felt like a really nice experience right from the start.
- https://github.com/openembedded/openembedded-core/tree/master/meta/recipes-core/systemd which makes possible to build systemd on top of musl
- https://github.com/mocaccinoOS/mocaccino-micro For inspiration on how to build a musl system from scratch
