A from-scratch x86_64 operating system — kernel, desktop, network stack and toolchain, written from nothing.
Named for Nyx, the Greek primordial goddess of night — and built from her children: Hemera (day), Erebus (darkness) and Selene (the moon).
NyxOS is a hobby operating system built from the ground up: a higher-half x86_64 kernel with SMP, preemptive multitasking, paging, ELF userspace and signals; a windowed desktop that boots to a purple night-themed environment; an IPv4 TCP/IP stack with TLS; an ext2 filesystem; and an in-OS C toolchain that self-hosts — you can compile and install programs from inside the running OS.
It is a monolithic distribution today (like a young hobby OS should be) that is slowly growing into a family of components — each named, as tradition here demands, for a deity of the night.
The system
| Repo | What it is |
|---|---|
| nyx-os | The operating system itself — kernel, desktop, userland and build. Boots to a bootable ISO. |
| ports | The xbm package tree — programs compiled inside NyxOS by its own cc. |
The desktop — each component named for a deity of the night
| Repo | What it is |
|---|---|
| hemera | The compositor — the windowed purple desktop (Hemera, day). |
| erebus | The terminal — the nyxsh shell (Erebus, darkness). |
| selene | The web browser — HTTP/HTTPS over a from-scratch TLS stack (Selene, the moon). |
| mnemosyne | The text editor (Mnemosyne, memory). |
The language family — NyxOS rebuilt from scratch in 17 languages, each a real bare-metal kernel that boots: Rust · C++ · Zig · Go · Swift · Haskell · OCaml · Lisp · D · Nim · Ada · Odin · Hare · C# · Pascal · COBOL · Assembly
Each desktop component is a source snapshot today (built into the nyx-os kernel); the roadmap graduates each into a standalone ring-3 ELF launched through the window syscalls.
- Kernel — SMP, preemptive scheduler, paging + COW,
mmap, threads, pipes, signals, ELF loader - Desktop — a compositor (Hemera) with windows, taskbar and a start menu; terminal (Erebus), file manager, text editor, paint, a web browser (Selene), a calculator and games (including DOOM)
- Networking — IPv4, TCP/UDP, ARP, ICMP, DHCP, DNS, HTTP and a TLS client; BSD sockets;
ping/nc/wget/httpd - Filesystem — a VFS over ext2 (read/write), FAT32,
/proc,/dev, symlinks and file permissions - Toolchain — a ported TinyCC that self-hosts, plus
xbm, the package manager - Audio — SB16 and AC97 drivers; WAV playback through bus-master DMA
- Security — NX/SMEP, stack canaries, PBKDF2 auth, a CSPRNG-backed
/dev/urandom, and a growing self-test battery run in CI