These 3 tools made my dual-monitor Linux setup seamless

How to setup Dual Monitor

By Shaun Cichacki

I finally did it. After running into a few extra issues on my Windows 11 installation, I finally went full nuclear and switched over to Bazzite as my full-time operating system. While the majority of things have been surprisingly seamless, one thing I needed to do was reconfigure my dual-monitor setup to match or exceed what I had on Windows.

Immediately after booting into Linux, there were a few things that I noticed that needed to go the way of the dodo, and quickly. But between system tweaks and a few tools to help reintroduce features I fell in love with when using PowerToys, my Linux setup feels just as natural as it ever has.

Edge Barrier

The first step toward a more natural Linux desktop

Display Settings Bazzite

When I first installed Bazzite on my PC and experimented with it, there was one thing that immediately drove me crazy. The small delay/grab that would happen as I tried to move from one screen to another. Since I was testing it with a live USB, rather than a full install, I figured it may just be a little quirk. Well, after installing Bazzite as my main operating system, that quirk was still there, and I quickly needed to get rid of it. Hiding under Display Settings, I found a ton of helpful features I could use: customizable screen edges that would do specific things, tiles, and even activation delays. But I found what I was searching for, and what I needed to get rid of just as quickly.

I found out that it was a setting called Edge Barrier, and its main goal was to avoid accidental screen swaps with my cursor. Muscle memory be darned, I couldn’t deal with that. After going into Display Settings, I was able to get this turned off. If you’ve just made the switch to Linux or are planning to do so yourself, be sure to check for this setting. It’s primarily in KDE/Wayland installations. GNOME has Sticky Edges, and while the name sounds similar, they do completely different things.

KWin Tiling Editor

The most similar feature to FancyZones in Linux, preinstalled with KDE

One of the best features of PowerToys had to be FancyZones. Being able to set specific programs to a certain spot on your display has plenty of benefits, and it was one of the things I was missing most as soon as I made the switch over. But after doing a bit of research into KDE Bazzite, I learned that there was a program called KWin Tiling Editor that comes preinstalled on systems running Plasma 5.27 or higher that worked fundamentally the same.

To activate KWin Tiling Editor, all I need to do is press the Windows key and T at the same time. Once the Tiling Editor is open, I can see my screen divided into a grid overlay. To create a new zone, I click and drag across the area I want to define. I can split horizontally by clicking or vertically by holding Control and clicking. After the zones are set up the way I like, I can snap any window into one by holding the Windows key and dragging it to my desired zone, where it will lock into place automatically. When I’ve landed on a layout I love, it’s automatically saved even after a reboot, and everything is exactly where I left it before. While it doesn’t let you save and alter specific profiles, it’s been noted and requested so often that it may happen sooner rather than later. It’s rather simple once you get the hang of it, and it makes switching between specific windows easier than ever before, much like it was with FancyZones when I was on my Windows 11 installation.

ddcutil

The name is a mouthful, but the results are absolutely astonishing

ddcutil terminal

As I’m getting used to landing in the land of Linux, I’ve been depending on Claude to help me out with a few different Terminal/Konsole commands. After discovering ddcutil and seeing what it could do for my dual-monitor setup, I knew I was going to need some additional help to get things up and running properly. Seeing as I’m using a Lenovo IPS display and a KTC OLED panel, it can be difficult to get them looking roughly the same, but this tool is great for that. All I needed to do was open the terminal and drop the following lines in:

brew install ddcutil

Followed up by:

sudo modprobe i2c-dev
echo "i2c-dev" | sudo tee /etc/modules-load.d/i2c-dev.conf

That’s all there is to it. Enter those commands, enter your password if prompted, and let the installation run. It’s quick and easy, but it could be a bit more difficult if you don’t know what to input. Now came the fun part: if I wanted to adjust my monitor brightness without touching anything, I just needed to enter the following:

sudo ddcutil setvcp 10 75 --display 1
sudo ddcutil setvcp 10 75 --display 2

I could replace the 75 with any number that I’d prefer; 100 for full brightness, 50 for half-brightness, or anything in between. It will automatically adjust both of my monitors at the same time and make it so I don’t need to touch any of the physical buttons on my devices. I can also check further into brightness, contrast, red, green, and blue gain, color presets, audio volumes, and so much more. It’s an intimidating program, but I’m learning more about it as time goes on, and it could prove to be one of the most valuable pieces that I’ve installed on Bazzite to date. Curious to see what yours can run? Run this command and see what it offers:

sudo ddcutil capabilities --display 1
sudo ddcutil capabilities --display 2

There are a ton of different tools out there for all different types of installations. Seeing as there are so many different types of Linux, something that works well on X11-based Distros may not exactly work great on a Wayland distro, and vice versa. As much as I would love to deck my PC out with something like Conky, which brings Rainmeter-esque customization to Linux, it may not run all that well on my particular version. That being said, these three tools have already made my dual-monitor setup so much better, and I know there are even more fantastic additions I can make in the future.

Source: https://www.makeuseof.com/these-tools-made-my-dual-monitor-linux-setup-seamless/

Leave a Reply

Your email address will not be published. Required fields are marked *