Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This is a great project! I like and use Wayland but the portal protocols and extension mechanism does leave a lot to be desired. Wayland is still quite a way behind Windows and macOS in terms of what productivity users need

An X11 rewrite with some security baked in is an awesome approach. Will be watching!



I thought for a long time that rather than move to Wayland, we could come up with a tidied-up version of X. Sounds like a good and useful project, I hope it progresses.


I thought this too and originally thought that’s what Wayland was going to do but it went off and did its own thing.

I’m all for an X12.


An X12 was briefly considered by the community before adopting Wayland: https://www.x.org/wiki/Development/X12/

If you take the time to read through that (very partial) list of cruft and footguns in X11 it probably makes it a little easier to understand why a clean-slate approach was able to attract momentum and why many hands-on involved developers were relatively tired of X11. Critics would of course respond that backwards compatibility is worth the effort and rewrites are often the wrong call, etc. It's the Python 2/3 debate and many others.


Realistically rewrite would keep X11 compatibility layer and just do same wayland did, make new protocol.

Just... without all that mess that turned out to be at best +/-, at worst outright negative causing problems for everyone involved. And near all of the "advantages" are "the server is built from scratch" not "the protocol was the limitation"


Python 3 was actively antagonistic to Python 2 code for no reason other than to lecture us about how we were doing things wrong, writing code to support 2 and 3 to help transition was dumb etc etc.

For example, in python 2 you could explicitly mark unicode text with u"...". That was actively BLOCKED with python 3.0 which supposedly was about unicode support! The irony was insane, they could of just no-oped the u"". I got totally sick of the "expert" language designers with no real world code shipping responsibilities lecturing me. Every post about this stuff was met by comments from pedantic idiots. So every string had to have a helper function around it. Total and absolute garbage. They still haven't explained to my satisifaction why not support u"..." to allow a transition more easily to 3.

Luckily sanity started prevailing around 3.5 and we started to see a progression - whoever was behind this should be thanked. The clueless unicode everything was walked back and we got % for bytes so you could work with network protocols again (where unicode would be STUPID to force given the installed base). We got u"" back.

By 3.6 we got back to reasonable path handling on windows and the 3 benefits started to come without antagonistic approaches / regressions from 2. But that was about 8 years? So that burnt a lot of the initial excitement.


> Python 3 was actively antagonistic to Python 2 code for no reason other than to lecture us about how we were doing things wrong, writing code to support 2 and 3 to help transition was dumb etc etc.

> [...]

> By 3.6 we got back to reasonable path handling on windows and the 3 benefits started to come without antagonistic approaches / regressions from 2. But that was about 8 years? So that burnt a lot of the initial excitement.

So it's a great analogy. Wayland started out proudly proclaiming that it intentionally didn't support features in the name of "security" but everyone should "upgrade" because this was totally better, and has been very slowly discovering that actually all the stuff it willfully dropped was useful and has mostly evolved back to near feature parity with Xorg.


Uhm no? As I mentioned, Wayland is simple because it was designed with the idea that there will be many implementations. It turns out that once you have many implementations, you can't just implement screen recording in one implementation and directly integrate with that implementation, because someone might use a different implementation. This then necessitates extensions for features that go beyond displaying things.


There’s a reason they’re called Pythonistas

It’s always drama and they’re the center of it.

(I’m joking of course, Merry Christmas)


Python is really one of the worst designed languages. It always baffles me that people recommend it to beginners.


15 years ago I tried it and got that path error. 1 year ago I tried again and still got the same error. I'm well aware that it's simple enough to fix. But I was baffled that the same error was still there.


I dunno there's a lot to pick from when it comes to "worst designed"!

It's definitely not well designed though.

And I agree about recommending it to beginners. Sure, a for-loop and a simple function look very friendly and easy, but good luck explaining to them why they can't import from a file in a different directory...


Except for all the others (that anyone uses)…


I’ve been here since the beginning.

I remember Usenet.

X11 was built for multi-user terminals a kin to today’s Microsoft VDI garbage.

There’s some good. A lot of bad. And some WTF in there.


Be the change you want to see.

Also happy winter solstice.


It was always an option, but "just" needed someone to dedicate all their time to it and pull in a group of long term maintainers. The real question is what will happen with the project in 2 years and will it be stable for day to day use.


The fact that you can "assume Vulkan exists" helps a lot (both hardware and software renderers exist). Do remember--Wayland predates Vulkan by almost a full decade.

