• Marmaduke@lemmy.world
    link
    fedilink
    arrow-up
    24
    ·
    7 months ago

    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.

      • LinusSexTips@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        7 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.

    • penquin@lemm.ee
      link
      fedilink
      arrow-up
      2
      arrow-down
      1
      ·
      7 months ago

      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?

      • azvasKvklenko@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 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