# SerenityOS

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/SerenityOS
> Markdown URL: https://mediated.wiki/source/SerenityOS.md
> Source: https://en.wikipedia.org/wiki/SerenityOS
> Source revision: 1354251830
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

Hobbyist desktop computing operating system

Operating system

SerenityOS The SerenityOS Desktop Developer the SerenityOS community Written in Serenity C++ OS family Unix-like Working state Current Source model Open source Initial release October 10, 2018; 7 years ago (2018-10-10) Repository github.com/SerenityOS/serenity Available in English Package manager Ports (as part of the build system) Supported platforms x86-64, ARM, RISC-V Kernel type Monolithic Userland POSIX Default user interface GUI License BSD-2-Clause Official website www.serenityos.org

**SerenityOS** is a [free and open source](/source/Free_and_open_source) desktop [operating system](/source/Operating_system). It features a [preemptive kernel](/source/Kernel_preemption), currently supports [x86-64](/source/X86-64), [ARM](/source/ARM_architecture_family), and [RISC-V](/source/RISC-V)[1][2] based computers, and hosts multiple complex applications including its own [web browser](/source/Web_browser) and [integrated development environment](/source/Integrated_development_environment) (IDE).[3][4]

SerenityOS began development in 2018 as a solo project by Swedish programmer Andreas Kling. It is maintained by a community of [hobbyists](/source/Hobbyist_operating_system) on [GitHub](/source/GitHub) where it is described as "a love letter to '90s user interfaces with a custom Unix-like core"[5] that "does not cater to non-technical users".[6]

## History

Buggie, the SerenityOS mascot

Andreas Kling previously worked at [Nokia](/source/Nokia) and later at [Apple](/source/Apple_Inc.) on the [WebKit](/source/WebKit) team.[7] He began developing the project in part to aid his recovery from [addiction](/source/Substance_use_disorder), and as such the name of the project derives from the [Serenity Prayer](/source/Serenity_Prayer).[8] Starting in 2021, Kling began working full-time on SerenityOS, supported by community donations.[8] On June 3rd, 2024, he stepped down as a project lead from the project (keeping his role as a maintainer) to work on the [Ladybird browser](/source/Ladybird_(web_browser)).[9] Three months later, on October 4th, 2024, he removed himself from a maintainer list in the SerenityOS repository,[10] and updated his mail mapping alias from kling at serenityos.org to andreas at ladybird.org in the forked Ladybird repository.[11]

## Features and development

SerenityOS aims to be a modern [Unix-like](/source/Unix-like) operating system, with a [look and feel](/source/Look_and_feel) that emulates 1990s operating systems such as [Microsoft Windows](/source/Windows_9x) and [Mac OS](/source/Classic_Mac_OS).[12] Incorporating third-party code into the system is discouraged. The web browser, for instance, does not use a pre-existing [web engine](/source/Browser_engine) such as [WebKit](/source/WebKit), instead using its own Browser (built on LibWeb engine). There is a collection of ported software, such as [GCC](/source/GCC_(software)), [Git](/source/Git) and [Doom](/source/Doom_(1993_video_game)), with varying levels of functionality.[13]

Development does not adhere to a [release cycle](/source/Software_release_life_cycle); as such, there are no releases.[14] Additionally, no [binary distributions](/source/Software_distribution) are provided and prospects are expected to build the system from [source](/source/Source_code).[15] The system is written in what the authors call "Serenity C++",[16] a [C++](/source/C%2B%2B) [coding style](/source/Programming_style) that avoids [exceptions](/source/Exception_handling) and features its own [standard library](/source/Standard_library).[17]

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, the project’s core developer).[18]

Work is currently at the early stages to support [AArch64](/source/AArch64) and [RISC-V](/source/RISC-V) based processors.[19]

### Web browser

Main article: [Ladybird (web browser)](/source/Ladybird_(web_browser))

SerenityOS includes a version of the Ladybird web browser, built from the ground up using its internal libraries LibWeb, LibJS and LibWasm.[20][21][22] Andreas Kling develops it alongside paid and volunteer contributors.[23] On June 3rd, 2024, Kling announced his plans to fork Ladybird and begin development on the browser as a separate project.[9] On July 1, 2024, in collaboration with [Chris Wanstrath](/source/Chris_Wanstrath), Kling announced the founding of the Ladybird Browser Initiative, a 501(c)(3) nonprofit to support the development of the browser.[24][25]

As of July 2024, development of Ladybird mostly occurs in its own repository, with changes sometimes being synced to the SerenityOS version.[26]

## Reception

Jim Salter of *[Ars Technica](/source/Ars_Technica)* regarded the use of the [ext2 file system](/source/Ext2) as his least favorite feature of the operating system. Compared to [TempleOS](/source/TempleOS) (another operating system well known in the hobbyist community), he considered SerenityOS more accessible.[4] For less technical users that are looking for a mid–to–late 90s reminiscent visual style, the [Xfce](/source/Xfce) Chicago95 theme as well as the Redmond Project have been recommended instead.[27]

## References

