this post was submitted on 15 May 2024
172 points (98.9% liked)

Linux

48220 readers
654 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
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 24 points 6 months ago (2 children)

A compositor is a program responsible for displaying program windows and things like the desktop on your PC. On Linux, the compositor is just a program that starts when the system starts. There are multiple desktop environments available, like Plasma or Gnome, each comes with their own compositor, you can choose which you want to use.

Wayland is a protocol that the programs use to communicate with the compositor. Everyone decided to use Wayland, because if each compositor had their own protocol it would be silly, eg some programs would work only on Plasma or Gnome.

It's a replacement for a much older X11, which could no longer keep up with requirements of modern apps.

You never hear anything about compositors on Windows or Mac because there's only one available, you can't choose.

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

Actually, Windows does allow you to use an alternate “compositor”— a feature which is used quite frequently in the industrial/embedded space. Windows calls them “custom shells”. The default is Explorer, but it can be set to any executable.

https://learn.microsoft.com/en-us/windows/iot/iot-enterprise/customize/shell-launcher

[–] [email protected] 1 points 6 months ago

Oh man, brings me back to blackbox / xoblite on my old XP machine.

I remember using notepad to change the config files, no auto formatting or error checking.

Had no idea what I wanted out of it but I loved the minimal aesthetic.

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

Thank you so much. Is there a reason why we have so many issues with scaling and font rendering and the other two OSs don't (I'm not sure if they and they hide it, I don't know). I tried gnome on my pc and the font got very blurry when I set the scaling to 175% for my 27" 4k monitor, switched to x and fraction scaling just disappeared. Why don't the other two OSs have this issue?

[–] [email protected] 1 points 6 months ago

That’s a very long story, but in short - X11 was adopted as display system for Linux in 90’s at the very beginning because it was the only standard display protocol for UNIX systems at that time and it was natural consequence to take it along with the ability to port all the software that was made for it starting in 80s. The design of X started to quickly show its limitations and a replacement was considered. Wayland development was slow for a long time, because the priority was on usability of current graphics stack, which on X it was all in pretty bad shape even not so long ago. X is really not going anywhere with its feature while and only being in maintenance. Additionally, Wayland is very different and in some aspects, so it’s not possible to port things 1:1.

Initially Wayland only supported integer scaling (if you used fractional scale in such scenario, it would render next integer and downscale to your resolution, causing some font rendering imperfections), but new protocol was introduced last year after years of debates and different attempts. New compositors paired with new clients will now render mostly perfectly in fractional scales, but clients that don’t support that will still use previous method. There are also X apps running on Xwayland. Some compositors (like kwin) allow those clients to render natively scaled, some upscale from 100%, so the windows are blurry.

Other OS-es don’t have such problems, because:

  • they’re centrally controlled by just one entity with clear business strategy and unlimited budget
  • in monolithic systems where there’s just one UI and everything is tightly integrated, it’s much easier to innovate the software
  • closed source code don’t have to be perfect, they can hack it as much as they need as long as it’s doing well on end-users’ machine