In addition, you can offload OpenGL compatibility to Zink (again leaning into Vulkan).

> pull in a group of long term maintainers.

"Use new cool language" seems to be a prerequisite for this nowadays ...

At least Zig is very compatible with C.


You can't "assume Vulkan exists". Any pre-2016 hardware won't have proper hardware support for Vulkan and that's a lot of hardware still in use. Software renderers are unworthy of any serious consideration due to the perfomance drawbacks.

Just use OpenGL. I don't know when this trend to overcomplicate everything using Vulkan began, but I hate it.


Nvidia had a driver for Vulkan for Kepler which launched in 2012, AMD had support all the way back to GCN 1.0 (also 2012). Intel did have issues supporting it, I can't recall if it was for hardware reasons or just lack of desire for a driver.

Vulkan has substantial advantages for multi-threaded code, as well as exposing the underlying asynchronous nature of running code on the GPU. The kind of thing you want to be able to control with a desktop compositor where controlling vsync and present timing is very important.


There are Xorg and XLibre for pre-2016 hardware.


I don't really understand what is supposedly missing in Wayland for productivity users? At work I have been using gnome with the wayland backend for years at this point and I can't really figure out anything that's missing.


Accessibility is apparently a big problem with wayland. E.g., the most popular / ?only? app that supports hardware eye trackers on Linux does not work with wayland, and states that it likely never will as wayland does not provide what it needs to add support (it is also the most popular app for voice/noise control). Even basic things like screen readers are apparently still an issue with wayland. Without a strong accessibility story, systems running wayland would have been banned at my last employer (a college).

Personally, I have a 3200x2400 e-ink monitor that has a bezel that covers the outer few columns of pixels. I use a custom modeline to exclude those columns from use. And, a fractional scaling of .603x.5 on this now 3184x2400 monitor to get 1920x1200 effective resolution. Zero idea how to accomplish this with wayland-- I do not think it is possible, but if anyone knows a way, I am all ears.

I ran into, at least, ten issues without solutions/work-arounds (like the issue with my monitor) when I tried to switch this year, after getting a new laptop. Reverted to a functional, and productively familiar, setup with X.


I don't know about other DE, but at least with Plasma there is a "overscan" option to compensate for hidden borders.


Thanks for that.

Overscan is not supported in wlroots yet. Seems the issue is that handling overscan is display driver specific.

But, now I know the keyword to look for.


