Wayland. It comes up a lot: “Bug X fixed in the Plasma Wayland session.” “The Plasma Wayland session has now gained support for feature Y.” And it’s in the news quite …
I have to use Slack for work and screen sharing doesn’t work when I’m using Wayland.
Don’t let Slack launch at startup. As long as it launches after pipewire - everything works. Your can also restart it to fix sharing issue, but that can be a birch if you already started a call.
Oh, thx for the tip!
Is there a way to control the launch order? I suppose you could also find a script that waits for a given process to be responsive before launching another, but I’m not sure where I’d insert that either.
(I’ve been using Ubuntu mostly out-of-the-box so far and just now started having the time and energy to start learning about and fiddling with the internals)
If it launches via a systemd service, you can perhaps edit the file such that it depends on Pipewire before it launches.
Or disable the built in startup support and create your own service that does the same.
I’m not sure that would work. Pipewire probably starts via system (just takes a while to become functional) and slack is started by KDE. I guess you could just add a delay to slack’s start, but I just start it by hand.
Starting by hand is fine and I do it with just about anything I need anyway (though I suspect there is still some startup bloat I’ll need to sort out, if I don’t set up an entirely new system somewhere down the line), but don’t underestimate my compulsion to automate what I can (or at least know how to).
I’m a sucker for automation for automation’s sake :D
I started running OBS with a virtual camera to do screen sharing. It is so much nicer to manage sharing with OBS than with Slack/Google Meet/Discord.
Oh, that sounds like an interesting idea. Currently stuck with teams at work. Screen sharing does work under wayland. But definitely going to try this.
Oh, never heard of this, I will check it out thx.
Try using XWayland video bridge. It should allow any XWayland apps to use screen sharing. Unfortunately most distros either don’t ship it yet or ship broken versions but you can download nightly Flatpaks from Gitlab CI
I’m not sure why, but every time I use XWayland Video Bridge (installed as of about 2 days ago so it should still be pretty new), I just end up with a black screen being broadcasted - not sure what could be causing that.
-
Stagnation isn’t evil, it’s just part of tech. Once tech solves the problem it set out to, it should stagnate. Adding more bells and whistles makes things better less often than it makes them bloated and more prone to breaking. On the flipside, software that hasn’t changed much other than bugfixes and security patches is the backbone of a loooot of our tech infrastructure.
-
I fail to see how the architectural difference fundamentally solves the issue of changes breaking compatibility. Now instead of breaking compatibility with the server, you’re “only” breaking compatibility with the compositor. But that’s okay because at least there are other compositors that fulfill this use case… oops switching to that compositor broke 3 of your other apps, well lets try another! … and now my pc won’t communicate with my GPU… well, we can always… and so on and so on.
Not saying that wayland is bad nor that X is better, but these are the two most common “cases against X/for wayland” that I hear and I just don’t buy it. As much as I argued against it, I love trying new and different software and eking every last bit of performance out of my 8 year old PCs, I can’t wait to give Wayland a try and see if there’s a noticeable difference… I just wish these two arguments would go away already
The issue is that X was never a mature, feature-complete, stable project. It was always a hideous and bloated hodgepodge of disparate and barely working patches. The entire point of Wayland is to do exactly what you say tech should do: solve the particular problem (graphics server) well and cleanly, and limit itself to a definable set of features so it can actually reach that point of stability.
As I understand it, Wayland offloads a ton of stuff that was core to X11 (like input device handling) directly to the compositor. The end result is every compositor handling things differently. Compare something like i3 to Sway. Sway has to handle input, displays, keyboard layouts, etc directly in its config. If I switch to Hyprland I then have to learn Hyprland’s configuration options for doing the same. Meanwhile, switching from i3 to dwm requires only setting up the WM to behave how I want - no setting up keyboards, mice, etc. It just feels clunky to work with Wayland compositors, frankly.
Also when something breaks in Wayland the fix is almost always hard to find or incredibly obscure because the fix isn’t for Wayland- it’s for the compositor. If your compositor isn’t popular then good luck!
Can someone debunk this please? It feels like something is overlooked here
They got all of the basic facts right and their general experience mostly mirrors my own, though in my case the majority of problems encountered apply to Wayland in general and are rarely compositor-specific. That is to say that I can usually Google “[APP]” [FEATURE] not working “Wayland” and find people from a variety of different Wayland compositors all experiencing the same thing[1]. Maybe I just got lucky when I chose my specific compositor?
In fact, despite being on Wayland for about a year now, the only compositor-specific issue I’ve ever encountered is a broken controller configuration overlay when using Steam’s Big Picture Mode. It’s actually super frustrating because I have absolutely no idea if it’s an issue specific to my compositor, wl-roots, or something unique about my configuration. All I really know is that it works correctly if I launch Steam in a nested gamescope compositor, so it’s not a bug in the protocol nor xwayland.
Some recent examples: broken Steam Controller cursor, busted SDL in TF2, Invisible Emacs cursor ↩︎
Thanks for sharing your experience. If the majority of issues are Wayland-wide right now instead of compositor-specific, then that is good in my opinion. These issues get fixed once at the protocol level and are then solved for everyone. Compositors should principally just work, given that they implemented the protocol correctly.
For 1., the big issue is that there constantly are appearing new standards in display technologies. Two semi-recent examples are HDR and VRR, both of which X11 struggles with, and implementing those into X11 has been said to be painful by its developers.
-
Good read, provided context that I didn’t have before as a newbie
Great article. I’m currently still on X because Plasma 5 doesn’t handle fractional scaling well. As soon as that changes (Plasma 6?) I’ll be jumping over to Wayland.
For me it’s Barrier/Input Leap which keeps me stuck on X. Still waiting for a solution there then I’m moving over.
I want to switch to Wayland. I try it every month to see if it is working with my system and so far it is not.
Ubuntu 23.04/Nvidia 3080/Steam. It use to work with the old big picture mode but when steam went to the new one, Wayland broke for me.
That’s weird. I thought Steam doesn’t support Wayland at all and runs using XWayland.
Gamescope makes the experience a lot better with steam at least for me in swaywm. I experimented with running each game in gamescope using launch options but with gamescope’s mediocre support of the steam overlay some multiplayer invite stuff doesn’t work correctly. Running steam in bigpicture within gamescope pretty much solves all these issues and seems to improve performance too.
So most complaints you read about Wayland missing this or that (such as fractional scaling, or screen sharing, or global shortcuts) from over a year or two ago are likely to be wrong today.
Is fractional scaling in Wayland really working now? I tried it a while ago and everything was blurry mess.
I just tried this and it was blurry until I logged out and back in!
Just tried it on my laptop and xwayland apps are still blurry mess, even after restart. However, all apps I use now has Wayland support that can be enabled with some flags or environmental variables, so they are actually usable now with fractional scaling. Finally I can use my laptop with 175% scaling, which is much more comfortable than 200% scaling.
In display settings check the box to allow x11 apps to scale themselves instead of the compositor. Your cursor will still be blurry but the app content itself will be fine. A few apps like steam won’t scale without some kind of launch flag though.
I don’t see this option. I didn’t even see the option to set fractional scaling without enabling experimental flag from command line.
I assumed you were on KDE since the dev who wrote the blog post was talking about KDE Wayland but are you on gnome? Gnome"s fractional scaling implementation isn’t as good as KDE’s.
It’s working with Sway from a quick test:
swaymsg output DP-1 scale 1.7
But XWayland is blurry as expected (that’s the big blocker, or all useful apps being ported to Wayland).
We need another display system. Something more dev friendly and more desktop agnostic.
I seems Wlroots is designed to be server agnostic (despite the name), if it is bound to a new display server many apps should be available.
Let’s not, megachads.