Tidak Ada Deskripsi

Nico Weber 1e95c08db5 LibGfx/ISOBMFF: Add JPEG2000ChannelDefinitionBox 1 tahun lalu
.devcontainer 388d455575 Meta: Switch to clang-format-16 as the standard formatter 2 tahun lalu
.github 660d6d0c85 Meta: Add Polar to FUNDING.yml 1 tahun lalu
AK 07750774cf AK: Allow creating a MaybeOwned<Superclass> from a MaybeOwned<Subclass> 1 tahun lalu
Base 50ae3ca659 Base: Add Emoji 1 tahun lalu
Documentation c83e50af0b Documentation: Update for the removal of SERENITY_SOURCE_DIR requirement 1 tahun lalu
Kernel 378fa09a5a Kernel/riscv64: Fix typo (CSR::SATP::Mode::{Sv67 => Sv57}) 1 tahun lalu
Ladybird ed24d8f2b5 Ladybird/AppKit: Implement pasting content from the clipboard 1 tahun lalu
Meta 65bd090815 LibGfx/ISOBMFF: Start creating JPEG2000 box types 1 tahun lalu
Ports 003ac1bd51 Ports: Update openrct2 to version 0.4.9 1 tahun lalu
Tests 1e31753382 Tests/LibGfx: Add a jbig2 file using refinement in the text segment 1 tahun lalu
Toolchain f7a1f28d7f Kernel: Add initial basic support for KASAN 1 tahun lalu
Userland 1e95c08db5 LibGfx/ISOBMFF: Add JPEG2000ChannelDefinitionBox 1 tahun lalu
.clang-format 66a89bd695 Meta: Support using clang-format on Objective-C++ files 1 tahun lalu
.clang-tidy e6762e8d4d Meta: Disable readability-function-cognitive-complexity in clang-tidy 1 tahun lalu
.editorconfig c786d2126a Meta: Add .editorconfig 2 tahun lalu
.gitattributes c0c72c6b91 Repository: Protect port patches from CRLF/LF normalization 3 tahun lalu
.gitignore bd1e76a98a Meta: Move .DS_Store rule to the bottom of the .gitignore file 1 tahun lalu
.gn 411f5af0b8 Meta: Automatically generate a compilation database for clangd 1 tahun lalu
.mailmap 2b46e6f664 Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2 tahun lalu
.pre-commit-config.yaml 028dad6e87 Meta: Add a post-commit commit message linter hook 4 tahun lalu
.prettierignore 6255ca4a42 LibJS: Add DisposableStack{, Prototype, Constructor} 2 tahun lalu
.prettierrc 54036d660a Meta: Move prettier config files to the root of the repository 5 tahun lalu
.ycm_extra_conf.py 36980d2a66 Meta: Remove i686 references in YCM configuration 2 tahun lalu
CMakeLists.txt 47b6030347 Meta: Replace run.sh by run.py 1 tahun lalu
CONTRIBUTING.md bc4dadde32 Meta: Add a note about resolving PR review comments 1 tahun lalu
LICENSE f2cd120fd3 Meta: Update the year range in LICENSE 1 tahun lalu
README.md a8a1d8746e Meta: Add implicitfield to the contributors list :^) 1 tahun lalu
SECURITY.md 9b9dab249c Meta: Add a security policy 3 tahun lalu
azure-pipelines.yml 0a7d0362ea CI: Remove extraneous toolchain job from Azure CI 2 tahun lalu

README.md

SerenityOS

Graphical Unix-like operating system for x86-64 computers.

GitHub Actions Status Azure DevOps Status Fuzzing Status Sonar Cube Static Analysis Discord

FAQ | Documentation | Build Instructions

About

SerenityOS is a love letter to '90s user interfaces with a custom Unix-like core. It flatters with sincerity by stealing beautiful ideas from various other systems.

Roughly speaking, the goal is a marriage between the aesthetic of late-1990s productivity software and the power-user accessibility of late-2000s *nix. This is a system by us, for us, based on the things we like.

You can watch videos of the system being developed on YouTube:

Screenshot

Screenshot as of c03b788.png

Features

  • Modern x86 64-bit kernel with pre-emptive multi-threading
  • Browser with JavaScript, WebAssembly, and more (check the spec compliance for JS, CSS, and Wasm)
  • Security features (hardware protections, limited userland capabilities, W^X memory, pledge & unveil, (K)ASLR, OOM-resistance, web-content isolation, state-of-the-art TLS algorithms, ...)
  • System services (WindowServer, LoginServer, AudioServer, WebServer, RequestServer, CrashServer, ...) and modern IPC
  • Good POSIX compatibility (LibC, Shell, syscalls, signals, pseudoterminals, filesystem notifications, standard Unix utilities, ...)
  • POSIX-like virtual file systems (/proc, /dev, /sys, /tmp, ...) and ext2 file system
  • Network stack and applications with support for IPv4, TCP, UDP; DNS, HTTP, Gemini, IMAP, NTP
  • Profiling, debugging and other development tools (Kernel-supported profiling, CrashReporter, interactive GUI playground, HexEditor, HackStudio IDE for C++ and more)
  • Libraries for everything from cryptography to OpenGL, audio, JavaScript, GUI, playing chess, ...
  • Support for many common and uncommon file formats (PNG, JPEG, GIF, MP3, WAV, FLAC, ZIP, TAR, PDF, QOI, Gemini, ...)
  • Unified style and design philosophy, flexible theming system, custom (bitmap and vector) fonts
  • Games (Solitaire, Minesweeper, 2048, chess, Conway's Game of Life, ...) and demos (CatDog, Starfield, Eyes, mandelbrot set, WidgetGallery, ...)
  • Every-day GUI programs and utilities (Spreadsheet with JavaScript, TextEditor, Terminal, PixelPaint, various multimedia viewers and players, Mail, Assistant, Calculator, ...)

... and all of the above are right in this repository, no extra dependencies, built from-scratch by us :^)

Additionally, there are over three hundred ports of popular open-source software, including games, compilers, Unix tools, multimedia apps and more.

How do I read the documentation?

Man pages are available online at man.serenityos.org. These pages are generated from the Markdown source files in Base/usr/share/man and updated automatically.

When running SerenityOS you can use man for the terminal interface, or help for the GUI.

Code-related documentation can be found in the documentation folder.

How do I build and run this?

See the SerenityOS build instructions. Serenity runs on Linux, macOS (aarch64 might be a challenge), Windows (with WSL2) and many other *Nixes with hardware or software virtualization.

Get in touch and participate!

Join our Discord server: SerenityOS Discord

Before opening an issue, please see the issue policy.

A general guide for contributing can be found in CONTRIBUTING.md.

Authors

And many more! See here for a full contributor list. The people listed above have landed more than 100 commits in the project. :^)

License

SerenityOS is licensed under a 2-clause BSD license.