The xdg-desktop-portal stuff is still too immature. For example, my friend wanted my help after upgrading his Pop_OS to 24.04, and 24.04 replaced GNOME with COSMIC. COSMI had no RemoteDesktop portal (and still doesn't have it), so we couldn't use RustDesk like we always did without him installing a GNOME session just for that.

I've been an i3 user for almost two decades, but eventually switched to Sway - to this day there's no InputCapture portal, so I can't use Synergy with Sway, forcing me to switch to i3 while I'm working.

It's been over 10 years of things like that. There's always SOMETHING missing.


Screenshots are just completely broken. People always tell me to use other apps like flameshot but IME it just doesn't work and I don't want to have to mess around so much to take screenshots.

I'm still using Wayland because it's what came with my distro (endeavour OS, gnome), but it's really strange how it came broken out of the box.


I'm curious what OS you are running that has broken screen shots on wayland because that hasn't been my experience on Fedora.


It's right there in my comment


Yeah, my bad sorry.


Headless remote desktop, at least for KDE, is very much not possible today as far as I can tell. It's the last thing I miss from Xorg.


FWIW, like everything else in Wayland, it's per-compositor. Here's a working headless sway in a container:

https://gitlab.com/yjftsjthsd-g/docker_sway-vnc

(This is not a defense of Wayland, just trying to share useful information)


Hmm, you mention in the README that it only works in a privileged container. This of course negates the security benefits Wayland supposedly has over X11, so it doesn't seem ideal.


It really doesn't. The security benefits of Wayland are about isolating applications from each other, which this still has.

Also that's only really relevant to this running in a container. My point was that you can have headless Wayland.


>what is supposedly missing in Wayland

My desktop is a bit long in the tooth (22.04), but I've long given up on trying to screen shot or screen share from Wayland. I have my Macbook sitting next to it and use it for those things, where it works basically flawlessly.

Kind of waiting for 26.04 to upgrade at this point, but I'm not really expecting any of this to be better yet.

edit: If I had it to do over again, I wouldn't have gone Wayland at 22.04.


I'm running fedora and have been screenshoting and screen sharing (with the teams PWA) just fine. So might be time to get something newer.


What keeps you from going to Ubuntu 24.04? I have been screen sharing and screen shotting on Wayland (Gnome and KDE) without problem.


I am on KDE never had any problems taking screenshots.


Autoclickers and screen macros on Wayland are all janky


> Wayland is still quite a way behind Windows and macOS in terms of what productivity users need

What's missing?


Window positioning? You cannot position the window, you cannot send a hint, nothing? So my pop-up with GTK4 will randomly be placed somewhere, anywhere, without any control. OK, GTK4 went further and also removed popups without the parent, so you hack that with an invisible anchor window and then write platform-specific code for sane platforms that CAN, of course, move the window. And let's not talk about window icons that you have to put somewhere on the file system?


Have you considered if someone wants to make a compositor where each window is projected onto a facet of a hyper cube and must place windows in 4 dimensions? These are important use cases we should support, we should make cross platform software as difficult possible to develop for Linux by removing features that have been standard on desktop operating systems for decades.


I must correct you! Wayland has not and indeed cannot remove features because Wayland is a “protocol”. It is the compositors that are removing features.

This dilution of responsibility should make you feel much better.


It's not technically behind on window positioning. Rather, it was a deliberate choice not to support it. You can very reasonably object to that, but it is sorta a necessary measure to prevent clickjacking.


I'm amazed how both wayland and x11 miss the logical solution: let the user decide.

Any function that is a threat should be behind capabilities.

A program should be able to request moving its windows. The user should ultimately decide what should happen: allow or nah.


And common sense mitigations: if a new program I've never seen before drops an actionable control under my cursor, maybe just default to not immediately accepting the next input to it so I have a chance to see it.


And that, to me, is a sufficient reason not to consider Wayland as a serious option.


Did such an attack with crazy moving windows happen in the past?


It does on Android



Happened a lot in browsers.


I mean, you can create alternate APIs that would work for the pop-up use case: you could have a command to create a new window positioned relative to the current window’s coordinate space.

That limited capability still has a risk of denial attacks (just throwing up pop-ups that extend beyond the current window’s boundaries), but those can be mitigated in a number of ways (limit the new window’s boundaries to the current window’s, or just limit how many windows can be opened, etc.).


Ads in the start menu, forced screenshotting of all your activity, and AI integration in every aspect of the desktop experience.


lol


BS, windows and macos cant even do proper window managing for a start, and then it just goes downwards from there on.. You can perhaps install various weird third party things, but it does not come with it by default.

If you took people who absolutely never tried any computing, and gave them macos, windows, and for example Plasma, they would NOT consider windows or macos to be ready for the desktop. If you go 15 years back, even way more so.

even in the early 2000s, windows was so hilariously crappy that you had to make floppy disks to even get to install the thing. If PCs didnt come preloaded with windows, regular users would never ever be able to install it, versus the relative ease a typical linux distribution was to install. This is also one of the large reasons that when their windows slowed down due to being a piece of shit with 1000000 toolbars, people threw it out and bought a new, despite the fact that a reinstall would have solved it.


> You can perhaps install various weird third party things, but it does not come with it by default.

A Window Manager and Window Server don't come by default with Linux... It's always an install-time option on the major distros.

> even in the early 2000s, windows was so hilariously crappy that you had to make floppy disks to even get to install the thing.

Windows in the early 2000s installed just fine without a floppy directly from CD or PXE booting.


Windows in early 2000s didn't even detect your early 2000s SATA drive

Windows in early 2023 didn't even detect the network card it needed to download network card drivers. After changing mobos I needed to boot into linux to download network drivers for windows...

Windows in early 2025 still uses SCSI emulation to talk with NVMe and only now the server part got a proper driver

Windows in early 2025s still need virtio driver injection to boot properly as a VM without IDE emulation

"Drivers working out of the box" were never windows strong part


> Windows in early 2025 still uses SCSI emulation to talk with NVMe and only now the server part got a proper driver

You can enable this in Win 11 25H2. I have it enabled on my box. Doesn't seem to make that much of a difference, so it's more or less a moot point that it has been using SCSI emulation.

> Windows in early 2025s still need virtio driver injection to boot properly as a VM without IDE emulation

Interesting, in Hyper-V that's a non-issue.


Unless you needed a SATA driver not included in the installer because you wanted to avoid a legacy IDE emulation for your disks.


> Windows in the early 2000s installed just fine without a floppy directly from CD or PXE booting.

when was it sata became the norm? im thinking circa 2001-ish, and what windows was latest here? im thinking windows xp. lets try remember, did windows xp include sata drivers on the installation medium?? oh wait, it didnt. There wasnt even ahci at the time, and windows xp didnt include a single sata driver for any of the chipsets at the time

> A Window Manager and Window Server don't come by default with Linux... It's always an install-time option on the major distros.

desktop distributions generally come with a desktop environment default selected, or prompt you to choose between a few. one feature that has been there since more or less forever is alt + left/rightclick mouse to move/resize windows, which is significantly better than finding the title bar or corners like. for an operating system called "windows" its pretty hilarious it has the worst window management of them all, dont you think?


The first iteration of SATA was announced in 2000 and released in 2003.

> desktop distributions generally come with a desktop environment default selected

You missed the point. "Linux", the kernel, does not come with a WS/WM.


> If you took people who absolutely never tried any computing, and gave them macos, windows, and for example Plasma, they would NOT consider windows or macos to be ready for the desktop.

There's some truth to this. I've been installing fresh Windows 11s on family computers this holiday season, and good lord is it difficult to use.

The number of tweaks I had to configure to prevent actively hostile programs from ravaging disk read/writes (HDD pain), freezing and crashing, or invasive popups was absurd.


As someone who came from Windows, and has used Linux as my primary OS for 15 years, and MacOS here and there (cos work provided laptop), I can tell you that Linux was not ready for prime time 15 years ago. Today, I feel it is, but definitely not 15 years ago.


I use Linux on the desktop since 1997, and there was no point where Windows was even slightly more attractive.

I don't know what "prime time" means here.

edit: apart from, you know. Applications and drivers for random hardware.


With prime time I mean being comfortable enough to install it for a non-technical user. Even during Ubuntu's Unity days it didn't feel like I could install it on a computer for my parents or siblings for them to use as a daily driver.


My parents did fine with Linux. My mom still does; it's certainly less maintenance effort from me than Windows would require.

It was fine for non-technical users since at least early GNOME 2, if you're ready to help them set up and maintain. Semi-technical users (Windows power users, gamers, &c — people who like to install and configure things, but fear the deep dark abyss of the terminal) were and remain more problematic.

Unity days were the nadir of linux desktop ux — it was when Gnome 2 was gone, and 3 not yet there. Still better than contemporaneous Windows 8, though.


I can bet there’s no OS that are easy to install for a non-technical user. And that start from booting the installation media. Give someone a OS with their software already installed and they will use whatever OS that is.

People are always task-oriented, not tool oriented unless they’re nerds.


I had Kubuntu installed on my grandfather's computer for a year. I ended up replacing it for Windows because my aunt likes to install stuff on it. But my grandfather was happy with it. He only needed a working web browser and a program to use the TV tunner.


15 years back people were given Windows macOS and Linux and people voted which OS were ready for the Desktop and which were not. The only BS is your inflammatory contribution to this topic.


Nope, Macs were expensive stuff games did not run on, and linux was just not pushed by near anyone.

It was not a war "which desktop is easier to use", it was "which system can run stuff I need". And if "the need" was "video games and office stuff", your only choice was windows.


The average user only cares what they can run on the desktop. Linux did not have as much choice back then.


they were not, they purchased what was in the stores, which was only windows. all the way from first windows to windows xp it was the biggest pile of shit imaginable. the average user wouldnt even have half a chance of installing it, and certainly couldnt use it with any kind of reasonableness, it was a giant mess, it was just the mess people were used to. Most people would throw out their computer and buy a new when windows became slow, because, of course it gradually becomes slower, makes perfect sense, no?

KDE from 15 years back was HUGELY better than windows at the time, and frankly, also windows now


I can’t tell if this is satire.


[flagged]


Windows is reasonably OK, but MacOS' window management has always been really terrible.

Just think through the many different iterations over the years of what the green button on the deco does, which still isn't working consistently, same as double-clicking the title bar. Not to mention that whatever the Maximize-alike is that you can set title bar double click too (the options being Zoom and Fill, buried in settings somewhere) is different from dragging the title bar against the top of the screen and chosing single tile. Which is different from Control-Clicking the green button. Maybe. It depends on the app.

What a mess.

Both of them miss (without add-ons) convenience niche features I cherish, such as the ability to pin arbitrary windows on-top, but at least the basics in Windows work alright and moreover predictably and reliabily. Window management in MacOS just feels neglected and broken.

There may be many other ways in which MacOS shines as a desktop OS, and certainly in terms of display server tech it has innovated by going compositing first, but the window manager is bizarrely bad.


> Windows is reasonably OK,

Doesn't windows conflate window and process? That should kick it to the bottom of the bin by default.

> There may be many other ways in which MacOS shines as a desktop OS

May I suggest examining why your keyboard has a "home" key


There is at least one area where both macos and windows suck - handling window focus. MacOS is regularly having trouble with tracking focus across multiple monitors and multi-window apps, making it unusable with keyboard only. And Windows just loves to steal focus in the most inappropriate moments.


> making it unusable with keyboard only

oh no


"Oh no" is what you'd say after getting yourself some nice RSI and discovering that your hands hurt due to mouse or trackpad usage.


>> windows and macos cant even do proper window managing for a start

> Well they certainly manage them better than x11 and wayland.

X11 doesn't manage Windows. You'd know this if you used it, and if you've used it, you'd know why some consider the window management on Windows and MacOS very primitive.


> X11 doesn't manage Windows. You'd know this if you used it, and if you've used it, you'd know why some consider the window management on Windows and MacOS very primitive.

Sure. Windows and macos are also fallible. But there has never been a project that competes with these two brands that can boast a similar commitment to stability and usability.

Also obviously fuck windows


I don't use a Mac, but have you ever used Windows?

I mean, maybe you have, but if you are not fussy then at worst MacOS is quirky and Windows and Linux are identical and merely have different icons.

If you pay a little bit of attention you will notice that on linux things seem more flexible and intuitive.

If you are very finnicky, there is nothing that comes close to X11 window managers when it comes to window management flexibility, innovation and power.


Windows allows you to launch applications from a menu or via search. You can switch between windows with a mouse or keyboard shortcuts. Windows can either be floating, arranged in pseudo-tiled layers, or full screen. KDE can pretty much do the same under Wayland. Ditto for Gnome under Wayland, albeit to a lesser degree. That covers the bases for most people.

X11 window managers were a mixed bag. While there were a few standouts, most of the variation was in the degree to which they could be configured and how they were configured. There may be fewer compositors for Wayland because of the difficulty in developing them, but the ones that do exist do standout.


> I don't use a Mac, but have you ever used Windows?

I have

> I mean, maybe you have, but if you are not fussy then at worst MacOS is quirky and Windows and Linux are identical and merely have different icons.

Neither have keybindings that make any sense. The other failures are secondary

> If you pay a little bit of attention you will notice that on linux things seem more flexible and intuitive.

Only for windows refugees that have never used Mac OSX

> If you are very finnicky, there is nothing that comes close to X11 window managers when it comes to window management flexibility, innovation and power.

Unless you want to copy and paste, or have consistent key bindings cross applications, or take screenshots. Sure


> Neither have keybindings that make any sense.

I can agree on Windows, but there is no such thing as "keybindings that don't make sense" on a proper Linux WM given that you can literally make up any keybindings you want. I mean this strictly from a window management perspective, yes applications running in those windows have often got their own idea of what good UX is, and this clashes. That's just a trade-off of Linux and to a lesser extent Windows not being complete walled gardens.

> that have never used Mac OSX

I have _used_ Mac OSX. It was and continues to be a confusing experience every time. I'm not saying that this would be the case if I bothered to learn it, but in all the times I have used it, I have failed to see any feature which would make me want to switch to it over i3 or which I feel like is missing in i3. Really it doesn't seem like there is any way of making it act remotely close to i3. Tiling as an option on top of whatever Mac OSX has is just as appealing to me as tiling on top of what Windows has.

> Unless you want to copy and paste, or have consistent key bindings cross applications, or take screenshots. Sure

I've never had copy and paste fail on Linux. The only issues I've had is with more modern applications not implementing the selection properly which is a feature you don't have on windows in the first place. No idea about Macs.

Screenshots have always and will continue to work (the way I want them to) because I can, as mentioned, bind any key to any action.


> and Windows and Linux are identical and merely have different icons

At least on this we can agree, but windows never had to reboot the window server in my experience


I've definitely experienced parts of the windows UI crash. explorer.exe isnt just a file browser, half of the UI runs on top of it.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: