🎶 The elegant Wayland compositor https://verdi.rocks
  • Rust 94.1%
  • Nix 3.2%
  • Handlebars 2.7%
Find a file
2025-10-19 19:46:36 +02:00
.cargo Remove lld rust flags 2025-09-23 03:39:05 +02:00
.github/workflows Add cargo-deny checks to the ci 2025-06-12 17:08:30 +02:00
src Make clippy happy 2025-10-19 19:46:36 +02:00
xtask Update remote depedencies 2025-04-08 13:55:52 +02:00
.envrc nix support! :3c 2025-09-06 21:09:40 +02:00
.gitignore Start actor rewrite 2025-10-11 14:46:03 +02:00
about.hbs Add a simple cargo-about template 2025-06-12 16:34:22 +02:00
about.toml Add chrono to cargo-about workarounds 2025-06-12 17:01:57 +02:00
build.rs Include commit information in version 2025-01-29 22:59:02 +01:00
Cargo.lock Update colpetto to latest version 2025-10-17 20:35:05 +02:00
Cargo.toml Update colpetto to latest version 2025-10-17 20:35:05 +02:00
CHANGELOG.md Add changelog file 2024-08-10 22:45:46 +02:00
deny.toml Use a really high confidence threshold for license 2025-06-12 17:03:28 +02:00
flake.lock nix support! :3c 2025-09-06 21:09:40 +02:00
flake.nix nix support! :3c 2025-09-06 21:09:40 +02:00
LICENSE Move from apache license to EUPL 2025-06-12 16:13:13 +02:00
package.nix nix support! :3c 2025-09-06 21:09:40 +02:00
README.md Move from apache license to EUPL 2025-06-12 16:13:13 +02:00
ROADMAP.md Add roadmap file 2024-08-10 22:45:17 +02:00

Verdi

Verdi is a Wayland compositor written in Rust, designed with a focus on performance, stability, and extensibility. The project implements its core functionality from the ground up, taking a fresh approach to compositor architecture while maintaining clean and maintainable code.

Overview

Verdi takes an independent approach to Wayland compositor design, implementing core functionality without relying on existing compositor libraries. The architecture is built on two main foundations:

  • Tokio: An asynchronous runtime for Rust that provides robust handling of the Wayland protocol's asynchronous nature
  • wgpu: A cross-platform graphics API providing broad hardware compatibility and high performance across different platforms

Documentation

Documentation is available at docs.verdi.rocks. Please note that the documentation is currently under development and may be incomplete in some areas.

Community and Support

For questions, discussions, and development updates, join our community on Discord. Whether you're interested in contributing to development or testing new features, the community is here to help.

Getting Started

Installation

For Arch-based distributions, Verdi is available in the AUR as a development package:

paru -S verdi-git

Support for additional distributions is in development.

Configuration

Verdi uses Corn for configuration. The default configuration file location is:

$XDG_CONFIG_HOME/verdi/verdi.corn (typically ~/.config/verdi/verdi.corn)

For configuration options and examples, see the documentation.

Building from Source

Prerequisites:

  • Rust: Install via rustup (distribution-provided Rust versions are not supported)
  • System Libraries: libinput and libudev with development headers

Build and install commands:

cargo xtask build && cargo xtask install

Detailed build instructions are available in the documentation.

Development Status

Verdi is currently in pre-alpha stage, with active development focusing on core functionality and stability.

The project aims to contribute to the Wayland ecosystem by providing a reliable, performant implementation that can serve as a foundation for future development. Each component is carefully designed and implemented with a focus on long-term maintainability and reliability.

License

This project is licensed under the EUPL. For more information, please see the LICENSE file.