Running multiple monitors is a bless, but not always easy!

Extended Displays on Manjaro with AMD CPU and Nvidia GPU

Gerrit Stapper

--

Leveraging multiple monitors while having a dedicated GPU and an AMD CPU can be tricky and time-consuming to manage

The problem

On the weekend, I installed Manjaro KDE on my laptop and was amazed by the speed! But: I couldn’t use my two external monitors. They were detected in the settings and I could click “enable”, just to make the switch jump back to “disabled”. I have both monitors connected via USB-C, which internally is directly routed to the dedicated graphics. I guess that was the problem here.

A quick round of google showed that with different programs, I can offload the workload to the dedicated grahpics for particular applications by launching them with certain parameters. This wasn’t was I was looking for: I wanted both displays to be active all the time for all applications.

Another option which might do the job is installing and running optimus-manager, which somehow failed for me. So I already jumped back to POP!_OS, which seemed to work out of the box with my settings and this is when I got the idea. I think it only runs with Intel CPUs.

POP!_OS to the rescue

POP!_OS comes with many convenience tools, one of which is system76-power. This tool allows to switch between the integrated and dedicated graphics card with just one click and reboot. My idea was to activate the nvidia graphics by default, which was what worked for me previously.

Here is what I did:

  1. Enable the AUR (Arch User Repositories) in Manjaro via the Add/Remove UI under > Settings > Third Party > AUR
  2. Refresh the package mirrors via the Add/Remove Software UI under Settings > Refresh mirrors
  3. Install system76-power via the Add/Remove Software UI or via pamac command line:
pamac build system76-power
  1. Start the system76-power daemon:
systemctl start system76-power.service

5. Enable if for future system start ups:

systemctl start system76-power.service

6. Switch your graphics as you like:

system76-power graphics nvidia

Alternative with Optimus Manager

Just recently I got the problem that any interaction with the taskbar was super laggy on external screens. The integrated display didn’t show any such problems. I found the following solution on GitHub, which uses optimus-manager

  1. Do a full system upgrade to get the latest drivers. For me, Manjaro already got the correct version for AMD + Nvidia:
pacman -Syyu

2. Comment-out the properties DisplayCommandand DisplayStopCommandin /etc/sddm.confas described in the section IMPORTANT : Manjaro KDE users in the GitHub repo

3. Install the optimus-manager AUR via Add/Remove software (Pamac)

4. Check if the service is running:

systemctl status optimus-manager.service

5. Switch your graphics via optimus-manager like so:

optimus-manager --switch nvidia

Conclusion

From a content perspective, there is no real need for a conclusion. But I think it’s a good situation to thank all the open-source maintainers out there for making this possible. Just these few lines of text already touched two entire operating systems that were and are my daily drivers as well as all the convenience tooling build on top to make peoples life easier. Thank you very much!

POP!_OS

Manjaro

Feature Image by Arian Darvishi on Unsplash

--

--

Gerrit Stapper

Software Engineer, Interested in Software Quality and Teamwork, Cyclist