Hysen Labs
Open-source project
SerenityOS/serenity avatar
SerenityOS

serenity

The Serenity Operating System 🐞

33,757 stars3,544 forksC++BSD-2-Clause
01
DEEP OPEN-SOURCE ANALYSIS

SerenityOS: a from scratch operating system with a 90s heart

SerenityOS is a custom Unix like operating system built from scratch, aimed at the look of late 1990s software and the power user reach of late 2000s Unix. The whole thing lives in one repository.

02
DEEP OPEN-SOURCE ANALYSIS

The idea

The README calls SerenityOS a love letter to 90s user interfaces wrapped around a custom Unix like core, and it owns the borrowing openly, stealing beautiful ideas from other systems. The goal is a marriage between the aesthetic of late 1990s productivity software and the power user accessibility of late 2000s Unix. It is a system by its own community, based on what they like.

03
DEEP OPEN-SOURCE ANALYSIS

What's in the box

A 64 bit kernel with pre emptive multi threading, a browser with JavaScript and WebAssembly, system services like WindowServer, AudioServer, and WebServer, and modern IPC. POSIX compatibility covers a shell, syscalls, signals, pseudoterminals, and standard Unix utilities. File systems are POSIX like with ext2, and there is a network stack speaking IPv4, TCP, and UDP, plus DNS, HTTP, Gemini, IMAP, and NTP.

04
DEEP OPEN-SOURCE ANALYSIS

Security and tooling

The security list includes hardware protections, limited userland capabilities, W^X memory, pledge and unveil, ASLR, OOM resistance, and web content isolation. Developer tools run from kernel supported profiling to a CrashReporter, a HexEditor, an interactive GUI playground, and the HackStudio IDE for C++. There is a unified style and a flexible theming system with custom fonts.

05
DEEP OPEN-SOURCE ANALYSIS

Libraries and formats

Libraries span cryptography to OpenGL, audio, JavaScript, and a GUI toolkit, even a chess engine. Supported file formats include PNG, JPEG, GIF, MP3, WAV, FLAC, ZIP, TAR, PDF, and QOI. Everything is built from scratch in the repository with no extra dependencies, and on top of that sit over three hundred ports of popular open source software, from games to compilers and multimedia apps.

06
DEEP OPEN-SOURCE ANALYSIS

Building and reading the docs

Cross compilation works from Linux, macOS, Windows with WSL2, and other Unix systems, and the default build launches a QEMU instance. Man pages are generated from Markdown sources and hosted at man.serenityos.org. The README's author list is long, naming everyone with over 100 commits, which gives a sense of how many hands have touched the project.

07
DEEP OPEN-SOURCE ANALYSIS

Editorial conclusion

The tone of the README is part of the charm, a system by its own community, built from the things they like. For anyone curious what a hobby OS project with big ambitions looks like in one place, this is a good read.

08
DEEP OPEN-SOURCE ANALYSIS

Official sources

09
Community notes

Community notes