summaryrefslogtreecommitdiff
path: root/Documentation
AgeCommit message (Collapse)Author
2023-04-08Documentation+Ports: Be upfront about dependenciesBen Wiederhake
Yes, these can be 'discovered' incrementally, but it's usually nicer to be upfront instead of making the user play trial-and-error.
2023-03-28Documentation: Add instructions for debugging Ladybird with XcodeAndrew Kaster
2023-03-25Kernel: Add support for Intel HDAJelle Raaijmakers
This is an implementation that tries to follow the spec as closely as possible, and works with Qemu's Intel HDA and some bare metal HDA controllers out there. Compiling with `INTEL_HDA_DEBUG=on` will provide a lot of detailed information that could help us getting this to work on more bare metal controllers as well :^) Output format is limited to `i16` samples for now.
2023-03-14Documentation: Start documenting LibWeb code style & patternsLinus Groh
2023-03-13Meta+Documentation: Allow cross-debugging x86_64 Serenity on M1 MacsDaniel Bertalan
While there is no native GDB on Apple Silicon, a cross-debugger that supports x86-64 does exist.
2023-03-13Documentation: Add a note about running on Apple SiliconDaniel Bertalan
2023-03-13Documentation: Add query-driver to clangd arguments in NvimConfigurationAndrew Kaster
2023-03-13Documentation: Update VS Code docs for tone, add query-driver directionsAndrew Kaster
2023-03-12Meta+CMake: Remove "image" ninja target in favor of "qemu-image"Nico Weber
"image" was an alias for "qemu-image". I want to add an `image` userland utility, which clashes with that shortname. So remove the existing "image" target. It was just an alias for "qemu-image". If you use serenity.sh to build, nothing changes. This only affects you if you run ninja manually -- you now have to say `ninja qemu-image` to build the disk image.
2023-03-10Documentation: Reorganize Lagom README and update fuzzer documentationAndrew Kaster
Add some prose to the introduction of Lagom about how we use it. Also, move the section on including Lagom in other projects above the fuzzer documentation. Remove the explicit cmake commands from the Fuzzer documentation, as the script should be the source of truth.
2023-03-04Documentation: Add Ladybird build instructions for OpenIndiananipos
2023-03-04Documentation: Add HIG document about writing UI textAndreas Kling
This first cut only deals with capitalization.
2023-02-14Documentation: Fix Ladybird debug instructionsYedaya Katsman
The current Meta/serenity.sh script only accepts the `gdb` subcommand, not `debug`.
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.