
An independent operating system
NoovexOS
A fast, Unix-like operating system built from scratch for running and building software.
THE SYSTEM
An OS with its own foundations.
A Unix-like kernel and userspace written in C and x86 assembly, not a Linux distribution. The desktop, tools, and package format are part of the same project.

From scratch
Independent kernel and userspace, built without Linux or BSD.
Native software
Signed .nvx packages, ELF applications, and built-in development tools.
Made for the desktop
Native compositor, file tools, terminal, and ELF applications.
NOOVEXOS 64 · USERLAND
Unix-like beyond the terminal.
NoovexOS 64 has its own Unix-like userland, not just a familiar-looking shell. Programs can start child processes, work with directories and files, and use C libraries built for the system — including mlibc, musl, and ported glibc.
Processes & shell
fork, exec, clone, and waitpid; pthreads, signals, pipes, and job control; real musl and ported glibc with a Linux syscall ABI; multi-core bring-up.
Files & permissions
A nested directory tree persisted with NVXFS, familiar commands like ls and mkdir, and enforced Unix-style read, write, and execute bits.
Build native software
A hand-written C library with file streams, memory allocation, math, signals, and sockets — plus real musl and ported glibc libraries. Compile ELF64 programs and run them on NoovexOS 64.
NoovexOS 64 is a hobby OS, not POSIX-certified. Its C library is a broad subset and its user model is minimal. Realtek RTL8821CE Wi-Fi now works end to end on real hardware—an exceptionally difficult achievement for a hobby operating system. Explore the documentation.
NOOVEXOS 64 · PACKAGES & PYTHON
Real packages. Real Python.
C libraries — mlibc, musl, and ported glibc — alongside working sudo and apt install and real Debian .deb packages, running on the from-scratch NoovexOS kernel. CPython 3.13 includes Tkinter and the real IDLE editor, with Tk windows appearing directly on the desktop.

apt resolves dependencies, verifies package SHA-256 checksums, and installs .deb files from Debian mirrors. Read the package and Python reference.
Download packages. Compatibility varies.
You can download software packages with apt, but not every program will run on NoovexOS. Firefox ESR does: after installing it with sudo apt install firefox-esr, Firefox opens and draws its own window on the NoovexOS desktop.
Below, Firefox ESR and its dependencies are being installed with sudo apt install firefox-esr, then Firefox itself runs with its window drawn on the desktop.


NOOVEXOS 64 · SOURCE LAYOUT
What is inside the system.
The kernel is organised by subsystem and compiled as 153 separate C and C++ units with shared interface headers, from bootloader to userland.
The complete NoovexOS 64 source tree.
myboot: BIOS stages, UEFI loader, ISO and hybrid image tools
64-bit startup, interrupts, SMP, timers and user mode
kernel core: init, processes, panic, power, build signature
physical frames, page tables, heap and slab allocator
VFS, NVXFS, FAT, NTFS and packages
ACPI, PCI, input, storage, USB, Ethernet, Wi-Fi, sound, Intel and NVIDIA video, VirtIO
the desktop: theme, window manager, compositor, input
built-in apps: system, office, internet, media, games, X11
web engine: HTML, CSS, layout, painting and the QuickJS bridge
TCP/IP stack, HTTP and TLS, Wi-Fi security, printing
system-call layers: Linux ABI and native
terminal and the nsh shell
kernel libraries: base, crypto, compression, images, C++, JavaScript
Rune code built into the kernel
user space: libc, musl, glibc, programs, modules, packages, X11
interface headers under nvx/
fonts, wallpapers, firmware and game data
musl, BearSSL, Lua, QuickJS, SQLite, DOOM, Quake, ntfs-3g, FFmpeg and more
host-side build and test helpers
architecture reference sources
kernel entry
build script
the list of C units in the kernel
How NoovexOS was built from scratch — follow the system from bootloader to desktop.
INSIDE NOOVEXOS
See it for yourself.


NOOVEXOS 64 · NATIVE BROWSER
The web, rendered natively.
NoovexOS 64 ships its own browser, with the ported QuickJS engine for JavaScript and a nearly complete layout engine of its own — so real websites render and run directly on the OS.



NOOVEXOS 64 v9.67 · DRIVERS
Supported hardware.
43 driver source files and 5,697 lines of code under source/kernel/drivers/, supporting 42 named chipsets and devices.
| Category | Chipset / model | Driver |
|---|---|---|
| USB controller | xHCI (USB 3.0+), alla moderna PCIe-controllers | xhci.c |
| Ethernet | Intel 82540EM (e1000) | e1000.c |
| Ethernet | Intel 82545EM | e1000.c |
| Ethernet | Intel 82574L | e1000.c |
| Ethernet | AMD PCnet-FAST III | nic.c |
| Ethernet | Realtek RTL8139 | rtl8139.c |
| Ethernet | Realtek RTL8169 / RTL8111 | rtl8169.c |
| Ethernet | VirtIO-net (QEMU) | virtio_net.c |
| Wi-Fi | Realtek RTL8821CE (802.11ac) | rtw8821ce.c + rtw_sec.c + rtw_efuse.c |
| Storage | IDE ATA (legacy) | ata.c |
| Storage | SATA AHCI 1.0-1.3.1 | ahci.c |
| Storage | SATA RAID-mode (class 01:04, Intel RST) | ahci.c |
| Storage | NVMe 1.0+ | nvme.c |
| Storage | Intel VMD (9A0B / 467F / A77F / 7D0B / AD0B) | nvme.c |
| Storage | VirtIO-blk | virtio_blk.c |
| Storage | USB mass storage | xhci.c |
| GPU (Intel) | Sandy Bridge (gen 6) | igpu.c |
| GPU (Intel) | Ivy Bridge (gen 7) | igpu.c |
| GPU (Intel) | Haswell (gen 7.5) | igpu.c |
| GPU (Intel) | Broadwell (gen 8) | igpu.c |
| GPU (Intel) | Skylake / Kaby Lake / Coffee Lake / Comet Lake (gen 9) | igpu.c (blitter: ok, render: Stage 1) |
| GPU (Intel) | Apollo Lake / Gemini Lake (gen 9 LP) | igpu.c + private PAT |
| GPU (Intel) | Ice Lake / Tiger Lake / Alder Lake / Meteor Lake | igpu.c |
| GPU (NVIDIA) | GeForce 400+ (Fermi and newer) | nvgpu.c + nvdisp.c + nvmon.c |
| Audio | AC'97 | ac97.c |
| Audio | Intel HD Audio (HDA) | hda.c |
| Touchpad | Synaptics PS/2 (absolute mode with W) | syn_ps2.c |
| Touchpad | ELAN PS/2 | elan_ps2.c |
| Touchpad | ELAN I2C (ELAN06xx) | elan_i2c.c |
| Touchpad | HID-over-I2C (precision touchpads) | i2c_hid.c + tp_hid.c |
| Pointing (VM) | VMware vmmouse (VMware/VBox absolute pointer) | vmmouse.c |
| I2C controller | Intel LPSS | dw_i2c.c |
| I2C controller | AMD AMDI0010 / AMDI0510 / AMD0010 | dw_i2c.c |
| GPIO (Intel SoC) | Sunrise Point / Kaby Lake (INT344B) | tp_igpio.c |
| GPIO (Intel SoC) | Apollo Lake (INT3452) | tp_igpio.c |
| GPIO (Intel SoC) | Gemini Lake (INT3453) | tp_igpio.c |
| ACPI | AML byte-code (methods, _CRS, _DSM, _PS0, _PR0) | aml.c + aml_scan.c + acpi_dev.c |
| Laptop extras | Lenovo ThinkPad (HKEY LEN0068 / IBM0068 / LEN0268) | laptop.c |
| Laptop extras | Lenovo IdeaPad (VPC2004) | laptop.c |
| Laptop extras | ASUS (WMI ATK / ATK0100) | laptop.c |
| RTC | PC CMOS RTC | cmos.c |
| Bus | PCI / PCIe (config via 0xCF8/0xCFC) | pci.c |
OPEN DEVELOPMENT
Built in the open.
NoovexOS is an independent project maintained by volunteers. Follow the work, explore the source, or get involved.
- Kernel
- C and x86 assembly
- Filesystems
- FAT16, FAT32, NTFS, or NVXFS — chosen in the installer
- Minimum RAM
- 64 MB
- Applications
- ELF userspace
Ready to try NoovexOS?
Get an image for your machine or read the installation guide.
