Why GoNIX?

Most operating systems are a patchwork of C accreted over decades. GoNIX asks a simpler question: what if the userspace were one small, memory-safe, statically-linked language? That language is Go.

The thesis

The Linux kernel is excellent and GoNIX keeps it. Everything above the kernel — the part you actually interact with and maintain — is where GoNIX diverges:

The payoff is a base system you can read end to end in an afternoon, that is memory-safe by default, and that cross-compiles to a static image with CGO_ENABLED=0.

Pragmatic about C

GoNIX isn’t dogmatic. Browsers, the Wayland compositor, and system libraries are C, and rewriting them would be silly. So GoNIX builds them from source against musl, every piece tracked as a package. The line is drawn at the base system: that’s Go; the ecosystem is whatever serves you best.

Lineage: the uLinux foundation

GoNIX grew out of uLinux — a micro, cloud-native Linux — and inherited its CRUX-style ports and build lineage. Today uLinux is the foundation: the ports tree, the pkg package manager, and the package ecosystem at pkgs.ulinux.org. GoNIX is the operating system built on top of it. One supplies the parts; the other is the thing you run.

What it’s for

GoNIX is not trying to replace your daily driver distro. It’s a demonstration that a coherent, Go-first UNIX is not only possible but pleasant.