summaryrefslogtreecommitdiff
path: root/Documentation
AgeCommit message (Collapse)Author
2023-02-04Documentation: Add formatting section to nvim documenationOllrogge
2023-02-04Kernel+SystemServer+Base: Introduce the RAMFS filesystemLiav A
This filesystem is based on the code of the long-lived TmpFS. It differs from that filesystem in one keypoint - its root inode doesn't have a sticky bit on it. Therefore, we mount it on /dev, to ensure only root can modify files on that directory. In addition to that, /tmp is mounted directly in the SystemServer main (start) code, so it's no longer specified in the fstab file. We ensure that /tmp has a sticky bit and has the value 0777 for root directory permissions, which is certainly a special case when using RAM-backed (and in general other) filesystems. Because of these 2 changes, it's no longer needed to maintain the TmpFS filesystem, hence it's removed (renamed to RAMFS), because the RAMFS represents the purpose of this filesystem in a much better way - it relies on being backed by RAM "storage", and therefore it's easy to conclude it's temporary and volatile, so its content is gone on either system shutdown or unmounting of the filesystem.
2023-02-04Documentation: Reorganize Ladybird build docs to put easy path firstAndrew Kaster
Instead of explaining custom build directories first and then following that up with a an explainer that Meta/serenity.sh is the easiest way to get the browser up and running to try it out was not very ergonmic. Also reorganize some of the per-distro documentation to put the compiler requirements front and center.
2023-02-02Documentation: Add troubleshooting note regarding KVM GDBSimon Haegler
2023-02-01Documentation: Rename WebServer_localhost to .jpgNico Weber
It took me way too long to figure out why PNGImageDecoderPlugin couldn't load WebServer_localhost.png -- turns out it's a jpeg file.
2023-01-29AK: Move `Stream` and `SeekableStream` from `LibCore`Tim Schumacher
`Stream` will be qualified as `AK::Stream` until we remove the `Core::Stream` namespace. `IODevice` now reuses the `SeekMode` that is defined by `SeekableStream`, since defining its own would require us to qualify it with `AK::SeekMode` everywhere.
2023-01-26Documentation: Document the "Fallible Constructor" patternTim Schumacher
2023-01-26Documentation: Note that `MUST` does not replace error propagationTim Schumacher
2023-01-24Documentation: Add a link listkleines Filmröllchen
The link list tries to collect all links from the website, BenW's link list <https://benwiederhake.github.io/serenity-fixmes/index.html#links> and the unofficial wiki <https://wiki.serenityos.net/links.html> into one sorted and expanded list, so that hopefully noone has difficulty searching for serenity pages in the future :^)
2023-01-08Documentation: Remove references to the removed NE2000 driverLiav A
2023-01-08Documentation: Update the BareMetalInstallation documentLiav A
Update it to reflect the current status of the bare metal situation now.
2023-01-08Documentation: Fix typo in CLionConfiguration.mdThomas Symalla
2023-01-07Documentation: Remove references to the removed RTL8139 driverLiav A
2023-01-06Documentation: Add section about curly braces to CodingStyle.mdLinus Groh
2023-01-06Documentation: Update VirtualBox docs memory sectionBørlaag
2023-01-06Documentation: Update VMWare docs memory sectionBørlaag
2023-01-06Kernel: Make i8042 controller initialization sequence more robustLiav A
The setting of scan code set sequence is removed, as it's buggy and could lead the controller to fail immediately when doing self-test afterwards. We will restore it when we understand how to do so safely. Allow the user to determine a preferred detection path with a new kernel command line argument. The defualt option is to check i8042 presence with an ACPI check and if necessary - an "aggressive" test to determine i8042 existence in the system. Also, keep the i8042 controller pointer on the stack, so don't assign m_i8042_controller member pointer if it does not exist.
2023-01-05Documentation: Update QtCreator setup instructionsBen Wiederhake
The biggest difference is that -m32 is no longer important, and in fact breaks every 64-bit setup. Also, defining ENABLE_UNICODE_DATA, ENABLE_COMPILETIME_FORMAT_CHECK, and __SSE__ makes some code "visible" in the #ifdef sense, which improves syntax highlighting.
2023-01-04Documentation: Add how to update build to use SerenityOS-provided CMakeTaj Morton
2023-01-03Documentation: Document fix for missing /etc/mtabkleines Filmröllchen
/etc/mtab is identical to /proc/self/mounts, but it does not exist under many circumstances, e.g. chroot'ed or in WSL. The fact that many userspace programs rely on this file existing and the user needing to create symlinks manually has been a long-standing issue (there's pretty old forum posts on Debian and Arch Linux forums about it), but it's not fixed upstream. This short mention should save people some time.
2023-01-03Documentation: Add Neovim configuration documentationVetrox
2022-12-28Documentation: Remove i686 supportLiav A
2022-12-27Documentation: Fix a few typosNico Weber
2022-12-25Documentation: Move Ladybird BuildInstructions to DocumentationAndrew Kaster
Update Ladybird/README.md at the same time to reflect its new monorepo status.
2022-12-19Documentation: Adjust default TARGET to x86_64 in the documentation0xxFF
2022-12-17Documentation: Explain CMake 3.25.x requirementAndrew Kaster
2022-12-17Documentation: Clarify that clang can be used as a host compilerAndrew Kaster
2022-12-16Documentation: Add libssl-dev in the debian / ubuntu requirementsGurkirat Singh
In the fresh and minimal installations dev package are often stripped. This commit will install the libssl dev packages required in `Utilities/cmcurl/CMakeLists.txt:608`.
2022-12-10Documentation: Describe extra clang tools built alongside BuildClang.shAndrew Kaster
Also rephrase some of the information on updated clang-format binaries
2022-12-09Documentation: Add a note on paths in the kernel development guidelinesLiav A
Add a note on hardcoded paths so everyone know that this is not an appropriate thing to do when writing kernel code.
2022-12-06Everywhere: Rename to_{string => deprecated_string}() where applicableLinus Groh
This will make it easier to support both string types at the same time while we convert code, and tracking down remaining uses. One big exception is Value::to_string() in LibJS, where the name is dictated by the ToString AO.
2022-12-06AK+Everywhere: Rename String to DeprecatedStringLinus Groh
We have a new, improved string type coming up in AK (OOM aware, no null state), and while it's going to use UTF-8, the name UTF8String is a mouthful - so let's free up the String name by renaming the existing class. Making the old one have an annoying name will hopefully also help with quick adoption :^)
2022-12-05Documentation: Fix typo in AdvancedBuildInstructions.mdAgustin Gianni
Fixes a small typo where the word `are` was missing.
2022-12-04Meta: Update all references of clang-format-14 to clang-format-15Liav A
Also, we add a section that describes how to get an updated clang-format with multiple possible options to do that.
2022-12-03Documentation: Recommend CLion code style settings over manual stepsAndreas Oppebøen
Changing the naming conventions one-by-one was tedious and error-prone. A settings file is likely to be more forward compatible than a screenshot. The settings file was made by repeating the manual steps provided in the documentation, and exporting the file in CLion.
2022-12-03Meta: Switch to clang-format-15 as the standard formatterLinus Groh
The two major changes noticeable on the SerenityOS codebase are: - Much improved support for const placement, clang-format-14 ignored our east-const configuration in various places - Different formatting for requires clauses, now breaking them onto their own line, which helps with readability a bit Current versions of CLion also ship LLVM 15, so the built-in formatting now matches CI formatting again :^)
2022-12-03Documentation: Update WSL QEMU Installation Requirementssno2
As Evil stated in the Discord, WSL users must install the DLL libraries with their QEMU Installation or else they will receive obscure errors about the syntax of the Meta/run.sh file as shown in SerenityOS#14033.
2022-11-25Documentation: Add a document about TmpFSLiav A
2022-11-25Documentation: Add guidelines document for kernel developmentLiav A
2022-11-03Documentation: Give collapsed sections consistent headersFiliph Sandström
2022-11-02Documentation: Update macOS build dependencies to gcc-12John Diamond
Since commit bc2ebcadc serenity requires gcc version 12 or later to build, so let's update the homebrew package version to match that.
2022-10-27Meta: Add configuration file for YouCompleteMeGunnar Beutner
YouCompleteMe is a plugin for Vim which provides code-completion functionality. This change adds a configuration file which makes YouCompleteMe aware of which compile flags to use with clangd.
2022-10-25Everywhere: Require version >= 12 for GCC host compilerLinus Groh
So far we've gotten away with using GCC 11 for Lagom and to compile the toolchain, but via #15795 we discovered a compiler bug that has been fixed in the latest version but would error the build with CI's GCC 11. Time for an upgrade :^) We already use ubuntu-22.04 images in most places, so this is pretty straightforward. The only exception is Idan's self-hosted runner, which uses Ubuntu Focal. LibJS should build fine with GCC 11, still.
2022-10-15Documentation: Add FAQ regarding MP3 patentskleines Filmröllchen
2022-10-13Documentation: Update VSCodeConfiguration.mdleeight
Because x86-64 is the default target, so update the related documentations. https://github.com/SerenityOS/serenity/commit/74018be739aa8fee6979c750beee0105867f6dcc
2022-10-12Documentation: Add initial document about the Kernel graphics subsystemLiav A
2022-10-12Documentation: Update CLion Configuration to use the x86-64 targetKenneth Myhra
Since the default target is x86-64 after PR #15441 was merged, then let us update the CLion Configuration accordingly.
2022-10-09Documentation: Update AddNewIDLFile for GC and Exposed changesAndrew Kaster
2022-10-03Documentation: Change references to uid based sockets to sidsPeter Elliott
2022-09-23Documentation: Add a document about the Kernel IOWindow conceptLiav A