Files
mirada/README.md
T
2026-06-16 22:47:12 +00:00

3.2 KiB
Raw Blame History

mirada

A sovereign Wayland compositor + tiling window manager, in Rust, on Llimphi.

mirada (Spanish look, gaze) is the display stack: a tiling Wayland compositor, an XDG desktop portal (generic file pickers / screenshare), a PAM login greeter, and the control CLI. The architecture splits cleanly in two:

  • Cuerpo (mirada-body + mirada-compositor) — the Wayland surface over smithay. Manages outputs and surfaces, translates commands into backend operations. DRM/KMS native, or nested inside a host Wayland for development.
  • Cerebro (mirada-brain) — the desktop orchestrator: virtual desktops, windows, focus, tiling. Consumes BodyEvent, emits BrainCommand. Agnostic of smithay and of any toolkit — it can drive a remote Cuerpo over mirada-link.

All UI (greeter, portal dialogs, menus) renders on Llimphi-HAL, so the same scene tree runs on Wayland and on Wawa bare-metal.

mirada showreel — one desktop layout morphing across Windows XP, macOS, KDE, Hyprland and CDE looks
one compositor, every desktop — the same layout across XP · macOS · KDE · Hyprland · CDE  (stylized concept render, not a live capture)

Run

cargo run --release -p mirada-compositor   # the compositor (nested in a host Wayland for dev)
cargo run --release -p mirada-greeter      # PAM login greeter (real backend + mock)
cargo run --release -p mirada-ctl -- ...   # control the running compositor (swaymsg/hyprctl style)

DRM/KMS needs seat permissions — launch from a greeter/seat, not a plain user terminal. Nested mode (inside an existing Wayland session) is the friendly dev path.

Features

  • Tiling WM (Hyprland-like): directional navigation, multi-monitor, workspace move/swap-master, configurable borders, hot-reload of config.ron.
  • Multi-monitor, multi-DPI: per-output wallpaper / order / scale / fit; logical layout across mixed 1×/2× outputs; hotplug.
  • Openbox-style root menu with nested submenus; autohide bottom bar.
  • Greeter MVP: remembers last user/desktop, / switch desktops, configurable Matrix-rain background, real PAM backend + mock.
  • Robust VT switching (Ctrl+Alt+F1…F12) with libseat pause/resume, keymap-independent.
  • Complete XDG portal: any app gets file pickers via the portal with no app-specific code.

Scope of this repository

This is the lean build of mirada — the compositor, WM, greeter, portal and CLI. The AI desktop assistant (mirada-asistente, which pulls an LLM stack) and the experimental WebAssembly status bar (mirada-bar-web) are not included here; the compositor does not depend on them.

Caveats (honest state)

  • Not a sway/weston replacement in stability — yet. It replaces them in Llimphi-HAL compatibility.
  • DRM/KMS path validated on Intel only. NVIDIA proprietary and multi-GPU/Optimus are untested.
  • Production DRM/KMS hardening beyond the MVP is ongoing.

License

MIT. Builds on Llimphi (pulled as a git dependency).