Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

For macOS users

macOS is a Unix — certified UNIX, in fact — so your terminal muscle memory (the shell, ssh, pipes, man) transfers directly. What changes is everything under the hood: a different kernel, a different service manager, a different filesystem, a different package story, and — bluntly — Solnix is a server/developer OS without the polished desktop you have today (graphics are in active bring-up; see the status). If you live in Terminal and like how coherent macOS feels, you will recognize the philosophy. This page maps what you know onto Solnix; each row points at the deeper chapter.

Solnix is illumos managed with Nix.

The one-screen map

You know (macOS / Darwin)On Solnix (illumos)Where
launchd (launchctl, .plist)SMF — the same "dependency-aware supervisor with a repository" idea; svcs, svcadmSMF services
launchctl list / Console.app logssvcs -x + /var/svc/log/<fmri>.logSMF · Debugging
Homebrew / MacPorts (brew install)Nix — pkgs.solnix.*, declarative + reproducible, whole-systemLearning Nix
APFS + Disk Utility, snapshotsZFS — pool + datasets, checksums, snapshots, clones (APFS’s snapshot idea, deeper)ZFS storage
Time MachineZFS snapshots + zfs send/recv (manual today; the primitives are stronger)ZFS storage
Docker Desktop (a Linux VM)Zones (native, no VM) + LX zones for Linux binariesZones · LX zones
dtrace / InstrumentsDTrace — the original; Instruments is built on DTrace. Same tool, native.DTrace
lldb / crash reportsMDB (mdb), coreadm, crash dumpsDebugging
sudopfexec — RBAC roles + fine-grained kernel privilegessee RBAC below
pf firewall (pfctl)ipfilter (ipf / ipnat)Networking
networksetup / ifconfigCrossbow: dladm, ipadm, flowadmNetworking (Crossbow)
System Integrity Protection / sealed system volumeZFS boot environments — atomic OS updates, instant rollback (via Nix generations)Boot environments
dyld, .dylib, install_name_toolELF + Solaris link-editor (RUNPATH), elfdumpHow Solnix is built

What actually feels different

You know DTrace already — this is its home. Apple shipped DTrace and built Instruments on it; on Solnix you get the reference implementation, unsandboxed and complete. Your sudo dtrace -n '...' becomes pfexec dtrace -n '...'. See DTrace.

launchd → SMF is a near-one-to-one mental move. Both replace shell init with a dependency-aware supervisor backed by a declarative description and a queryable state. You stop writing .plist files and start describing smf.services.* in Nix; launchctl list becomes svcs, and a broken service is diagnosed with svcs -x instead of digging through Console. See SMF services.

Homebrew → Nix is a bigger leap than it looks. brew is imperative and per-package; Nix builds a reproducible closure for the entire machine and makes every change an atomic, rollback-able boot environment. No more "works on my Mac" drift — the config is the system. See Learning Nix.

Containers are zones, and there is no hidden Linux VM. Docker Desktop on macOS runs a Linux VM behind the scenes; illumos zones are native kernel-shared isolation with no VM, and LX-branded zones present the Linux ABI directly on the illumos kernel. On Solnix this tooling is early; see Zones and LX zones.

pfexec, not sudo — and the firewall is ipf, not pfctl. Confusingly, macOS’s pf and illumos’s ipf are different firewalls (macOS adopted BSD pf; illumos kept the older IPF that pf succeeded). Privilege is RBAC + fine-grained kernel privileges via pfexec. See Networking.

The honest part

macOS gives you a world-class desktop. Solnix does not, yet — it installs and runs headless on real hardware with wifi, and a graphical desktop (COSMIC) is in active bring-up but not working on hardware today (see the news for dated status). If you are here for a Unix server or a reproducible development OS with the best filesystem and tracing in the business, Solnix is for you now. If you need a daily-driver GUI laptop, it is not there yet — we would rather tell you straight.

What Solnix is not

  • Not macOS/Darwin — different kernel (illumos, not XNU/Mach) and no Cocoa.
  • Not Linux — different kernel, libc, and init.
  • Not a finished desktop — see the status note above and the roadmap.

Where to go from here