Building a Tiling Window Manager with Rust and Penrose

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • SonarLint - Clean code begins in your IDE with SonarLint
  • Scout APM - Less time debugging, more time building
  • SaaSHub - Software Alternatives and Reviews
  • penrose

    A library for writing an X11 tiling window manager (by sminez)

    There are many existing tiling-window managers with i3 probably being the most popular choice for linux systems. These window managers can depend on extensive configuration files or in the case of dwm, git patching or C programming. Penrose takes a different approach in that Penrose is not a window manager. Penrose is a high-level rust library that you use to build your own window manager. This gives us many options for customization while also giving us all the advantages that come with writing rust code.

  • i3

    A tiling window manager

    There are many existing tiling-window managers with i3 probably being the most popular choice for linux systems. These window managers can depend on extensive configuration files or in the case of dwm, git patching or C programming. Penrose takes a different approach in that Penrose is not a window manager. Penrose is a high-level rust library that you use to build your own window manager. This gives us many options for customization while also giving us all the advantages that come with writing rust code.

  • SonarLint

    Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.

  • polybar

    A fast and easy-to-use status bar

    We could use something like polybar to build a powerful and sophisticated top-bar for our system. However, for this example we are going to use the built-in dwm_bar which mimics the bar that can be found in dwm. What's happening here is pretty straight-forward. First we populate the styling struct, and then we plug these values into the dwm_bar.

  • book

    The Rust Programming Language

    Some familiarity with rust is required. The Rust Book is the best place to start.

  • MYWM

    Building your own window manager can be a very daunting undertaking. With tools like Penrose, much of the complexities involved are hidden behind helpful libraries. This particular build only scratches the surface of what can be accomplished. The complete code for this project can be found on my gitlab alongside my actual build.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts