If anyone wants to give an ELI5 or a link to a video that ELI5 I’d be incredibly thankful

I swear that all the stuff I find is like super in depth technical stuff that just loses me in no time flat

You are viewing a single thread.
View all comments
208 points

Programs running graphically (Firefox, your file browser, etc.) need a way to tell the system “draw these pixels here”. That’s what the display server does; it takes all these applications, works out where their windows are and manages that pixel data.

XOrg has historically been the display server in common use, but it’s very old and very cobbled together. It generally struggles with “modern” things that must people expect today. Multimonitor setups, vsync, hdr and all that. They work, but support is hacked together and brittle.

Wayland is a replacement for XOrg that was designed from scratch to fix a lot of these issues. But it’s been an uphill battle because XOrg is the final boss of legacy codebases.

tl;dr They’re both software that manages drawing pixels from applications to the display.

permalink
report
reply
69 points

XOrg is the final boss of legacy codebases.

Pretty sure the IRS still holds that title.

permalink
report
parent
reply
50 points

The TLDR was really helpful NGL

So it’s software that handles software wanting to display things on the screen. Because having each piece of software do it itself would be not only chaos but a massive security concern. And it’s a big deal because it fixes (by replacing) the old software with something that’s easier to work with than the old ways of doing things (due to all new code that’s not spaghetti that’s hacked together over decades).

Am I close?

permalink
report
parent
reply
37 points

Because having each piece of software do it itself would be not only chaos but a massive security concern.

Not really, the main point is that (most) apps don’t know where they are on the screen, whether they’re minimized, on the active workspace, … and they don’t care either. That’s the responsibility of the window manager.

The app tells the display server “I need a window to display these pixels” and that’s it. And the window manager, well, manages these windows.

On the topic of security, X11 doesn’t handle security at all, that’s one of the main issues. So any graphical app can read the other windows’ pixels, grab everything you type, everything you copy, … OTOH Wayland isolates apps so they can’t do that by default. Apps that really need to (screenshot apps, …) can use “portals” to ask for these permissions.

permalink
report
parent
reply
16 points

That’s really interesting and thank you

I think I’m beginning to get it now, and Wayland does sound better than X11 at least

permalink
report
parent
reply
5 points

Does it also handle key and mouse inputs to make sure they’re interpretted by the right programme in the right context?

permalink
report
parent
reply
7 points
*

But it’s been an uphill battle because XOrg is the final boss of legacy codebases.

Also because Wayland forces every compositor to be an unmodifiable monolith instead of following the UNIX philosophy. For example I’m currently running i3 inside of Xfce because the de, wm, compositor, and every other part are doing their own thing and can be replaced. With Wayland I’d need to fork the compositor and spend a ridiculous amount of time on something that’s trivial in xorg.

And let’s not forget the garbage pile of tools that got abandoned a week after release because Wayland introduces breaking changes on a regular basis. You want unified shortcuts across multiple compositors like with sxhkd? Tough luck, the only tool was abandoned after the first version and doesn’t work anymore. On the other side you’ve got 15 rofi alternatives you need to dig through to find out which ones are still maintained and might work on your device.

On top of that Nvidia GPUs have so many issues, and while that’s not solvable by Wayland, it’s still a major issue that still hasn’t been fixed after 15 years, but might maybe soon™.

Finally, the security improvements have gave me nothing but headaches whenever I tried using Wayland. No matter the distro or compositor, screen sharing and recording never worked for me. Give permissions, share whole screen or just window, it’s either black or the program is not showing I’m trying to share ate all.

You can’t blame it all on xorg when Wayland is still simply far worse for a large part of the community.

permalink
report
parent
reply
1 point

The Wayland protocol board can never agree on anything. It takes them years to decide to consider adding something.

Also Wayland is just a protocol at the end of the day so implementation is up to the software developers. I also think that the Unix philosophy holds back software that could be good. You shouldn’t prioritize it over good battery life and low overhead.

permalink
report
parent
reply
2 points

I also think that the Unix philosophy holds back software that could be good.

IMO the UNIX philosophy is the reason why Linux survived. Imagine if every distro had a single DE, or you had issues with pulseaudio and couldn’t replace it with pipewire.

You shouldn’t prioritize it over good battery life and low overhead.

And why would separating functionality into different tools cause you to have a worse battery life? You don’t get to have tlp on other OS because it’s all integrated

permalink
report
parent
reply
6 points
*

It seems an opportunity to ask my stupid questions.

Q1. If I am going to build my minimum linux installation without a GUI, does this require a display manager?

Q2. is there other way to interact with my machine other than tty

permalink
report
parent
reply
10 points
*

Q1: No, it does not require X. But some software even if not graphical, requires X libs for whatever reason (e.g. Using Qt)

Edit: to answer Q2: I don’t think there is technically a way to interact with the system without a TTY but thats technicalities. Your more practical answer is to use SSH to log in and interact. This is how most IoT things work which run Linux and have no display capability at all.

permalink
report
parent
reply
1 point
*

thanks, but is there way to address some limitation (e.g. only one came to my mind scroll back.)

permalink
report
parent
reply
4 points

How do I check which one my OS uses?

permalink
report
parent
reply
24 points

It’s not os based, usually you can switch between the 2 on your login screen. To check if you are in a wayland session, type this in a terminal:

echo $XDG_SESSION_TYPE

The answer should be wayland or x11

permalink
report
parent
reply
2 points

Huh, it’s x11… Isn’t Wayland also better for gaming? I would want to switch.

permalink
report
parent
reply
1 point
*

Or empty if neither (shell access), but thats obvious hehe

permalink
report
parent
reply
3 points

Wayland isn’t software as it is just a set of protocols. The desktops and window managers take the place of X on Wayland. That’s why it has better performance.

permalink
report
parent
reply
1 point
*
Deleted by creator
permalink
report
parent
reply
45 points
*

Initial release of xorg was 2004

Yeah, but XOrg was forked from XFree86.

permalink
report
parent
reply
35 points
*

And the X11 Protocol was released in 1987. We’re not replacing Xorg specifically as much as we are replacing X11.

permalink
report
parent
reply
14 points

Good lord, it’s been 4 lustrum already? My, how the olympiads fly.

permalink
report
parent
reply
15 points

Xorg is from 2004, but it is an implementation of X11/X Windows which dates as far back as 1984. Wayland replaces both of that.

permalink
report
parent
reply
2 points
*

That hill has a name. GNOME. Wayland’s governance on the whole is a fucking disaster (alternatively, the best sitcom you’ll ever see), but GNOME is a particularly malignant growth on the project’s taint, with completely baseless NACKs that have delayed some protocols by months, and missing/incomplete features in Mutter.

permalink
report
parent
reply

linuxmemes

!linuxmemes@lemmy.world

Create post

Hint: :q!


Sister communities:

Community rules (click to expand)

1. Follow the site-wide rules
2. Be civil
  • Understand the difference between a joke and an insult.
  • Do not harrass or attack members of the community for any reason.
  • Leave remarks of “peasantry” to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
  • Bigotry will not be tolerated.
  • These rules are somewhat loosened when the subject is a public figure. Still, do not attack their person or incite harrassment.
3. Post Linux-related content
  • Including Unix and BSD.
  • Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of sudo in Windows.
  • No porn. Even if you watch it on a Linux machine.
4. No recent reposts
  • Everybody uses Arch btw, can’t quit Vim, and wants to interject for a moment. You can stop now.

Please report posts and comments that break these rules!

Community stats

  • 6.8K

    Monthly active users

  • 1.3K

    Posts

  • 71K

    Comments