1. **[^](#cite_ref-dec2022_1-0)** ["SerenityOS update (December 2022)"](https://www.youtube.com/watch?v=Q3PyN2Ctrpg). *[YouTube](/source/YouTube)*.

1. **[^](#cite_ref-2)** ["serenity/README.md at master · SerenityOS/serenity"](https://github.com/SerenityOS/serenity/blob/master/README.md). *GitHub*. Retrieved 2025-01-29.

1. **[^](#cite_ref-serenity_3-0)** Kling, Andreas. ["SerenityOS"](https://www.serenityos.org/). Retrieved 2021-08-26.

1. ^ [***a***](#cite_ref-ars21_4-0) [***b***](#cite_ref-ars21_4-1) Salter, Jim (2021-08-18). ["Not-a-Linux distro review: SerenityOS is a Unix-y love letter to the '90s"](https://arstechnica.com/gadgets/2021/08/not-a-linux-distro-review-serenityos-is-a-unix-y-love-letter-to-the-90s/). *[Ars Technica](/source/Ars_Technica)*. [Archived](https://web.archive.org/web/20210821122700/https://arstechnica.com/gadgets/2021/08/not-a-linux-distro-review-serenityos-is-a-unix-y-love-letter-to-the-90s/) from the original on 2021-08-21. Retrieved 2021-08-18.

1. **[^](#cite_ref-5)** ["The Serenity Operating System 🐞"](https://github.com/SerenityOS/serenity?tab=readme-ov-file#about). *GitHub*.

1. **[^](#cite_ref-6)** ["serenity/Documentation/FAQ.md at master · SerenityOS/serenity"](https://github.com/SerenityOS/serenity/blob/master/Documentation/FAQ.md). *GitHub*. Retrieved 2024-12-04.

1. **[^](#cite_ref-7)** Proven, Liam. ["SerenityOS: A remarkable achievement for a small project"](https://www.theregister.com/2022/03/31/serenityos/). *[The Register](/source/The_Register)*. Retrieved 2023-05-19.

1. ^ [***a***](#cite_ref-kling21_8-0) [***b***](#cite_ref-kling21_8-1) Kling, Andreas (2021-05-28). ["I quit my job to focus on SerenityOS full time"](https://awesomekling.github.io/I-quit-my-job-to-focus-on-SerenityOS-full-time/).

1. ^ [***a***](#cite_ref-:0_9-0) [***b***](#cite_ref-:0_9-1) Kling, Andreas (2024-06-03). ["I'm forking Ladybird and stepping down as SerenityOS BDFL"](https://awesomekling.substack.com/p/forking-ladybird-and-stepping-down-serenityos). *Andreas Kling*. Retrieved 2024-06-04.

1. **[^](#cite_ref-10)** Kling, Andreas (2024-10-04). ["Meta: Remove myself from maintainer list"](https://github.com/SerenityOS/serenity/commit/44c9fafbe4356966569c5d8ee8061e923e5c5515). *GitHub*. Retrieved 2024-10-10.

1. **[^](#cite_ref-11)** Kling, Andreas (2024-10-04). ["Meta: Update my e-mail address everywhere"](https://github.com/LadybirdBrowser/ladybird/commit/cc4b3cbaccdaa8f89c492f3fa3a4e909fb839fd9). *GitHub*. Retrieved 2024-10-10.

1. **[^](#cite_ref-tivi20_12-0)** TIVI. ["Ohjelmoija kehitti c++:lla uuden käyttöjärjestelmän, joka jäljittelee 1990-lukua"](https://www.tivi.fi/uutiset/ohjelmoija-kehitti-clla-uuden-kayttojarjestelman-joka-jaljittelee-1990-lukua/4c5511d2-0dc5-4a0a-a0b6-ec6d12f83b7c). *Tivi* (in Finnish). [Archived](https://web.archive.org/web/20200516163131/https://www.tivi.fi/uutiset/ohjelmoija-kehitti-clla-uuden-kayttojarjestelman-joka-jaljittelee-1990-lukua/4c5511d2-0dc5-4a0a-a0b6-ec6d12f83b7c) from the original on 2020-05-16. Retrieved 2021-08-18.

1. **[^](#cite_ref-13)** ["serenity/Ports at master · SerenityOS/serenity"](https://github.com/SerenityOS/serenity). *GitHub*. Retrieved 2021-10-07.

1. **[^](#cite_ref-14)** ["Releases · SerenityOS/serenity"](https://github.com/SerenityOS/serenity). *GitHub*. Retrieved 2021-10-07.

1. **[^](#cite_ref-15)** [*"Where are the ISO images?" in: serenity/FAQ.md*](https://github.com/SerenityOS/serenity/blob/350c5a751dfaa36a5f67cb32472da32c2842572a/Documentation/FAQ.md), SerenityOS, 2021-10-07, retrieved 2021-10-07

1. **[^](#cite_ref-16)** [*Documentation/CodingStyle.md*](https://github.com/SerenityOS/serenity/blob/49259777efd6e1db22ee9ff6a89f373fa5f8b5d6/Documentation/CodingStyle.md), SerenityOS, 2021-10-07, retrieved 2021-10-07

1. **[^](#cite_ref-17)** Kazakova, Anastasia (2021-11-12). ["Talking to SerenityOS Contributors About a Scratch-built C++ Developer's Playground in Modern C++"](https://blog.jetbrains.com/clion/2021/11/talking-to-serenityos-contributors/). *blog.jetbrains.com*. [Archived](https://web.archive.org/web/20231222105349/https://blog.jetbrains.com/clion/2021/11/talking-to-serenityos-contributors/) from the original on 2023-12-22. Retrieved 2024-01-13.

1. **[^](#cite_ref-hackaday20_18-0)** Gregori, Sven (2020-02-24). ["Reaching Serenity: Porting Git To A Homebrew Operating System"](https://hackaday.com/2020/02/23/reaching-serenity-porting-git-to-a-homebrew-operating-system/). *[Hackaday](/source/Hackaday)*. [Archived](https://web.archive.org/web/20200224150611/https://hackaday.com/2020/02/23/reaching-serenity-porting-git-to-a-homebrew-operating-system/) from the original on 2020-02-24. Retrieved 2021-08-18.

1. **[^](#cite_ref-may2024_19-0)** ["SerenityOS update (April 2024)"](https://www.youtube.com/watch?v=nWjAxNHXd_8). *[YouTube](/source/YouTube)*.

1. **[^](#cite_ref-20)** Proven, Liam. ["Serenity OS browser, Ladybird, now cross-platform"](https://www.theregister.com/2023/10/17/serenity_os_turns_five/). *[The Register](/source/The_Register)*. Retrieved 2024-04-06.

1. **[^](#cite_ref-21)** By (2023-10-10). ["Jenny's Daily Drivers: SerenityOS, And In Particular, Ladybird"](https://hackaday.com/2023/10/10/jennys-daily-drivers-serenityos-and-in-particular-ladybird/). *Hackaday*. Retrieved 2024-04-06.

1. **[^](#cite_ref-22)** [*LadybirdBrowser/ladybird*](https://github.com/LadybirdBrowser/ladybird?tab=readme-ov-file#features), Ladybird, 2024-07-17, retrieved 2024-07-17

1. **[^](#cite_ref-23)** ["Ladybird"](https://ladybird.org/). *ladybird.org*. Retrieved 2024-07-17.

1. **[^](#cite_ref-24)** ["Announcing the Ladybird Browser Initiative"](https://ladybird.org/announcement.html). *ladybird.org*. Retrieved 2024-07-01.

1. **[^](#cite_ref-25)** Andreas Kling (2024-07-01). [*Ladybird announcement*](https://www.youtube.com/watch?v=k9edTqPMX_k). Retrieved 2024-07-01 – via YouTube.

1. **[^](#cite_ref-26)** ["Pull requests · SerenityOS/serenity"](https://github.com/SerenityOS/serenity/pulls?q=is%3Apr+Cherry-pick). *GitHub*. Retrieved 2024-07-17.

1. **[^](#cite_ref-27)** Beschizza, Rob (2021-08-17). ["A refined 90s-style operating system you can actually use"](https://boingboing.net/2021/08/17/a-refined-90s-style-operating-system-you-can-actually-use.html). *[Boing Boing](/source/Boing_Boing)*. [Archived](https://web.archive.org/web/20210821122700/https://boingboing.net/2021/08/17/a-refined-90s-style-operating-system-you-can-actually-use.html) from the original on 2021-08-21. Retrieved 2021-08-18.

## External links

Wikimedia Commons has media related to [SerenityOS](https://commons.wikimedia.org/wiki/Category:SerenityOS).

- [Official website](https://www.serenityos.org)

v t e Hobbyist operating systems AROS BareMetal EmuTOS FiwixOS GeckOS HelenOS KolibriOS MenuetOS Phantom OS RedoxOS SerenityOS SharpOS SkyOS Syllable Desktop SymbOS TempleOS ToaruOS Category List

v t e Unix and Unix-like operating systems and compatibility layers Architecture Filesystem History Philosophy Security Shell Operating systems BSD 386BSD FreeBSD NetBSD OpenBSD DragonFly BSD Darwin macOS iOS audioOS iPadOS tvOS watchOS bridgeOS DYNIX NeXTSTEP SunOS Ultrix Linux Android Arch ChromeOS Debian Fedora Gentoo Red Hat Slackware SUSE Ubuntu Other distributions System V A/UX AIX HP-UX IRIX OpenServer Solaris OpenSolaris Illumos Tru64 UNIX UnixWare Other Coherent Domain/OS GNU Hurd LynxOS Minix MOS OSF/1 QNX BlackBerry 10 Research Unix SerenityOS Xenix more... Compatibility layers Cygwin Darling Eunice GNV Interix MachTen Microsoft POSIX subsystem MKS Toolkit PASE P.I.P.S. PWS/VSE-AF UNIX System Services UserLAnd Technologies Windows Services for UNIX Windows Subsystem for Linux Italics indicate discontinued systems. Category Commons

---
Adapted from the Wikipedia article [SerenityOS](https://en.wikipedia.org/wiki/SerenityOS) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/SerenityOS?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
