summaryrefslogtreecommitdiff
path: root/Documentation
AgeCommit message (Collapse)Author
2021-09-28Documentation: Add `AK::SourceLocation` pattern to Patterns.mdBrian Gianforcaro
Document the emergent pattern of using `SourceLocation` for capture file, line, function name information when calling an API.
2021-09-28Documentation: Add operator"" sv pattern to Patterns.mdBrian Gianforcaro
2021-09-27Documentation: Add build file copy instructionEdward Palmer
2021-09-19Meta: Add section to CLion Configuration Docs about including headersTobias Christiansen
2021-09-18Documentation: Add the new supported RTL8168 variants to the listLiav A
2021-09-16Documentation: Recommend setting PREFIX_PATH instead of INSTALL_PREFIXAndrew Kaster
This was straight up the wrong CMake variable to set. We care about where the project will find Lagom, not where it wants to install its own binaries to.
2021-09-15Documentation: Update CLionConfiguration for SuperBuildAndrew Kaster
Extra configure options may need passed to CLion in order for it not to choke on the new CMake setup. In particular, it's now a very bad idea to pass CMAKE_CXX_COMPILER and CMAKE_C_COMPILER to the target build.
2021-09-15Documentation: Document new SuperBuild build infrastructureAndrew Kaster
Add additional clarification for the CMake cache, and add missing extra targets as well.
2021-09-11Documentation: Fix slightly-broken headersBen Wiederhake
GithubFlavoredMarkdown sees the angled brackets (<>) and censors them. Perhaps because it does not allow HTML tags in headings.
2021-09-10Documentation: Tweak IntrusiveList example to reflect new APIAli Mohammad Pur
2021-09-10Documentation: Clarify Windows build instructionsSam Atkins
People seem to easily miss the "Setting up build tools" section, so I have moved that step above the filesystem information and linked directly to BuildInstructions.md to hopefully make it harder to skip. Also, added mention of `\\wsl$` since that regularly comes up in Discord.
2021-09-08Documentation: Fix broken link in DocumentationBen Wiederhake
2021-09-07Documentation: Add missing dependencies for NixErnests Kuzņecovs
I was building serenity on quite a fresh NixOS system and it turns out `unzip` and `qemu` were missing from this nix expression to compile and run serenity.
2021-09-05Kernel: Make all Spinlocks use u8 for storage, remove templateBrian Gianforcaro
The default template argument is only used in one place, and it looks like it was probably just an oversight. The rest of the Kernel code all uses u8 as the type. So lets make that the default and remove the unused template argument, as there doesn't seem to be a reason to allow the size to be customizable.
2021-09-05Documentation: Add Patterns.mdBrian Gianforcaro
The purpose of this document is to track and describe the various patterns used through the SerenityOS code base.
2021-09-04Documentation: Prevent QtCreator from formatting IPC as C++Ben Wiederhake
2021-08-30Documentation: Add unzip package to BuildInstructionsLepkoQQ
2021-08-29Documentation: Escape asterisk ("*NIX") in BuildInstructions.mdLinus Groh
Even though Markdown renderers should handle this fine as-is, not escaping the asterisk makes vim render a lot of text in italics, for example.
2021-08-27Documentation: Add configuration information for VSCodekleines Filmröllchen
This is a combination of the efforts of multiple people and hours of pain trying to configure VSCode properly. This should give a good baseline for anyone trying to develop Serenity with VSCode. Co-authored-by: Hendiadyoin1 <leon2002.la@gmail.com>
2021-08-18Documentation: Update FreeBSD prerequisitesMartin Åberg
FreeBSD comes with Clang as default host compiler and provides GCC in the package system. The commit adds a few dependencies to the pkg command line.
2021-08-15Documentation: Add genext2fs package for BuildInstructionsvdjagilev
2021-08-15Documentation: Amend FAQ about the system being 32-bit onlyAndreas Kling
People still ask about this all the time, so let's keep the question but amend it with the fact that we now have 64-bit support as well.
2021-08-13Documentation: Fix a few typos in the ProcFS Indexing documentLiav A
2021-08-12Kernel: Steer away from heap allocations for ProcFS process dataLiav A
Instead, use more static patterns to acquire that sort of data.
2021-08-12Userland: Fix PATH environment variable orderingJean-Baptiste Boric
2021-08-08Documentation: Add explanation for the Clang-based toolchainDaniel Bertalan
2021-08-04Meta: Automatically enable WHPX when possibleGunnar Beutner
2021-08-04Meta: Auto-detect where QEMU is installed on WindowsGunnar Beutner
2021-08-04Documentation: Add ImageMagick as dependency for macOSJelle Raaijmakers
2021-08-03Documentation: Make docs for CLionConfiguration more understandableMartin Janiczek
2021-07-30Documentation: Remove more potentially harmful Debian adviceThomas Wagenveld
Serenity build tooling autodetects gcc 10 so update-alternatives is not necessary. Also, switching apt repositories on the fly can cause issues with dependencies, package downgrades and leave the system in a broken state.
2021-07-30Documentation: Add BuildProfilingInstructions.mdSam Atkins
After discussing on Discord about how to speed up the build time, I received lots of helpful advice on measuring the build time, but none of it was easily accessible. I thought other people might find it useful, so I've written it down! :^) Thanks goes to @bgianfo and @nico.
2021-07-30Documentation: Update instructions for DebianThomas Wagenveld
Simply adding a 'testing' repo on a Debian stable system is destructive to the system. Add better hints on building Serenity on Debian.
2021-07-29Documentation: Always install e2fsprogs on MacOSJelle Raaijmakers
The `Meta/build-image-qemu.sh` script runs mke2fs in both the FUSE and genext2fs options, so always install e2fsprogs.
2021-07-27Documentation: Add preferred coding style options to CLion configurationLinus Groh
2021-07-26Kernel: Add option to build with coverage instrumentation and KCOVPatrick Meyer
GCC and Clang allow us to inject a call to a function named __sanitizer_cov_trace_pc on every edge. This function has to be defined by us. By noting down the caller in that function we can trace the code we have encountered during execution. Such information is used by coverage guided fuzzers like AFL and LibFuzzer to determine if a new input resulted in a new code path. This makes fuzzing much more effective. Additionally this adds a basic KCOV implementation. KCOV is an API that allows user space to request the kernel to start collecting coverage information for a given user space thread. Furthermore KCOV then exposes the collected program counters to user space via a BlockDevice which can be mmaped from user space. This work is required to add effective support for fuzzing SerenityOS to the Syzkaller syscall fuzzer. :^) :^)
2021-07-14Documentation: Remove '$' character from build instruction commandsKenneth Myhra
This removes the '$' character so that it is easier to copy commands directly from the build instructions and then executing them without first having to remove the '$' character.
2021-07-13Documentation: Make sure Windows have QEMU tools in their WSL2 systemGunnar Beutner
They don't need QEMU to run the VM but they do at least need the QEMU tools to build the image.
2021-07-12Meta+CI: Use wabt version 1.0.23 for all CI jobsAndrew Kaster
The WASM spec tests caused a stack overflow when generated with wat2wasm version 1.0.23, which ships with homebrew. To give feature parity, manually download the same version from GitHub packages for Ubuntu. Document the dependencies of the WASM spec tests option, as well.
2021-07-12Documentation: Condense the Windows build instructions some moreGunnar Beutner
2021-07-12Documentation: Remove obsolete CMake optionGunnar Beutner
2021-07-12Documentation: Show users how to build specific ninja targets directlyGunnar Beutner
2021-07-12Documentation: Shuffle around systems in the build instruction docsGunnar Beutner
The crowd has spoken and it's clear they want... Windows and Arch Linux.
2021-07-12Meta+Documentation: Remove unused -DDEBUG from buildAndrew Kaster
2021-07-10Documentation: Move the QEMU troubleshooting sectionGunnar Beutner
This is no longer relevant for most users because due to an unrelated change to Meta/run.sh the default display backend is now SDL which does not exhibit this problem.
2021-07-10Documentation: Add screenshot for WHPXGunnar Beutner
2021-07-10Documentation+Meta: Automatically add disable_virtio on WindowsGunnar Beutner
2021-07-10Documentation+Meta: Automatically set vmx=off on WindowsGunnar Beutner
2021-07-10Documentation: Remove another redundant chapterGunnar Beutner
Clearly nobody has used this in a while because cpuinfo.c for GCC 11 does not contain the code that's mentioned here.
2021-07-10Documentation: Remove redundant informationGunnar Beutner
These workarounds are already mentioned in the "Hardware acceleration" section.