summaryrefslogtreecommitdiff
path: root/Documentation
AgeCommit message (Collapse)Author
2023-05-26Documentation: Add note about testing UART on the Raspberry Pi 4BCaoimhe
2023-05-25Documentation: Add Qt6 SVG module to Ladybird build deps on Archkuchikuu
Qt6 SVG is required to successfully compile Ladybird. Without this package, a compilation error occurs: Failed to find required Qt component "Svg".
2023-05-24Documentation: Configure cache dir in CMake settings for CLionJelle Raaijmakers
Without this, CMake would err out on a missing `/CLDR/version.txt`.
2023-05-24Meta+Documentation: Require Xcode 14.3 or Clang 14 for the host compilerDaniel Bertalan
There have been multiple reports of Xcode 14.0 (based on upstream LLVM 14) segfaulting when compiling `LibCore/Process.cpp`. Let's require Xcode 14.3, which is a known good version based on LLVM 15. Note that Xcode 14.3 requires macOS Ventura, so users of Monterey or older are expected to get Homebrew Clang instead. Homebrew Clang 13 also suffers from the same crash. Although I have not tested on Linux, the backtrace points to the middle-end, so x86_64 is also likely to be affected. LLVM 14 was released 14 months ago, so it's not an unreasonable requirement.
2023-05-23Documentation: Add section on Ellipses to Text.mdthankyouverycool
2023-05-15Toolchain+Ports: Update GCC to 13.1.0Daniel Bertalan
This is a mostly straight-forward rebase of our patches on top of 13.1.0. The spec files needed a change, as GCC no longer supports STABS debug information, but we were building GCC with support for it. Highlights of this release include static `operator()`, The Equality Operator You Are Looking For and extended `constexpr` support.
2023-05-08Documentation: Homogenize Ladybird build instructionsmartinfalisse
Change the file name so that it is similar to the other build instructions and may be easier to find :^).
2023-05-08Documentation: Add libslirp-dev as a required dependency for QEMUKenneth Myhra
After the update to QEMU 8.0 libslirp-dev is a required dependency.
2023-05-07Documentation: Update information regarding MSIx for NVMe :^)Pankaj Raghav
Now we support MSIx for NVMe. Retain the information about using nvme_poll until MSIx is tested on a Bare metal system.
2023-05-07Everywhere: Run spellcheck on all documentationBen Wiederhake
2023-05-06Documentation: Correct some typos found in kernel markdown filesAnnie Song
2023-05-05Documentation: Add Qt6 SVG module to Ladybird build deps on UbuntuAndreas Kling
2023-04-27Documentation: Add dependencies for openSUSERaphaël Jakse
2023-04-25Documentation: Fix markdown syntaxEmanuele Torre
Use regular ascii backticks instead of U+00B4 (acute accent).
2023-04-14Documentation: Add build dependencies for SerenityOS :^)Tim Schumacher
2023-04-13Documentation: Document preference for SCREAMING_CASE constantsLinus Groh
2023-04-12Everywhere: Fix a few typosNico Weber
Some even user-visible!
2023-04-12Documentation: Remove unnecessary answer to non-asked question in FAQLiav A
By this point of time, we already have x86-64 support and have removed i686 support too. Since we are not the only OS project to remove 32-bit support entirely and 64-bit computing is the norm for modern personal computers, there's no need to explain this as it's obvious "why we are 64-bit only".
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