Skip to content

azytar/Maverick

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

Maverick

A high-performance tiling window manager in Rust, inspired by dwm.

Maverick aims to bring the simplicity and speed of suckless-style window management to a memory-safe, modern Rust codebase. It manages your windows in automatic tiled layouts, stays out of your way, and is driven entirely from the keyboard.

Status: Early development. APIs, keybindings, and configuration are subject to change.

Features

  • Tiling layouts — automatic master/stack tiling, monocle (fullscreen), and floating modes.
  • Tag-based workspaces — dwm-style tags instead of rigid workspaces; view one or more tags at once.
  • Keyboard driven — every action is bound to a key; no mouse required.
  • Multi-monitor aware — independent layouts and tags per monitor.
  • Lightweight & fast — minimal dependencies and low memory footprint.
  • Memory safe — written in safe Rust to avoid the classes of bugs common in C window managers.

Requirements

  • A Unix-like system running X11
  • Rust toolchain (stable, 2021 edition or newer)
  • X11 development headers (e.g. libx11-dev, libxinerama-dev on Debian/Ubuntu)

Installation

Build from source with Cargo:

git clone https://github.com/azytar/Maverick.git
cd Maverick
cargo build --release

The compiled binary will be available at target/release/maverick.

To install it onto your PATH:

cargo install --path .

Usage

Maverick is launched from your X session startup file. Add the following to your ~/.xinitrc:

exec maverick

Then start X with:

startx

If you use a display manager, create a desktop session entry that runs maverick.

Keybindings

Default keybindings follow dwm conventions, using Mod (the Super/Windows key) as the primary modifier:

Keybinding Action
Mod + Enter Launch terminal
Mod + p Launch application launcher
Mod + j / Mod + k Focus next / previous window
Mod + h / Mod + l Shrink / grow master area
Mod + Space Toggle floating for focused window
Mod + [1..9] View tag
Mod + Shift + [1..9] Move focused window to tag
Mod + Shift + c Close focused window
Mod + Shift + q Quit Maverick

Configuration

Like dwm, Maverick favors configuration in source for zero runtime overhead. Edit the configuration module and rebuild to apply changes:

cargo build --release

Contributing

Contributions are welcome! Please open an issue to discuss substantial changes before submitting a pull request.

  1. Fork the repository and create a feature branch.
  2. Run cargo fmt and cargo clippy before committing.
  3. Ensure cargo build and cargo test pass.
  4. Open a pull request describing your change.

License

Maverick is released under the MIT License.

About

A high-performance tiling window manager in Rust, inspired by dwm.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors