Skip to content

Latest commit

 

History

13 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nirdi — Niri Monitor Manager

Nirdi is a modern, lightweight GTK4 GUI for managing monitors in the niri Wayland compositor. It allows you to view connected displays, toggle them on/off, and change resolutions or refresh rates with a user-friendly interface.

image

Features

  • Monitor Status: Real-time view of all connected displays.
  • Power Control: Easily enable or disable monitors with a single toggle.
  • Mode Switching: Change resolution and refresh rate via intuitive dropdowns.
  • Smart Refresh: Syncs with the current system state using niri msg outputs.
  • Modern UI: Styled with a clean, dark-themed GTK4 interface.

Prerequisites

Nirdi depends on the following tools:

  • niri: The Wayland compositor (used for querying output information).
  • wlr-randr: Used for applying display configurations.
  • GTK4: The GUI toolkit.
  • PyGObject: Python bindings for GTK4.

Installation on Arch Linux

sudo pacman -S niri wlr-randr gtk4 python-gobject

Installation & Usage

To install Nirdi on your local user account (~/.local/share/nirdi and ~/.local/bin/nirdi), simply clone this repository and run the install script:

git clone https://github.com/fellis-cp/Nirdi
cd nirdi
./install.sh

This will check dependencies, structure the Python files, install the executable script to ~/.local/bin, and register the .desktop file for your application launcher. Make sure ~/.local/bin is in your $PATH.

Running Locally without installation

If you prefer to run from source without installing:

PYTHONPATH=src python3 -m nirdi

Development

The project is structured into a standard python package under src/:

  • src/nirdi/ui/app.py: The GTK4 application and UI layout.
  • src/nirdi/ui/style.css: Custom styling tokens for the premium dark-mode look.
  • src/nirdi/backend/niri.py: Logic for parsing niri output and executing wlr-randr commands.

License

MIT

About

Nirdi (niri display) Niri GUI Monitor Display Manager

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages