[RESPONDED] Wayland multi-monitor?

Hi all,

I was wondering if anyone has managed to get Wayland working with an eGPU. In my experience on 11th gen with an nvidia card (F37, GNOME), it’ll only ever display on the primary monitor, which I set with all-ways-egpu. The integrated screen will freeze as a black screen with a default cursor when the display server starts, and that default cursor will go away if I move my cursor onto the internal monitor so I know it’s not completely unresponsive, but it’ll just stay black no matter what I do.

X11 works fine, but fixing screen tearing on it drops the performance slightly (force full composition pipeline), and I’d like to be able to use more modern setups as the transition to Wayland gets more forced.

I’m also not afraid of weird fixes—if there are kernel patches that enable multi-gpu rendering on Wayland I’m all ears.

Any ideas? Thanks!

Using all-ways-egpu is likely the best approach. 11th gen isn’t TB certified like newer boards, but the Wayland aspect can be flaky.

Without it, Wayland will only display the laptop monitor (eGPU monitor is connected and detected, but permanently black). With it, Wayland will only display to the point where I can use the OS with the eGPU monitor (cursor on black screen on the laptop screen).

I’m looking for a solution that will allow me to use both screens on Wayland. Thanks!

That is something I will have to add to the wish list. eGPU support is something of a dark art on Linux. Keep updating and testing is your best bet at this point.

Honestly, it’s very stable now on X11, just with slight screen tearing and no hot plug/unplug support. Suspend (my last big hurdle) is completely working if I disable every non-power button device in wakeup. Neither of those cons are dealbreakers for my use case, so I’m just waiting for Wayland to fix my few actual dealbreakers.

1 Like

Weird that worked out of the box in my case.

I actually switched to wayland because of the better egpu support.

Do you have any custom Xorg configs? Maybe that’s what messed mine up. Also, OS/kernel?

Wayland does not use xorg configs. My setup uses arch with sway on whatever kernel that is currently on.

If you’re using an nvidia gpu it at least monitors them. My system won’t boot unless the Xorg config for my eGPU is set up correctly, whether my DE is X11 or Wayland.

Ohhhh you are running nvidia, then nevermind all bets are off.

Wayland didn’t work on nvidia at all until recently but that stuff is really not a good experience on linux.

Generally speaking, X will be your best bet.

Now, I was working on a project…worked on Wayland and X…but has falled by the wayside. My goal is to map out some over the weekends in 2024 to pick it back up, but that is a ways out at the earliest. [TRACKING] Fun weekend project: Testing a new NVIDIA eGPU Switcher - #4 by Matt_Hartley

In the here and now, NVIDIA, X, Ubuntu 22.04 MATE with the GitHub - ubuntu-mate/mate-optimus: NVIDIA Optimus GPU switcher should be doable.

I noticed that and it’s a really neat script. Are there any post-execution hooks or modifiable xorg configs? I have a few tweaks in my xorg conf that egpu-switcher doesn’t allow me to add short of wholly replacing the config with a script executed right after it adds its egpu configuration.

Ooh, haven’t seen this before. egpu-switcher works fine for my use case and for multi-monitor right now, and I’m on fedora anyway.

1 Like

I’d have to dig it out of my external hard drive and look. For NVIDIA, it basically utilizes

sudo prime-select intel
sudo prime-select nvidia

at logout/login.

I don’t even have prime-* on my system, it’s unnecessary for a working eGPU setup. The only issues I’ve experienced are when Vulkan occasionally thinks it’ll be smart to use the igpu which doesn’t have certain necessary extensions for whatever it’s trying to run, but that’s fixed by one environment variable.

Mandatory, no. Helpful, very. :slight_smile:

1 Like

Out of curiosity, where did you get these utilities? I’m on arch myself and while I have prime-run, prime select is entirely new to me

Oh, quick update on this: kernel and Wayland are now in a state where all-ways-egpu gets multi monitor “working” on Plasma 6 and GNOME. Massively degraded performance in Xwayland apps though, even with the experimental compositor/driver/protocols patches designed to mitigate that. I also had performance issues with Wayland native flatpaks.

Prime-select is from Fedora’s official PRIME implementation; AUR fork at nvidia-prime-select-git. You shouldn’t need it for the Framework Laptop.

I was curious about it as I am uncertain about whether my setup with external monitor plugged into eGPU is working or not.
External monitor being a 12year old Toshiba LCD dumb TV at this point.
The problem there is mostly that I’m currently struggling with getting that thing to display anything coming from the framework laptop in general (even if plugged in directly to the laptop rather than the eGPU) so I can’t fully verify.

In case you’re deeper into Monitor-tech:
Is it normal that older TVs are somewhat unreliable in how they connect to PCs? I faced problems with this TV before where you had to get the timing right between booting up the PC and powering up the TV to get it to display images properly from said PC. I’m wondering if that’s just the TV being old or me having a bad setup somewhere.

This does sound like a monitor issue if there’s problems when it’s plugged in direct.