LinuxKit is a toolkit for building custom, minimal, immutable Linux distributions designed to run as container-based virtual machine images. The system is primarily a Go-based CLI tool (`linuxkit`) that reads declarative YAML configurations specifying a kernel, init system, onboot containers, and long-running services. It orchestrates the assembly of these components into bootable output formats (kernel+initrd, ISO, qcow2, VHD, raw disk, etc.) using Docker/BuildKit for package building and containerd/runc as the base runtime inside the target OS. The repository also contains extensive kernel build infrastructure with support for multiple kernel series (4.x, 5.x, 6.x), including real-time (PREEMPT_RT) patches, and cloud platform integration for running images on AWS, GCP, Azure, Equinix Metal, Hyper-V, VMware, QEMU, and macOS Virtualization Framework. While the core tool is well-structured and features reusable patterns like an OCI image cache and a generic package builder, the overall codebase shows signs of maintenance slowdown (last major release v0.8 in 2020, some deprecated kernel series, and experimental projects that may be stale). It remains a solid, professionally built system for immutable OS assembly with a strong emphasis on security and reproducibility.
not-os is a minimal, embedded-focused Linux distribution built entirely as a Nixpkgs overlay, demonstrating how to construct a bootable OS from scratch (kernel, initrd, squashfs root) using NixOS modules while replacing systemd with runit. The repository provides configurations for x86_64 QEMU, Raspberry Pi (ARM), and Xilinx Zynq targets, along with an iPXE boot chain featuring cryptographic signature verification for secure boot. It illustrates advanced Nix techniques for building custom initrds, integrating firmware, and creating reproducible embedded system images, though some components (like the dummy stage-2 init script placeholder) indicate a focus on flexibility over polish. The codebase is well-structured with clear module boundaries and includes Hydra CI integration for automatic testing.