An simple GUI to setup the screens layout based on wlr-layout-ui, providing the functionality it offers to wlr-randr.
This is part of the tweaks I'm developing for many existing wlr configuration utilities so that they can be bundled into something capable of configuring any WLR or Smithay based compositor (but will primarily be tested via niri)
- Load and save profiles
- No grid snapping, but anchors in a smart way on overlap
- Set the screen settings
- Layout: position, rotation, scale and flipping
- Resolution
- Refresh rate
- Makes clean, easy to understand layouts, with no negative values of random offsets
</monk>

- Python
- pyglet
- tomli
- tomli-w
- poetry
- pipx
- wlr-randr
git clone https://github.com/alicealysia/persistent-wlr-randr-gui/
cd persistent-wlr-randr-gui
poetry install
poetry build
- Either download the latest release or build the whl yourself
pipx install ~/path/to/persistent-wlr-randr-ui-2.0.0a0.tar.gz
- it's also recommended that you copy the file "wlr-layout-ui.desktop" to ~/.local/share/applications
This will create a "myenv" folder with the app installed. You will need to run the app with the full path to it (/path/to/myenv/bin/wlrlui).
wlrlui
Note that a .desktop
file is provided in the files
folder for an easy integration to your environment.
wlrlui -l
To load the profile called "cinema":
wlrlui cinema
added in 1.6.11
Applies the first profile (in alphabetical order) matching the set of monitors which are currently active:
wlrlui -m
It is highly recommended that you add this to a .desktop file under /etc/xdg/autostart
Other options are to create an appropriate systemd file, or to make it start automatically from your compositor's config file.
ENTER
: apply the current settingsESC
: close the appTAB
: switch between profiles