Skip to content

opensourcemacwm/Pro_Window_Manager

Repository files navigation

Aurelia

Aurelia is an original, Linux-native Wayland compositor written in Rust. The project aims for a polished floating desktop with disciplined motion and glass-like materials while prioritizing protocol correctness, security, accessibility, and maintainability.

The current milestone is intentionally small: a nested Smithay compositor that opens a Winit window, accepts Wayland clients, renders shared-memory XDG toplevels, and sends frame callbacks. Effects, a native DRM backend, the shell, and window-management policy are later milestones.

Build prerequisites

On Arch Linux/WSL, install the Wayland, EGL/GLES, XKB, and X11 development packages required by Smithay's Winit backend. Then run:

cargo build --workspace

Run

RUST_LOG=aurelia=debug cargo run -p aurelia-compositor -- \
  --background '#111827'

The compositor prints its nested Wayland socket in machine-readable form:

WAYLAND_DISPLAY=wayland-1

Point a client at that socket without replacing the host session's XDG_RUNTIME_DIR:

WAYLAND_DISPLAY=wayland-1 alacritty

Close the nested window or send SIGINT/SIGTERM for a clean shutdown.

Verification

cargo fmt --all --check
cargo check --workspace --all-targets
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test --workspace

See docs/architecture/ and docs/adr/ for the decisions that constrain the implementation.

License

Licensed under either of Apache License, Version 2.0 or the MIT license at your option.

About

prowm

Resources

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages