Post AwcXUhJLBgItcTS4zw by technobaboo@ordinary.cafe
(DIR) More posts by technobaboo@ordinary.cafe
(DIR) Post #AwcXUhJLBgItcTS4zw by technobaboo@ordinary.cafe
2025-07-29T07:06:20Z
5 likes, 3 repeats
I want to defend Wayland here and explain a crucial piece that I think people are missing...The splitting of protocols in Wayland and compositor reimplementation were to allow for new form factors. It had to sacrifice the guarantee of all desktop app functionality being present to achieve that.The idea (as I see it) was never to have 500 desktop compositors all trying to reimplement the same thing with slight differences. Iinstead, it was for 500 different interfaces for different platforms that are compatible with the same apps (e.g. desktop, laptop, phone, car screens, AR/VR, watch). Different form factors have totally different ways of dealing with interface, but share enough common features where it makes sense to have 1 base protocol and many other ones for device/form specific features.Problem is, while in 2008-2016 we had a ton of new experimental UIs coming out on a semi-regular basis (that was the peak of the whole convergent phone/tablet craze, smartwatches started, fancy car UI, touch tables, early AR/VR) things have quieted down. The purpose of Wayland's insane modularity hasn't been visible to most people given it's almost always complained about in a desktop contest vs X11. But X11 was literally only designed for a desktop form factor and has been refined for that 1 purpose for decades!As an example of different form factors, Wayland lets IVI (in-vehicle infotainment) systems work way better than Xorg could have. Desktop window layouting on that platform would inherently produce massive amounts of unnecessary complexity, and the ability to direct scanout saves on power/expensive compute. Automotive Grade Linux and COVESA maintain reference interfaces for cars so companies can iterate a ton faster. Wayland gives the app compatibility and they can make the system UI work with more flexibility and ease than an X11 window manager. Take Linux Mobile too, the compositor can reliably enforce window layout and boundaries and composition. While this could technically be done with an X window manager and compositor, doing it with Wayland guarantees reliability as the app simply doesn't have a choice or room for error. Some things like drag and drop of toolbars doesn't make much sense on mobile given how small the screens are.There's some interfaces where X11 is basically impossible to use. In AR/VR (where i am making a Wayland compositor) the concept of a screen simply does not exist. How is an app supposed to position itself when the very concept of 3D is not part of the protocol? In Wayland I don't have to implement the protocols that don''t work (e.g. layer shell) and therefore any apps that don't need it will be compatible..Wayland has allowed for insane levels of flexibility, things that no other display server architecture can do reasonably. Total flexibility between app and screen, direct scanout without hacks, AR/VR support, etc.Here's some fun and useful stuff that's been done with Wayland, stuff that X11 could never reasonably do:LG Smart TV UI: https://youtu.be/4cmYCK9PBkMMultiple user collaboration on touch tables with arbitrary rotation: https://youtu.be/8xtjJTJAQsYAR/VR apps running in windows and volumes at the same time, all interactable back in 2014 (eat your heart out magic leap and apple): https://github.com/evil0sheep/motorcarPresentation slides that were themselves a Wayland compositor written in Qt and QML so therefore allowed fully interactive live demos in an integrated form factor with a very popular and easy to code UI framework: https://youtu.be/mIg1P3i2ZfICosmic panels are actually Wayland compositors, meaning widgets can draw literally anything from any toolkit in any language.Now, could Wayland devs maybe have distributed features across protocols better? Worked with app toolkit devs to ensure the protocols they made actually fit what the apps and compositors needed? Stopped bikeshedding (though imo many cases of "bikeshedding" are simply accounting for other form factors)? Absolutely!My point here is simple: there was a reason for making it this modular, for not having a standard implementation. It wasn't just devs trying to impose some ideology, it wasn't some corporate takeover. It's good reasons that people using X11 on their desktop/laptop don't encounter. If we made something that wasn't universal, most apps wouldn't be compatible with it and therefore everything but the desktop form factor would lack apps.
(DIR) Post #AwcXUim5kGtc9vuYS0 by technobaboo@ordinary.cafe
2025-07-29T08:09:23Z
0 likes, 0 repeats
@BrodieOnLinux i feel that most of the comments on the recent wayland video missed this crucial point tbh
(DIR) Post #AwcXUk390M8A76tgfY by BrodieOnLinux@mstdn.social
2025-07-29T08:58:41Z
0 likes, 0 repeats
@technobaboo I do think this is fairly under discussed topic, I might have to add that to the list
(DIR) Post #AwcXwpoVAVU469RahE by technobaboo@ordinary.cafe
2025-07-29T09:00:37Z
0 likes, 0 repeats
@BrodieOnLinux i'm also worried that by trying to come up with standard sets of protocols, app devs will hyper-specialize to those sets... making it so you essentially have to implement all of a set to make it work.... and we are back to X11i think we just need to refine the protocols and make sure that we can talk to app devs and toolkit devs and compositor devs about what is needed.
(DIR) Post #AwcXwqi9pa0GslU2Rk by BrodieOnLinux@mstdn.social
2025-07-29T09:04:01Z
0 likes, 0 repeats
@technobaboo Talking to app and toolkit devs is such a big thing, it takes me back to things like the global shortcuts portal which in theory solves that problem but requires so much re engineering for a niche platform that nobody has even begun to touch it outside of the DEs
(DIR) Post #AwcY5LvVemom0mmdvM by BrodieOnLinux@mstdn.social
2025-07-29T09:05:32Z
0 likes, 0 repeats
@technobaboo My main point with a standard protocol sets is more about setting the minimal expected baseline, I think that's a much more achievable goal than attempting to say this is what a desktop compositor must implement including all the bells and whistles.
(DIR) Post #AwcYpzyh4xjzY8W1Oi by neal@social.gompa.me
2025-07-29T09:12:41Z
0 likes, 0 repeats
@BrodieOnLinux @technobaboo Worse yet, nobody wanted to even try to implement it because only KDE Plasma implemented it. KDE was the *first* to implement the Global Shortcuts portal over three years ago, and yet nobody cared.
(DIR) Post #AwcYq1DcSxH3OiVSIi by BrodieOnLinux@mstdn.social
2025-07-29T09:13:51Z
0 likes, 0 repeats
@neal @technobaboo Correct me if I'm wrong but I believe the GNOME portal has support for it now at least, I know I saw design mockups a while back and I feel like I heard it got implemented
(DIR) Post #AwcYumS0nf4R2mVcBs by technobaboo@ordinary.cafe
2025-07-29T09:06:54Z
0 likes, 0 repeats
@BrodieOnLinux true, but i worry that minimum baseline is something that app devs will basically develop only for (even if their app does not require all of it) and therefore I cannot meet it as someone making a compositor for a different form factor... I can't let apps position themselves, they simply do not understand 3D space and its nuances. There's no screen for layer-shell for example!i mean idk, maybe if we phrased it right we could say "if you're a desktop compositor you should implement these protocols" in a way that somehow makes app devs not expect all of them to be present if that makes sense? augh idk
(DIR) Post #AwcYuo0R1ACRrpccU4 by BrodieOnLinux@mstdn.social
2025-07-29T09:14:51Z
0 likes, 0 repeats
@technobaboo No I get the concern you have here and I don't really know how you would mitigate this issue.
(DIR) Post #AwcZHhTvRPw0IDKhxQ by neal@social.gompa.me
2025-07-29T09:16:37Z
0 likes, 0 repeats
@BrodieOnLinux @technobaboo Yes, it was implemented in GNOME 48. But we've gone so long without it that the incentive to use it has dropped precipitously.
(DIR) Post #AwcZHieF6XmVuVASg4 by BrodieOnLinux@mstdn.social
2025-07-29T09:19:00Z
1 likes, 1 repeats
@neal @technobaboo My main push was OBS, and nowadays the OBS websocket works as a good drop in solution and there are great front ends for it. Basically the only major point of interest is push to talk and good luck getting Zoom or Discord to make Linux changes
(DIR) Post #AwcZhGEpM2dXKNSWye by neal@social.gompa.me
2025-07-29T09:21:04Z
0 likes, 0 repeats
@BrodieOnLinux @technobaboo Back when I worked for a big Zoom customer, I was able to push them into a corner to get them to support portal-based screenshare. And that took nearly two years of concentrated effort to get that done.Unfortunately, I no longer have the power to do anything about Zoom.Nobody has any power to do anything about Discord.
(DIR) Post #AwcZhHTkk2AbAxRxse by BrodieOnLinux@mstdn.social
2025-07-29T09:23:32Z
0 likes, 0 repeats
@neal @technobaboo There's also not the drive of everyone being at home now so there's much less of a concerted effort to improve things
(DIR) Post #Awcc2dBxPMhwVUR0K0 by BrodieOnLinux@mstdn.social
2025-07-29T09:49:52Z
0 likes, 0 repeats
@drakulix @technobaboo @neal There is a set of protocols that from what I can see, appear to be universally adopted at least in the context of desktop compositors, any discussion should start from this point so there's at least some common ground to build off. Other protocols get much messier especially when there may have been conflict in getting them mergedExt zones feels more like something that should be in a base set, I could easily understand why a DE wouldn't be interested in layershell
(DIR) Post #Awchwv9iJ0nWCy2slM by BrodieOnLinux@mstdn.social
2025-07-29T10:56:05Z
0 likes, 0 repeats
@drakulix @technobaboo @neal Honestly I think that's one of the best explanations I've seen against just trying to bring legacy software forward through a simple 1:1 protocol.
(DIR) Post #AwdRh1hWnXhzlaDku0 by karolherbst@chaos.social
2025-07-29T19:27:20Z
1 likes, 0 repeats
@technobaboo @BrodieOnLinux my entire unbiased opinion on this is, that I think it would make sense to get more toolkits to be w-p members, e.g. SDL, or to create a pro-app group or something to represent more of that side of the tech stack.Though I think that would mostly require people to talk with each other about it to get something like that going?
(DIR) Post #AwdisPGpCsTnGtk7sG by untsuki@udongein.xyz
2025-07-29T22:41:08.672762Z
0 likes, 0 repeats
@technobaboo I already heard how this allowed for better implementation of tiling (includding scrolling tiling), but didn't really think about different device usecases. :thinking_cirno:
(DIR) Post #AweDcq5ijjRJ2whSwy by lanodan@queer.hacktivis.me
2025-07-30T04:25:39.405186Z
1 likes, 0 repeats
@technobaboo Also a thing that a lot of people tend to miss for some weird reason: X11 also has a bunch of extensions.For example: xrandr, xinerama, screensaving (remember xine emitting a key like scroll lock to inhibit idle), fullscreening, …And even sets of extensions with ICCCM/EWMH.And depending on the X11 implementation and/or X11 window manager you may not get the same set of extensions.
(DIR) Post #AweEfxmAin6xhebs5w by lanodan@queer.hacktivis.me
2025-07-30T04:37:25.860081Z
0 likes, 0 repeats
@technobaboo And personally I see extensions as a way to allow smaller compositors. Effectively not end up in the kind of situation where either you need full feature parity with say gnome/kde, or you have a somewhat broken compositor which has to lie via providing stub implementations.
(DIR) Post #AweEvGCsTjl5D0OaKu by technobaboo@ordinary.cafe
2025-07-30T04:30:52Z
0 likes, 0 repeats
@lanodan that's not as big a deal given everyone used Xorg... but yeah!!
(DIR) Post #AweEvH9MyGXw8PlIVU by lanodan@queer.hacktivis.me
2025-07-30T04:40:10.428596Z
0 likes, 0 repeats
@technobaboo Xorg isn't everywhere though, TinyX and TinyXserver for example used by systems like TinyCoreLinux.And now they've probably all moved to wayland but embedded space also didn't always meant Xorg (when X11 would be used instead of a custom protocol, like with Android, or raw framebuffer).
(DIR) Post #AweHe4MfYOIxQ9TBdw by scathach@stereophonic.space
2025-07-30T04:45:39.467206Z
0 likes, 0 repeats
@lanodan @technobaboo Xenocara on OpenBSD too
(DIR) Post #AweHe5WdEprt1L8eoK by lanodan@queer.hacktivis.me
2025-07-30T05:10:37.778974Z
0 likes, 0 repeats
@scathach @technobaboo That one is pretty much just a patchset over Xorg for OpenBSD integration, it's like if say Debian would name their patchset something other than Xorg.
(DIR) Post #AweHhkMtqDxkYtKaem by tytan652@framapiaf.org
2025-07-30T05:11:21Z
0 likes, 0 repeats
@BrodieOnLinux @neal @technobaboo This portal was designed for apps with simple usecase.Apps like OBS with per-project shortcuts, it's a mess. You already need to change how OBS handle shortcuts but you need to deal with the portal limitation…
(DIR) Post #AweNvqOKqMeT1O6kK0 by novenary@akko.wtf
2025-07-30T06:18:59.097920Z
2 likes, 0 repeats
stop this wm elitism bullshit it's not helping anyone and it won't solve the underlying problems
(DIR) Post #AweOONsdvV0IzetQf2 by tofu@is-a.cat
2025-07-29T07:08:50Z
0 likes, 0 repeats
@technobaboo Wasn't wayland notorious for breaking compatibility with VR headsets?
(DIR) Post #AweOOOe94t09Mz7Mhc by technobaboo@ordinary.cafe
2025-07-29T07:13:31Z
0 likes, 0 repeats
@tofu only GNOME, they refused to implement the DRM lease protocol like everyone else did
(DIR) Post #AweOOPRm6MhTquL03k by tofu@is-a.cat
2025-07-29T07:21:58Z
0 likes, 0 repeats
@technobaboo This is why I mock people who use desktops, especially GNOME.
(DIR) Post #AweOOQTwFo1d3uMF4S by mischievoustomato@tsundere.love
2025-07-30T06:26:18.592499Z
0 likes, 0 repeats
@tofu @technobaboo been using gnome for 5 years since 2025 :pekochad:
(DIR) Post #Awf1SG0F3L9LvtHjNo by wolf480pl@mstdn.io
2025-07-30T13:44:04Z
0 likes, 0 repeats
@technobaboo @BrodieOnLinux IOW, how do we incentivize app devs to make their apps degrade gracefully, as opposed toa) falling apart when some protocol is missingb) not trying to use that protocol at all and just saying "sorry, no $feature on wayland"?
(DIR) Post #Awf26wwEq64Og5oevI by wolf480pl@mstdn.io
2025-07-30T13:51:26Z
0 likes, 0 repeats
@drakulix @BrodieOnLinux @technobaboo @neal remember how some protocols (like layer-shell, or screencopy) were supposed to be for privileged clients only, not as a security feature, but to prevent app and toolkit reliance on them?Has this gotten anywhere, or is "don't expose those to flatpak" as far as we got?
(DIR) Post #Awf2xfwckhlFJw8csK by lproven@social.vivaldi.net
2025-07-30T09:53:26Z
0 likes, 0 repeats
@technobaboo If I may, I think you are missing things too.1. Damaging a very widespread use case for a niche one is bad planning.2. Losing the clean separation of "display server" from "window manager" was a bad design decision.3. Discarding 30+Y of R&D for a system which is less capable is bad planning. It effectively kills around 25 alternative desktops for instance. There is a real habit of only considering the biggest most mainstream products and ignoring all the smaller ones. 4. Linux is not all of Unix. The Wayland team only considered Linux. Same reasoning as above.5. It's not Unixy at all. Unix is about files. Plan 9's Rio display system shows the way: windows are filesystem objects. This is the Unix way. Wayland is counter to the philosophy of its host OS.6. X had unique abilities that Wayland discards. The developers should study the principle of _kaizen_ -- continual incremental improvement. This is also an aspect of the Unix way.7. There is a deep failure to understand the existing tools and why they work how they do. This is the philosophical objection called _Chesterton's Fence_ and every project lead needs to understand it. 8. A11y and inclusion are important. Wayland is much weaker at this.Those are the first to mind -- I am short of time and this is in haste.
(DIR) Post #Awf2xhRVBO3Rxzandw by wolf480pl@mstdn.io
2025-07-30T14:00:57Z
0 likes, 0 repeats
@lproven @technobaboo which is why X11 should live on, in parallel to wayland
(DIR) Post #Awf9KhrUOEN5eU6MDI by wolf480pl@mstdn.io
2025-07-30T15:12:20Z
0 likes, 0 repeats
@drakulix @BrodieOnLinux @technobaboo @neal hmm so is ot difficult to spawn desktop components from the compositor at all, or is it only difficult when trying to pass them a wayland socket?
(DIR) Post #AwfE39nWHkugqthDNY by wolf480pl@mstdn.io
2025-07-30T16:05:11Z
0 likes, 0 repeats
@drakulix @BrodieOnLinux @technobaboo @neal hmm yeah...I was thinking about layer-shell where most of the software that needs it would be spawned at session start, or via compositor hotkeys, most of which can be handled by compositor's config.And if it's not meant to be secure, only to make it annoying to use the wrong protocol, you could justWAYLAND_DISPLAY=/run/user/$id/wayland-1.priv-a635c78dand have the name of that socket be different on every run.Wouldn't work for wl-copy tho...
(DIR) Post #AwfEZSNuiNZvlW7Y3M by wolf480pl@mstdn.io
2025-07-30T16:11:03Z
0 likes, 0 repeats
@drakulix @BrodieOnLinux @technobaboo @neal btw. the more I think about xdg-desktop-portal, the more weird it seems to me...so it's spawned by systemd-user instance, and it listens on user dbus...but it needs WAYLAND_DISPLAY env var from the compositor so the compositor needs to change systemd's activation environmentbut then you could run multiple sessions with different WAYLAND_DISPLAY, how would it handle that?Or is this just a sway issue and other DEs do it better?
(DIR) Post #AwfHXT2Rc4Qv4mp03U by wolf480pl@mstdn.io
2025-07-30T16:44:18Z
0 likes, 0 repeats
@drakulix @BrodieOnLinux @technobaboo @neal I don't think user perception is an issue hereIf you said "this thing is one per user, that thing is one per login session", I think a lot of users would understand that.But somehow when user bus was introduced, it replaced the session bus, instead of being a separate bus.My thought would've been to overlay them, overlayfs-style, but maybe that wasn't possible for reasons I don't know
(DIR) Post #AwfHepOAuelMQEUnEe by technobaboo@ordinary.cafe
2025-07-30T16:45:36Z
0 likes, 0 repeats
@wolf480pl @BrodieOnLinux toolkits should be doing the bulk of this work, so listen to toolkit authors/maintainerstalk to toolkits and app devstalk to toolkits and app devsthis doesn't happen nearly enough in wayland! in those discussions they're thinking of hypotheticals from the desktop side often times, not the nuances of how app devs are going to implement it. This is probably the #1 area where Wayland can improve.
(DIR) Post #AwfHvn1swG0s1k9qXw by technobaboo@ordinary.cafe
2025-07-30T16:48:41Z
0 likes, 0 repeats
@wolf480pllol i wish, now most screen recorders either use only the portal or have 50 options for what to use or try everything in sequence until they find a working thingas for layer shell, that's often used for waybar and such so it's whatever, i can live without it while not implementing layer-shell
(DIR) Post #AwfIDYJKOvA1afmp5k by wolf480pl@mstdn.io
2025-07-30T16:51:55Z
0 likes, 0 repeats
@technobaboo i mean, as long as a browser or a discord doesn't start displaying its own notifs with layer shell and crashing if that fails, we should be good, right?
(DIR) Post #AwfITeqTsAfqUUyOK8 by technobaboo@ordinary.cafe
2025-07-30T16:54:48Z
0 likes, 0 repeats
@wolf480pl yep! crashes should be where your app cannot fundamentally run without that protocol, like a game without dmabuf or waybar without layer-shell...
(DIR) Post #Awh2OrkXG4V277nyro by icedquinn@blob.cat
2025-07-31T13:04:05.792210Z
1 likes, 0 repeats
@technobaboo i think in the end wayland failed to wontfix, politicking, and mostly failing at what it was supposed to do and just becoming a glorified way to negotiate a vulkan surface.in retrospect we could have just skipped most of it and just made it an RPC service you ask for a vulkan surface and inputs. :comfywoozy:
(DIR) Post #Awkc7VnJoTiYvG0jzc by lispi314@udongein.xyz
2025-08-02T04:30:36.352146Z
1 likes, 0 repeats
@wolf480pl @technobaboo @lproven >> 5. It's not Unixy at all. Unix is about files. Plan 9's Rio display system shows the way: windows are filesystem objects. This is the Unix way. Wayland is counter to the philosophy of its host OS.Not everyone is in love with UNIX, many of us use it in lack of viable alternatives.But even so, it would be /very/ feasible to make a FUSE or 9p interface program to present a filesystem interface.>> 6. X had unique abilities that Wayland discards. The developers should study the principle of _kaizen_ -- continual incremental improvement. This is also an aspect of the Unix way.I think C++ has shown us a few funs ways in which it can fail horribly over time. At some point just pilling on more doesn't work.>> 8. A11y and inclusion are important. Wayland is much weaker at this.I think you greatly overestimate just how accessible the desktop form factor is.> which is why X11 should live on, in parallel to waylandDoes Wayback count?
(DIR) Post #Awkc7WlwB6CtxGN9Tk by wolf480pl@mstdn.io
2025-08-02T06:28:25Z
0 likes, 0 repeats
@lispi314 @technobaboo @lproven in princiole Wayback should count, we'll see how much of the protocol they'll end up being compatible with.But you also need toolkits to not drop X11.
(DIR) Post #AwkiwGUp3E2Xy9wZf6 by technobaboo@ordinary.cafe
2025-08-02T07:44:48Z
0 likes, 0 repeats
@wolf480pl @lispi314 @lproven wayback seems to be just modern DRM/libinput slapped onto an Xwayland implementation tbh...xwayland-satellite is a full translation layer from X to Wayland, works on any compositor! when ext-zones is done i'm sure it'll use that and have near perfect compat
(DIR) Post #Awkn9B6inTqsq05FWi by wolf480pl@mstdn.io
2025-08-02T08:32:02Z
0 likes, 0 repeats
@technobaboo @lispi314 @lproven I was thinking rootful
(DIR) Post #Awl0z2D6Q6jzhr7rBA by lproven@social.vivaldi.net
2025-08-02T09:09:24Z
0 likes, 0 repeats
@lispi314 @wolf480pl @technobaboo I disagree with all of these except C++. Desktop accessibility is far better than you think. As an example I can happily, quickly and efficiently drive a Windows computer with no mouse (or other pointing device) using 90% of the same UI I already use... Because it was designed with thought and insight and understanding, and the same UI is available to both sighted and blind users.No, Wayback doesn't count, although I've written about it and am watching with interest.
(DIR) Post #Awl0z3OU1HRFNRSSYa by lispi314@udongein.xyz
2025-08-02T09:14:35.088701Z
0 likes, 0 repeats
@lproven @technobaboo @wolf480pl Desktop accessiblity only addresses a few specific disabilities and doesn't fix inherent unsuitability of the entire desktop interaction model to many others.It can be sort-of hacked to work for them, but it certainly isn't a first-class experience.
(DIR) Post #Awl0z4OAJwmKSkJihU by lproven@social.vivaldi.net
2025-08-02T09:23:51Z
0 likes, 0 repeats
@lispi314 @wolf480pl @technobaboo That is true but it's also endlessly adaptable. When a project attempts to bring a phone model to the desktop, badly, as GNOME did in V3, then the result is crippling everyone. Yes it brings everyone to the same level, but by reducing everyone to a lowest common denominator. It cripples me. My preferred UI, keyboard control augmented by pointing, is gone. That's bad design.
(DIR) Post #Awl0z4rEZs1xutuw0e by lispi314@udongein.xyz
2025-08-02T09:33:32.286972Z
0 likes, 0 repeats
@lproven @technobaboo @wolf480pl Except that there's no reason for it to bring a phone to a platform that isn't a phone.That's just GNOME having bad ideas like they often do. Orthogonal issue.
(DIR) Post #Awl0z5PyUhoteeAg9w by wolf480pl@mstdn.io
2025-08-02T11:06:58Z
0 likes, 0 repeats
@lispi314 @technobaboo @lproven speaking of the orthogonal issue:Is it just my perception, or does GNOME have a pattern of thinking they're infallible and that their way of doing UI is the only way anyone should ever interact with a computer?
(DIR) Post #AwlXo7cxEjOfoCccSG by technobaboo@ordinary.cafe
2025-08-02T17:14:50Z
0 likes, 0 repeats
@wolf480pl @lispi314 @lproven exactly