Software:SerenityOS

From HandWiki
Short description: Hobbyist desktop computing operating system
SerenityOS
LadyBall
The SerenityOS Desktop as it was on October 22, 2022. In the screenshot you can see the Text Editor, the File Manager, the Terminal emulator and the Ladybird web browser. A CatDog is sitting on the text editor.
The SerenityOS Desktop
DeveloperAndreas Kling and the SerenityOS community
Written inSerenity C++
OS familyUnix-like
Working stateCurrent
Source modelOpen source
Initial releaseOctober 10, 2018; 5 years ago (2018-10-10)
Available inEnglish
Package managerPorts (as part of the build system)
Platformsx86-64
Kernel typeMonolithic
UserlandPOSIX
Default user interfaceGUI
LicenseBSD-2-Clause
Official websitewww.serenityos.org

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]

History

Buggie, the SerenityOS mascot

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]

Features

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]

Reception

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.[13]

References

  1. "SerenityOS update (December 2022)". https://www.youtube.com/watch?v=Q3PyN2Ctrpg. 
  2. Kling, Andreas. "SerenityOS". https://www.serenityos.org/. 
  3. 3.0 3.1 Salter, Jim (2021-08-18). "Not-a-Linux distro review: SerenityOS is a Unix-y love letter to the '90s" (in en-us). https://arstechnica.com/gadgets/2021/08/not-a-linux-distro-review-serenityos-is-a-unix-y-love-letter-to-the-90s/. 
  4. Proven, Liam. "SerenityOS: A remarkable achievement for a small project" (in en). https://www.theregister.com/2022/03/31/serenityos/. 
  5. 5.0 5.1 Kling, Andreas (2021-05-28). "I quit my job to focus on SerenityOS full time" (in en-GB). https://awesomekling.github.io/I-quit-my-job-to-focus-on-SerenityOS-full-time/. 
  6. TIVI. "Ohjelmoija kehitti c++:lla uuden käyttöjärjestelmän, joka jäljittelee 1990-lukua" (in fi). https://www.tivi.fi/uutiset/ohjelmoija-kehitti-clla-uuden-kayttojarjestelman-joka-jaljittelee-1990-lukua/4c5511d2-0dc5-4a0a-a0b6-ec6d12f83b7c. 
  7. "serenity/Ports at master · SerenityOS/serenity" (in en). https://github.com/SerenityOS/serenity. 
  8. "Releases · SerenityOS/serenity" (in en). https://github.com/SerenityOS/serenity. 
  9. "Where are the ISO images?" in: serenity/FAQ.md, SerenityOS, 2021-10-07, https://github.com/SerenityOS/serenity/blob/350c5a751dfaa36a5f67cb32472da32c2842572a/Documentation/FAQ.md, retrieved 2021-10-07 
  10. Documentation/CodingStyle.md, SerenityOS, 2021-10-07, https://github.com/SerenityOS/serenity/blob/49259777efd6e1db22ee9ff6a89f373fa5f8b5d6/Documentation/CodingStyle.md, retrieved 2021-10-07 
  11. Kazakova, Anastasia (2021-11-12). "Talking to SerenityOS Contributors About a Scratch-built C++ Developer’s Playground in Modern C++" (in en). https://blog.jetbrains.com/clion/2021/11/talking-to-serenityos-contributors/. 
  12. Gregori, Sven (2020-02-24). "Reaching Serenity: Porting Git To A Homebrew Operating System" (in en-US). https://hackaday.com/2020/02/23/reaching-serenity-porting-git-to-a-homebrew-operating-system/. 
  13. Beschizza, Rob (2021-08-17). "A refined 90s-style operating system you can actually use" (in en-US). https://boingboing.net/2021/08/17/a-refined-90s-style-operating-system-you-can-actually-use.html. 

External links