Truly independent web browser
Find a file
Tobias Christiansen 3bb580ba1d Base: Add hieroglyph characters that have transliterations to Pebbleton
All the glyphs that have a 'transliterated as' comment in the unicode
document at https://unicode.org/charts/PDF/U13000.pdf have been added.

The following codepoints now have glyphs in the font:
U+1308B: EGYPTIAN HIEROGLYPH D021
U+1309D: EGYPTIAN HIEROGLYPH D036
U+130A7: EGYPTIAN HIEROGLYPH D046
U+130C0: EGYPTIAN HIEROGLYPH D058
U+13121: EGYPTIAN HIEROGLYPH F032
U+1313F: EGYPTIAN HIEROGLYPH G001
U+13153: EGYPTIAN HIEROGLYPH G017
U+13171: EGYPTIAN HIEROGLYPH G034
U+13191: EGYPTIAN HIEROGLYPH I009
U+13193: EGYPTIAN HIEROGLYPH I010
U+131CB: EGYPTIAN HIEROGLYPH M017
U+1320E: EGYPTIAN HIEROGLYPH N029
U+13216: EGYPTIAN HIEROGLYPH N035
U+13219: EGYPTIAN HIEROGLYPH N037
U+13254: EGYPTIAN HIEROGLYPH O004
U+13283: EGYPTIAN HIEROGLYPH O034
U+132AA: EGYPTIAN HIEROGLYPH Q003
U+132F4: EGYPTIAN HIEROGLYPH S029
U+1337F: EGYPTIAN HIEROGLYPH V013
U+1339B: EGYPTIAN HIEROGLYPH V028
U+133A1: EGYPTIAN HIEROGLYPH V031
U+133BC: EGYPTIAN HIEROGLYPH W011
U+133CF: EGYPTIAN HIEROGLYPH X001
U+133ED: EGYPTIAN HIEROGLYPH Z004
U+133EE: EGYPTIAN HIEROGLYPH Z004A
U+1340D: EGYPTIAN HIEROGLYPH AA001
2022-01-30 15:30:53 +00:00
.github Meta: Make check-symbols.sh use the correct build directory 2022-01-15 17:51:40 +01:00
AK AK: Implement String's comparison operators in terms of StringView's 2022-01-29 23:08:27 +01:00
Base Base: Add hieroglyph characters that have transliterations to Pebbleton 2022-01-30 15:30:53 +00:00
Documentation Documentation: Document setting UUID for VDI image 2022-01-28 19:46:52 +00:00
Kernel Kernel: Don't mark current thread as inactive after successful exec() 2022-01-30 16:21:59 +01:00
Meta LibUnicode: Fill in case-first and numeric BCP47 keywords 2022-01-29 20:27:24 +00:00
Ports Ports: Explain some new patch script options and features in the README 2022-01-27 23:01:05 +01:00
Tests AK: Disable the empty-string-vs-null-string test until we have a fix 2022-01-30 16:21:59 +01:00
Toolchain Toolchain: Add support for building the userland with the mold linker 2022-01-24 10:41:47 +00:00
Userland LibGUI: Collect menu and submenu actions for CommandPalette 2022-01-30 15:24:35 +01:00
.clang-format Meta: Update .clang-format to not indent nested namespaces 2020-03-14 10:10:21 +01:00
.clang-tidy Meta: Disable readability-use-anyofallof clang-tidy check 2022-01-09 23:29:57 -08:00
.gitattributes Repository: Protect port patches from CRLF/LF normalization 2022-01-12 01:08:38 +01:00
.gitignore man.serenityos.org: Simplify local builds 2021-10-22 19:49:28 +03:00
.mailmap Meta: Fix my .mailmap entry by adding the name 2022-01-25 23:26:14 +00:00
.pre-commit-config.yaml Meta: Add a post-commit commit message linter hook 2021-05-02 16:28:01 +02:00
.prettierignore CI: Bump prettier to latest version (2.4.1) 2021-11-21 01:18:23 +00:00
.prettierrc Meta: Move prettier config files to the root of the repository 2020-08-24 18:21:33 +02:00
azure-pipelines.yml CI: Disallow test failures on macOS Lagom :^) 2022-01-14 22:39:06 +01:00
CMakeLists.txt Meta: Download USB and PCI ID data with fallible download function 2022-01-26 00:22:53 +00:00
CONTRIBUTING.md Meta: Discourage excessive "feng shui programming" in CONTRIBUTING.md 2022-01-08 16:31:14 +01:00
LICENSE Meta: Update year range in LICENSE :^) 2022-01-02 18:08:02 +01:00
README.md Meta: Add Xexxa's name to the contributors list 2022-01-13 13:56:00 +01:00

SerenityOS

Graphical Unix-like operating system for x86 computers.

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

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 b36968c.png

Kernel features

  • x86 (32-bit) and x86_64 (64-bit) kernel with pre-emptive multi-threading
  • Hardware protections (SMEP, SMAP, UMIP, NX, WP, TSD, ...)
  • IPv4 stack with ARP, TCP, UDP and ICMP protocols
  • ext2 filesystem
  • POSIX signals
  • Purgeable memory
  • /proc filesystem
  • Pseudoterminals (with /dev/pts filesystem)
  • Filesystem notifications
  • CPU and memory profiling
  • SoundBlaster 16 driver
  • VMWare/QEMU mouse integration

System services

  • Launch/session daemon (SystemServer)
  • Compositing window server (WindowServer)
  • Text console manager (TTYServer)
  • DNS client (LookupServer)
  • Network protocols server (RequestServer and WebSocket)
  • Software-mixing sound daemon (AudioServer)
  • Desktop notifications (NotificationServer)
  • HTTP server (WebServer)
  • Telnet server (TelnetServer)
  • DHCP client (DHCPClient)

Libraries

  • C++ templates and containers (AK)
  • Event loop and utilities (LibCore)
  • 2D graphics library (LibGfx)
  • OpenGL 1.x compatible library (LibGL)
  • GUI toolkit (LibGUI)
  • Cross-process communication library (LibIPC)
  • HTML/CSS engine (LibWeb)
  • JavaScript engine (LibJS)
  • Markdown (LibMarkdown)
  • Audio (LibAudio)
  • Digital Signal Processing/Synthesizer Chains (LibDSP)
  • PCI database (LibPCIDB)
  • Terminal emulation (LibVT)
  • Out-of-process network protocol I/O (LibProtocol)
  • Mathematical functions (LibM)
  • ELF file handling (LibELF)
  • POSIX threading (LibPthread)
  • Higher-level threading (LibThreading)
  • Transport Layer Security (LibTLS)
  • HTTP and HTTPS (LibHTTP)
  • IMAP (LibIMAP)

Userland features

  • Unix-like libc and userland
  • Shell with pipes and I/O redirection
  • On-line help system (both terminal and GUI variants)
  • Web browser (Browser)
  • C++ IDE (HackStudio)
  • Desktop synthesizer (Piano)
  • E-mail client (Mail)
  • Various desktop apps & games
  • Color themes

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.

How do I build and run this?

See the SerenityOS build instructions

Before opening an issue

Please see the issue policy.

FAQ: Frequently Asked Questions

Get in touch

Join our Discord server: SerenityOS Discord

Author

Contributors

(And many more!) The people listed above have landed more than 100 commits in the project. :^)

License

SerenityOS is licensed under a 2-clause BSD license.