Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Development Guide

IDE Support

Aether supports two language servers:

  • Rust — Two Cargo workspaces (/ and /kernel/) consumed by rust-analyzer.
  • C/C++compile_commands.json consumed by clangd.

VS Code

The repository includes .vscode/ configuration:

  • Recommended extensions — see .vscode/extensions.json. Install them via Extensions → … → Show Recommended Extensions. The key extensions are rust-lang.rust-analyzer (Rust) and llvm-vs-code-extensions.vscode-clangd (C/C++).
  • Settings (.vscode/settings.json) — pre-configures rust-analyzer to load Cargo workspaces, and clangd with the correct compile-commands directory.
  • Tasks — the default build task (Terminal → Run Build Task, Ctrl+Shift+B) runs the Sync Project (C + Rust) command and prompts you to pick an architecture.

Zed

The repository includes .zed/ configuration:

  • Tasks (.zed/tasks.json) — preconfigured tasks:
    • Sync Project for x86_64 (C + Rust) — regenerates project files
    • Qemu run x86_64 / Qemu run aarch64 — run in QEMU
    • Qemu debug aarch64 — start QEMU with debugger stub
  • Debug (.zed/debug.json) — a Qemu debug configuration using CodeLLDB to attach to 127.0.0.1:1234.