The Solnix handbook
The Solnix Operating System is a supported distribution of illumos built entirely with the Nix package manager and the NixOS module system — the illumos analog of NixOS (Linux) and nixbsd (FreeBSD/OpenBSD).
The Solnix OS targets four CPU architectures — x86_64, aarch64,
RISC-V, and SPARC (the x86_64-solaris, aarch64-solaris,
riscv64-solaris, and sparcv9-solaris systems) — and is designed for both
server and desktop use. It is optimized for virtualized hosting on all the
major cloud platforms (AWS/EC2, Microsoft Azure, Google Cloud, and the rest),
while remaining a first-class OS on bare metal.
Describe an illumos machine declaratively in Nix; get a bootable, atomically upgradeable, rollback-capable system backed by ZFS boot environments.
Status: early / preview. The first bootable image has landed — an unstable-edition x86_64 ISO + raw disk image (v2026.08.07), preview-grade (Download). The positioning above describes the target the Solnix OS is designed for, not everything that runs today. x86_64 is the primary target; aarch64, RISC-V, and SPARC are in bring-up (see CPU architecture support). Solnix now installs and runs on real hardware — a full disk install on a Lenovo ThinkPad X1 Extreme with the NixOS workflow intact (ZFS boot environments,
solnix-rebuild, generations,sudo), and working wifi (Intel AC 9560: WPA2/CCMP, encrypted traffic). That install is headless today: graphics are still in active bring-up. The COSMIC desktop has been shown to compile for illumos (Rust, Wayland, GTK4, Mesa/Vulkan), which proved the toolchain stack is viable, but a GPU-driven display on real hardware is not yet working — it is gated on a kernel console-handover and up-to-date GPU drivers (see the news for the honest, dated status). This handbook documents the design and the working infrastructure (binary cache, package search) as they come online. It does not over-claim: sections marked planned are not yet real, and “works” means works on hardware, not merely compiles.
Why
illumos-gate is fully buildable from source today, ships ZFS + zones + bhyve +
LX-branded zones, and already has a native atomic-upgrade story (beadm boot
environments). Nix’s immutable store + generation model maps cleanly onto that.
Solnix marries the two.
How, in one breath
Reuse NixOS’s evaluator and module system verbatim; add an *-illumos platform
and a fine-grained pkgs.solnix.* world to a nixpkgs fork; drive services
through SMF (not systemd) via an smf.services.* module; bake /nix/store
paths into ELF RUNPATH with the Solaris link-editor (no GNU tooling); map
each Nix generation onto a ZFS boot environment. This is nixbsd’s playbook,
retargeted to illumos.
Where to go next
- New here entirely? A short history explains what Solnix descends from (SunOS → Solaris → illumos → Solnix) in a page.
- Coming from Linux or NixOS? For Linux (and NixOS) users is the orientation map (systemd→SMF, Docker→zones, ext4→ZFS, and so on).
- New to illumos? Start with illumos features — the ZFS / DTrace / SMF / zones / boot-environment platform Solnix inherits.
- Know Nix already? See How Solnix is built for how the illumos target is wired, and Learning Nix for what differs.
- Want to use what is live today? Getting started, the binary cache, and package search.