Pearl
Pearl is a desktop shell for the Aqueous Wayland compositor, written in Zig with GTK 4. Its look and feel follows Material Design: Material palettes generated from your wallpaper, compact bar flyouts, and a full settings application. Pearl runs exclusively on Aqueous and supplies the Aqueous settings UI.
What Pearl can do
Section titled “What Pearl can do”- Show a configurable bar on any edge of every output, with start, center, and end groups, optional autohide, multiple time-zone clocks, running applications, a wallpaper picker, and resource monitor widgets. Horizontal bars wrap when space is tight; vertical bars keep their thickness and scroll.
- Keep favorite applications in a dock and in floating bar islands, with persistent pins and custom launchers for running applications.
- Show desktop icons on one chosen display across all workspaces, with selection, rename, Move to Trash, a background menu for new folders and application shortcuts, and explicit approval before any shortcut can launch.
- Search and launch applications and windows through GIO, run desktop actions, and evaluate arithmetic expressions in the launcher’s built-in calculator.
- Ask a question from the launcher through an opt-in assistant that runs a local model you download yourself and searches a selected engine in a separate chat window. It is disabled by default, and typing does not start a model or make a network request.
- Open a local calendar and a control center with compact Sound, Network, Bluetooth, and Power pages, plus session and workspace-layout actions.
- Edit Pearl and Aqueous configuration in a standalone Settings application with schema-driven pages, drafts that survive external edits, conflict-aware merging, and compositor-owned display previews.
- Theme the desktop with per-output wallpapers, dynamic Material palettes, system and installed GTK 4 themes, Night Light, and opt-in Qt 5/6 styling through QtEngine and Darkly.
- Create themes from three colors or import community theme repositories over HTTPS, and publish your own.
- Connect to Wi-Fi networks through NetworkManager and pair Bluetooth devices through BlueZ, both from the control center.
- Control audio devices and streams, battery, brightness, and power profiles, with on-screen feedback and confirmed power-off and restart actions.
- Manage notifications with history, do-not-disturb and filters, use StatusNotifier tray menus, and control MPRIS media players with artwork.
- Keep an in-memory clipboard history and capture the screen or a region, with save and copy controls.
- Secure the session with idle and sleep policies, a polkit agent, a native lock screen, and fingerprint login with password fallback.
- Log in through an optional greetd-based greeter with an installed-desktop chooser, themed to match the shell.
- Extend the shell with experimental WebAssembly plugins that install, update, and remove without a restart.
- Drive the session from the command line with
pearlctl, including settings dispatch, layout control, and a diagnostics report bundle.
Pearl packages also bundle three companion applications: the Phyto file manager, the Dome resource monitor, and the Coral text editor.
These guides track the source tree as of October 15, 2026 (f1fac5e).
Distribution packages may lag behind; use pearlctl status to inspect your
running shell.
Project source
Section titled “Project source”The source, development specifications, packaging, and plugin development guide live in the Pearl GitHub repository.
