Diseased Open Source Software Community - it's about ethics in Code of Conducts

  • 🐕 I am attempting to get the site runnning as fast as possible. If you are experiencing slow page load times, please report it.
This debate about XLibre has made me realize that I don't really understand much about X11 except that it's the first thing that needs to start to make a Linux/BSD box do something other than show a CLI. But where the border is between what it does versus what a DE or higher-level application handles, I have no idea. And frankly, I'm starting to wonder if the same doesn't go for most of the people who I see arguing about it online at this point. It doesn't help that almost of my usage of Unixy systems is in the context of managing servers anyway so outside of horsing around with a Pi board or old PC maybe once a year I'm never installing or using a GUI anyway.

What exactly does X11 do, and how does Wayland (supposedly) do it better? Explain like I'm an overpaid jeet who uses Cursor and VSCode to vibe code JavaScript all day.
 
What exactly does X11 do, and how does Wayland (supposedly) do it better? Explain like I'm an overpaid jeet who uses Cursor and VSCode to vibe code JavaScript all day.
X11 (or rather XWindows) is responsible for providing the actual windowing system that encapsulates each application you launch through your desktop environment. It does not specify what gadgets should be present on each window, or how they should be displayed, or with what fonts, etc. Those decisions get deferred to your desktop environment and whatever toolkit it chooses to use (i.e. GTK for Gnome, or Qt for KDE). However, XWindows goes even further than that by providing a wire protocol that allows windowed applications to be accessed remotely (i.e. effectively what RemoteDesktop does, except instead of just scraping the screen it's sending rendering commands so that you can run it over potato-quality networking)... which is pretty handy, but Wayland-fags would rather ditch in search of illusory performance gains that they can't ever demonstrate.
 
X takes the bits from the application and puts them in a window on the screen,
You can run X alone and get a blank screen. Then you can run an X app like chrome and it will display but without a Window Manager you can't move or resize the window. If you're doing an embedded application often you can stop here with one full screen window that shows your app like an airplane engine monitor, car entertainment or a digital signage system.

When you run a window manager, it draws the lines and handles around each window so you can move them. They also often have minimal menu functions, often by clicking on the background(called the root window). If you're a luddite, like me, you can stop here and have a fully functional system.

A desktop environment bundles a window manager with various other apps that draw the various docks, panels, etc depending on what you want, and offer other configuration and customization applications.

I have no idea what wayland does because I simply don't care. Something something my lawn, onion on my belt.
 
Apart from being a display server, Wayland is not intended to do the same things as X11 because the Wayland developers believe it is too complex and fundamentally insecure. Because of this, it is incompatible with X apps and requires a lot of effort to port apps to wayland, or even to make them in the first place, which is why there are only two des on wayland and there's very few window managers (compared to the thousands on X11). Also wayland is actually just a "standard", which has no official implementation and the various implementations are incompatible (most notably GNOME and KDEs implementations).
 
What exactly does X11 do, and how does Wayland (supposedly) do it better?
X11 and Wayland are both protocols that applications use to tell the display server what to put on the screen, and the display server uses to pass input to applications. The display server is responsible for actually putting things on the screen, as well as talking to mouse/keyboard/touch input sources and such. X11 only has one implementation people actually use, known as XOrg (potentially XLibre in the future). There are a lot of Wayland servers and they are implemented mostly independent of eachother. In both X11 and Wayland, clients connect to a unix socket and send/receive messages to/from the display server.

Wayland is a purely asynchronous event stream that operates on defined objects each side exposes to the other. The type of each message and object is determined by a set of Wayland Protocols acknowledged by both the client and server. This means the type of data that can be transmitted, the time it is transmitted, etc, is very rigidly defined (which is good when you have a lot of implementations). Most protocols that exist can be browsed here: https://wayland.app/protocols/.

I deal with X11 far less, but as I understand it, X11 operates on primitives called Windows and Atoms. The X server exposes all X11 Windows to each client, and for each Window a globally modifiable map of Atoms (basically just pieces of text that can be compared faster) to arbitrary data. X11 clients communicate by setting values in those maps, which other clients can detect and act on. There is likely an additional event passing mechanism, but I haven't personally touched it and cant explain how it works.

The main differences people actually care about are:
  • X11 was originally designed to operate over networks and still can to some degree, while Wayland is designed to operate on the same machine. As a result, Wayland can communicate some things better than X11 on a single machine, but cannot run over a network.
  • The rigidness of Wayland's protocols means clients and servers cannot communicate anything except what is specified there. This is fine in theory (just add a protocol when you need it) but in practice it has been a massive problem because Redhat/Gnome had the ability to veto the standardization of new protocols and the main standards repository bikesheds everything for 5 years (also largely Redhat). This is what made Wayland completely unusable on a desktop for a long time. Redhat also feels the need to push the usage of its beloved Dbus and XDG Portals, and blocks proper standards for some things that should be in the display server being in the display server. (e.g. screen capture)
  • X11 works opposite of the above to the point where every client can see the content of others, fake input etc (potentially solved with XNamespace in XLibre). The other problem is that many of the standards are not specified very well, which leads to a lot of clients hacking around eachother in ways they should never have to.
  • Under X11, the Display Server, Compositor, and Window Manager were three separate pieces. Under Wayland the Display Server and Compositor are always one, and the Window Manager usually is as well. This has advantages and disadvantages, but the most important one is the Window Manager, which controls how windows are positioned and sized.
  • Wayland was designed with synchronization in mind, which means things can be updated atomically in a way that they couldn't under X. This is mostly unrelated to screen tearing, but makes things like window resize work better.
But the most important differences are:
  • X11 is the old thing. This is very good/bad depending who you ask.
  • Wayland is the new thing. This is very good/bad depending who you ask.
 
Last edited:
However, XWindows goes even further than that by providing a wire protocol that allows windowed applications to be accessed remotely (i.e. effectively what RemoteDesktop does, except instead of just scraping the screen it's sending rendering commands so that you can run it over potato-quality networking)...
Sure, let's omit that modern X forwarding has to send uncompressed bitmaps because everything gets rendered by the GPU now.
 
Anyone have any experience with XY Tech / 51nb boards? Having an X200 with modern specs seems too good to be true (+ they come with a disabled IME through some hardware modding to pull it into "manufacturing mode"). The old page seems defunct as of 2022, though it looks like they've moved shop to a forum of the same name. Any of you lads happen to speak Mandarin?
Hi,
They're part of the techie enthusiast community. It's probably just a serrial/IMPI flash of the MB's ME controller since versions newer than Nethalem (1st gen Core so like 2008) you can't remove the ME permanently, the CPU will not boot otherwise. You can only remove the wifi blobs and hope the CIA didn't build backdoors in the boot code.
Here's their non-forum (blog like) with firmware updates.

They've even got the old wall of shame lmao like something awful and co. It's just called the "little black room" instead. lmao.webp
Ban reasons are the far right: Top two:
Zhaolinchao, permamuted, reason:Nonstop ads,
Zhanzixuan, permabanned, reason: (fuck) off.

Contact info (they speak english I betcha) Remember to add +86 if you aren't in China for phone.
  • Advertisers contact: QQ 755851098
  • General email: service@51nb.com
  • Phone: 0755-83348643
  • Office location: 深圳市福田区深南中路2050号华南电力大厦801 (Shenan middle road number 2050, China South "Huanan" Eletrical Skyscraper room 801, Futian, Shenzhen, PRC)
Their net license is outdated though...


Better off slapping a Orangepi Rv2 into the frame of a laptop... RISC-V too! Just home SMIC didn't put any backdoors in... Don't expect it to stream video well though. 231 RMB = ~32 USD (I think it's like 60 USD due to tariffs)
opi.webp
Or better yet just slap a kvm module on your PC (not responsible for when you get RCE'd)
O1CN010liPfI23vhOZ5wahe_!!2200606237318.jpg_q95.jpg_.webp
(You can see why I'm poor in China now... Too many DIY fun eletronic shit to play around with) (:_(
 
Sure, let's omit that modern X forwarding has to send uncompressed bitmaps because everything gets rendered by the GPU now.
GLX exists. The reason toolkits send uncompressed bitmaps is mostly down to client-side font rendering (which was introduced primarily for anti-aliased fonts) and them being made by the same faggots who now argue that network transparency is unnecessary.
 
But the most important differences are:
  • X11 is the old thing. This is very good/bad depending who you ask.
  • Wayland is the new thing. This is very good/bad depending who you ask.
I'd say the biggest difference is that X11 was designed by engineers and Wayland was designed by marketing. X11 is a fully featured solution if a little ugly in some corners, Wayland is half thought out and relies on others filling in the gaps of it's abilities.
 
I am surprised. I thought Vaxry was a bit more based. Maybe it's a mod issue, but still I don't know why did he choose them?
Being cancelled and smeared as a Nazi (by a pedophile) does not necessarily mean he is based. Cancellations of this type happen when mentally ill people see Nazis that don't exist.
 
Dafuk, did you just make that up whole cloth? WebKit was forked from a KDE project
What are you talking about? Everyone knows that GNOME devs had done a tour of Xerox's PARC and released the first open source desktop environment ever, which MacOS and Windows were crude ripoffs of.

Later, GNOME devs partnered with CERN and released "Epiphany", the first web browser.

It's sad how people won't give GNOME the credit they deserve for inventing so much of the modern desktop environment.
 
Back