this post was submitted on 27 Dec 2023
252 points (98.1% liked)

Linux

48372 readers
1154 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Well known KDE developer Nate Graham is out with a blog post today outlining his latest Wayland thoughts, how X11 is a bad platform, and the recent topic of "Wayland breaking everything" isn't really accurate.

"In this context, “breaking everything” is another perhaps less accurate way of saying “not everything is fully ported yet”. This porting is necessary because Wayland is designed to target a future that doesn’t include 100% drop-in compatibility with everything we did in the past, because it turns out that a lot of those things don’t make sense anymore. For the ones that do, a compatibility layer (XWayland) is already provided, and anything needing deeper system integration generally has a path forward (Portals and Wayland protocols and PipeWire) or is being actively worked on. It’s all happening!"

Nate's Original Blog Post

you are viewing a single comment's thread
view the rest of the comments
[–] Quackdoc -1 points 11 months ago (1 children)

woops my bad, I mean to link this https://github.com/probonopd/wayland-x11-compat-protocols it's a repo of going to be protocols, to fill in the gap instead of pretending the issue doesn't exist

[–] [email protected] 2 points 11 months ago (1 children)

Also read the article (as in the original blog post) about that repo.

[–] Quackdoc 1 points 11 months ago (1 children)

I did and quite frankly it's trash, XDG portals are a clunky and quite frankly terrible and poorly thought out api. I'm not the only one that disagrees with this sentiment as multiple people are trying to get protocols like ext-screencopy-v1 for screen recording and ext-foreign-toplevel-* for window management upstreamed into wayland so that xdg portals aren't necessary for these use cases. I don't mind the reliance on pipewire too much, but I too think that It shouldn't be necessary for screen capture.

IMO It is one of nate's worst takes of all time if not the worst. Usually I agree with most things he writes, but not this, xdg-portals is a travesty, pipewire is nice and all, but I don't see why we should need an entire media system for basic screen capture capabilities. and clearly im not alone on this sentiment

[–] [email protected] 1 points 11 months ago (1 children)

And that'll shake out in the time it takes for X11 to go away. I get what you're saying, although I don't share your opinion about portals from a user perspective: I'm just happy that Firefox finally uses the Plasma file picker.

[–] Quackdoc 1 points 11 months ago (1 children)

I have a couple of issues with portals. One is that we're putting too much eggs in the basket of something that is designed for containers. XDG portals Have rejected features that people have requested because they don't want to expose that functionality to a container and they are allergic to permission prompts apparently.

I also have other issues with the portals for instance video capture. It requires you to have a camera portal. It requires you to have a desktop capture portal. It also requires you to have an app to app, video, portal, which doesn't exist yet. All of these things require pipewire pretty much in most cases, so why can't we just have a single pipewire portal? It may not scale well in the future, but it doesn't scale well now anyways. If you want just a generic pipe wire stream, you're not gonna be able to have it, you're going to have to conform to one of the standards anyways. For a case in point example, the OBS pull request for Game Scope Capture is the perfect example of this over reliance in XDG portals.

I'm showcasing this just to highlight the fact that the XDG portals are incredibly poorly thought out, and I don't think that it's a reliable method for the future going forwards.

PS. Please pardon any oddities in this, I had to use speech to text, since my RSI is acting up.

[–] [email protected] 1 points 11 months ago (1 children)

I think having separate standard APIs for screenshots, screen capture, and video capture that aren't married to one implementation makes sense.

I partially agree about the focus on containers/sandboxes. Yes, it makes sense to criticize that something designed for a different use case results in different trade-offs. But on the other hand, are the use cases really that different? We're talking about standalone desktop apps, they need some common building blocks no matter if they're containerized or not, right?

Otherwise I don't know enough about the standards to comment there, you're probably right!

[–] Quackdoc 1 points 11 months ago

I think having separate standard APIs for screenshots, screen capture, and video capture that aren’t married to one implementation makes sense.

The idea of a using a separate thing for it is fine, in itself, but necessitating it is an issue to me. There are a LOT of wayland compositors now, for all sorts of systems, each one also new needs a compatible xdg portals implementation (or whatever third party tool you like), in the case of xdg portals this also means pulling in things like dbus. It actually becomes a lot to build a "Minimal but fledged out" ecosystem. something which should otherwise be possible.

we’re talking about standalone desktop apps, they need some common building blocks no matter if they’re containerized or not, right?

sure but then you have xdg-portals denying actually useful a11y protocols because they "don't want to expose it to containers" -_- apparently they never heard of a permissions system? but this also highlights why the wayland ecosystem right now is so poor for select individuals (and why they get heated when told that they need to swap to wayland)