![]() | |
![]() The SerenityOS Desktop | |
Developer | the SerenityOS community |
---|---|
Written in | SerenityC++ |
OS family | Unix-like |
Working state | Current |
Source model | Open source |
Initial release | October 10, 2018; 6 years ago (2018-10-10) |
Repository | |
Available in | English |
Package manager | Ports (as part of the build system) |
Platforms | x86-64 |
Kernel type | Monolithic |
Userland | POSIX |
Default user interface | GUI |
License | BSD-2-Clause |
Official website | www |
SerenityOS is afree and open source desktopoperating system. It features apreemptive kernel, currently supportsx86-64,ARM, andRISC-V[1][2] based computers, and hosts multiple complex applications including its ownweb browser andintegrated development environment (IDE).[3][4] Development started in 2018—initially as a one-man project ofSwedish programmer Andreas Kling—and is now developed by a community ofhobbyists. The project is hosted atGitHub and is described as being not catered to "non-technical users".[5]
Andreas Kling previously worked atNokia and later atApple on theWebKit team.[6] He began developing the project in part to aid his recovery fromaddiction, and as such the name of the project derives from theSerenity Prayer.[7] Starting in 2021, Kling began working full-time on SerenityOS, supported by community donations.[7] On June 3rd, 2024, he stepped down as a project lead from the project (keeping his role as a maintainer) to work on theLadybird browser.[8] Three months later, on October 4th, 2024, he removed himself from a maintainer list in the SerenityOS repository,[9] and updated his mail mapping alias fromkling
atserenityos.org
toandreas
atladybird.org
in the forked Ladybird repository.[10]
SerenityOS aims to be a modernUnix-like operating system, with alook and feel that emulates 1990s operating systems such asMicrosoft Windows andMac OS.[11] Incorporating third-party code into the system is discouraged. The web browser, for instance, does not use a pre-existingweb engine such asWebKit, instead using its own Browser (built on LibWeb engine). There is a collection of ported software, such asGCC,Git andDoom, with varying levels of functionality.[12]
Development does not adhere to arelease cycle; as such, there are no releases.[13] Additionally, nobinary distributions are provided and prospects are expected to build the system fromsource.[14] The system is written in what the authors call "Serenity C++",[15] aC++coding style that avoidsexceptions and features its ownstandard library.[16]
The relative popularity of SerenityOS compared to other hobbyist systems is in part due to the modest success of Kling's YouTube channel, where he uploaded videos of himself developing parts of the system alongside demos and monthly progress updates (until April 2024, where the last update was hosted by Andrew Kaster, project’s core developer).[17]
Work is currently at the early stages to supportAArch64 andRISC-V based processors.[18]
SerenityOS includes a version of the Ladybird web browser, built from the ground up using its internal libraries LibWeb, LibJS and LibWasm.[19][20][21] Andreas Kling develops it alongside paid and volunteer contributors.[22] On June 3rd, 2024, Kling announced his plans to fork Ladybird and begin development on the browser as a separate project.[8] On July 1, 2024, in collaboration withChris Wanstrath, Kling announced the founding of the Ladybird Browser Initiative, a 501(c)(3) nonprofit to support the development of the browser.[23][24]
As of July 2024, development of Ladybird mostly occurs in its own repository, with changes actively synced to the SerenityOS version.[25]
Jim Salter ofArs Technica regarded the use of theext2file system as his least favorite feature of the operating system. Compared toTempleOS (another operating system well known in the hobbyist community), he considered it more accessible.[4] For less technical users that are looking for a mid–to–late 90s reminiscent visual style, theXfce Chicago95 theme or the Redmond Project has been recommended instead.[26]