Developer | Andreas Kling and the SerenityOS community |
---|---|
Written in | Serenity C++ |
OS family | Unix-like |
Working state | Current |
Source model | Open source |
Initial release | October 10, 2018 |
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 a free and open source desktop operating system that has been in continuous development since 2018. Initially the one-man project of Swedish programmer Andreas Kling, SerenityOS is now developed by a community of hobbyists. The system supports the x86-64 instruction set, [1] features a preemptive kernel, and hosts multiple complex applications including its own web browser, Ladybird, and integrated development environment (IDE). [2] [3]
Andreas Kling previously worked at Nokia and later at Apple on the WebKit team. [4] He began developing the project in part to aid his recovery from addiction, and as such the name of the project derives from the Serenity Prayer. [5] As of 2021, Kling works full-time on SerenityOS, supported by community donations. [5]
SerenityOS aims to be a modern Unix-like operating system, with a look and feel that emulates 1990s operating systems such as Microsoft Windows and Mac OS. [6] Incorporating third-party code into the system is discouraged. The web browser, for instance, does not use a pre-existing web engine such as WebKit, instead using its own known as LibWeb. There is a collection of ported software, such as GCC, Git and Doom, with varying levels of functionality. [7]
Development does not adhere to a release cycle; as such, there are no releases. [8] Additionally, no binary distributions are provided and prospects are expected to build the system from source. [9] The system is written in what the authors call "Serenity C++", [10] a variant of C++ that lacks exceptions and features its own standard library. [11]
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 uploads videos of himself developing parts of the system alongside demos and monthly progress updates. [12]
SerenityOS includes the Ladybird browser, which can also run on other operating systems. It includes a functional JavaScript engine. [13] [14]
Jim Salter of Ars Technica regarded the use of the ext2 file system as his least favorite feature of the operating system. Compared to TempleOS (another operating system well known in the hobbyist community), he considered it more accessible. [3] For less technical users that are looking for a mid–to–late 90s reminiscent visual style, the Xfce Chicago95 theme or the Redmond Project has been recommended instead. [15]
Irssi is an Internet Relay Chat (IRC) client program for Linux, FreeBSD, macOS and Microsoft Windows. It was originally written by Timo Sirainen, and released under the terms of the GNU GPL-2.0-or-later in January 1999.
MINIX is a Unix-like operating system based on a microkernel architecture. Since version 2.0, it has been Portable Operating System Interface (POSIX) compliant.
Darwin is the core Unix operating system of macOS, iOS, watchOS, tvOS, iPadOS, visionOS, and bridgeOS. It previously existed as an independent open-source operating system, first released by Apple Inc. in 2000. It is composed of code derived from NeXTSTEP, FreeBSD, other BSD operating systems, Mach, and other free software projects' code, as well as code developed by Apple.
Camino is a discontinued free, open source, GUI-based Web browser based on Mozilla's Gecko layout engine and specifically designed for the OS X operating system. In place of an XUL-based user interface used by most Mozilla-based applications, Camino used Mac-native Cocoa APIs. On May 30, 2013, the Camino Project announced that the browser is no longer being developed.
XNU is the computer operating system (OS) kernel developed at Apple Inc. since December 1996 for use in the Mac OS X operating system and released as free and open-source software as part of the Darwin OS, which in addition to macOS is also the basis for the Apple TV Software, iOS, iPadOS, watchOS, visionOS, and tvOS OSes.
WebKit is a browser engine developed by Apple and primarily used in its Safari web browser, as well as all web browsers on iOS and iPadOS. WebKit is also used by the PlayStation consoles starting with the PS3, the Tizen mobile operating systems, the Amazon Kindle e-book reader, Nintendo consoles starting with the 3DS Internet Browser, and the discontinued BlackBerry Browser. WebKit's C++ application programming interface (API) provides a set of classes to display Web content in windows, and implements browser features such as following links when clicked by the user, managing a back-forward list, and managing a history of pages recently visited.
This article compares browser engines, especially actively-developed ones.
NetSurf is an open-source web browser which uses its own layout engine. Its design goal is to be lightweight and portable. NetSurf provides features including tabbed browsing, bookmarks and page thumbnailing.
Chromium is a free and open-source web browser project, primarily developed and maintained by Google. It is a widely-used codebase, providing the vast majority of code for Google Chrome and many other browsers, including Microsoft Edge, Samsung Internet, and Opera. The code is also used by several app frameworks.
Uzbl is a discontinued free and open-source minimalist web browser designed for simplicity and adherence to the Unix philosophy. Development began in early 2009 and is still considered in alpha software by the developers. The core component of Uzbl is written in C, but other languages are also used, most notably Python. All parts of the Uzbl project are released as free software under GNU GPL-3.0-only.
Arora is a discontinued free and open-source web browser developed by Benjamin C. Meyer. It was available for Linux, Mac OS X, Windows, FreeBSD, OS/2, Haiku, Genode, and any other operating system supported by the Qt toolkit. The browser's features included tabbed browsing, bookmarks, browsing history, smart location bar, OpenSearch, session management, privacy mode, a download manager, WebInspector, and AdBlock.
ChromiumOS is a free and open-source operating system designed for running web applications and browsing the World Wide Web. It is the open-source version of ChromeOS, a Linux-based operating system made by Google.
The Dolphin Browser is a web browser for the Android and iOS operating systems developed by MoboTap Inc. It was one of the first alternative browsers for the Android platform that introduced support for multi-touch gestures. Dolphin Browser uses its native platform's default browser engine.
Emscripten is an LLVM/Clang-based compiler that compiles C and C++ source code to WebAssembly, primarily for execution in web browsers.
Raspberry Pi OS is a Unix-like operating system based on the Debian GNU/Linux distribution for the Raspberry Pi family of compact single-board computers. First developed independently in 2012, it has been produced as the primary operating system for these boards since 2013, distributed by the Raspberry Pi Foundation.
GNU LibreJS, or simply LibreJS, is a free software web browser extension for Mozilla Firefox-based browsers, written by the GNU Project. Its purpose is to block nonfree nontrivial JavaScript programs and allow free or trivial JS in a user's web browser. The add-on was written to address the so-called "JavaScript Trap" first described by Richard Stallman in 2009, a situation in which many users unknowingly run proprietary software in their web browsers.
Fuchsia is an open-source capability-based operating system developed by Google. In contrast to Google's Linux-based operating systems such as ChromeOS and Android, Fuchsia is based on a custom kernel named Zircon. It publicly debuted as a self-hosted git repository in August 2016 without any official corporate announcement. After years of development, its official product launch was in 2021 on the first-generation Google Nest Hub, replacing its original Linux-based Cast OS.