• 0 Posts
  • 3 Comments
Joined 3 months ago
cake
Cake day: April 6th, 2024

help-circle

  • I’ll try to explain:

    In the past we only had text terminals without a graphical interface ~1990 (sh / bash / tty). so the display server (Xorg / formaly known as X11) was born. it’s a piece of software that allows programs to not only print text to screen but to draw complex geometrical shapes. This allowed for gui programs that use frameworks like qt or gtk or motif… to draw buttons and shit using Xorg.

    For having mutliple “windows” / “programs” running they invented a window manager, that drew a border around the windows with some min / max /close buttons and the modern gui was good to go. btw. the next step are desktop environments like kde or gnome but that would be too much for this post.

    Back to display server (Xorg) and window manager (kwin, mutter, metacity, dwm, awesome, i3…): the design of xorg is super old and has many shortcomings like hdr, variable refreshrate or security: every window can read the contents of or produce input for other windows which is a nightmare for todays security standards.

    So wayland was invented to use state of the art concepts and design. Here comes the big problem: State of the art concepts required wayland to not be a display manager like Xorg. wayland is more like a protocol that defines how to draw windows, resize and close them or how they are allowed to talk to each other. Since wayland is only a protocol+ the window manager now needs to do the heavy lifting of coordinating this protocol, drawing and stuff like that, which in turn results in way less window managers that support wayland because they are complex as hell.

    Since modern software needs to support a heck of a lot of different ways for applications to interact with each other rewriting these functionality for wayland needs time. thats the reason desktop sharing/recording or muting your mic with a keyboard shortcut when the webex window was not in focus wasn’t possible at first. new solutiones needed to be developed for that (pipewire for example). Many programs would run in an xorg window that was implemented as a wayland window (xwayland) which made transitioning to wayland much easier but introduced new problems.

    At the moment we are in a transitional phase. many programs already work without problems, but many software still require features wayland doesn’t have and might never implement. Everyone needing that software is hating on wayland. everyone needing variable refreshrate, fractional scaling or security prefers to use wayland. And the fighting begins.

    Disclaimer: There might be errors, simplifications or misunderstandings on my side but thats the way i understood if. Feel free to correct any mistakes on my part.


  • TLDR; Windows crap, I love Linux

    Long read ahead, this resulted in a pretty big rant, but I feel better now:

    Windows has way more silly places. From registry to ini files, assemblies, common files, services, drivers…it’s everywhere.

    Do you know how an MSI packages for software installation work? Let me tell you, it’s a mess. An utter and complete garbage format. A database with hundreds of buggy functions, empty lines and internal inconsistencies. There wasn’t even a way to create them comfortably without paying for expensive software back then. Yea, im looking at you, flexera admin studio.

    I automated hundreds of custom software installations on 2000 clients from windows 2000 to XP to Windows 7 to Windows 10… for >10 years, so I know what I’m talking about.

    On Linux 99% of apps save global settings in /etc and usersettings in /home/user/.* or the newer way XDG_CONFIG_HOME.

    But since all is a file on Linux every config can simply be copied to restore or backup settings. Almost every tool has man pages. How hard is it to run man tool and read the specifics if you need help? Windows? Sometimes you got some help files in a strange format (.hlp?). Other then that, start the browser and ask Google.

    Linux package managing since 2003 has been better then it ever has been on Windows to this day.

    One command to update all components? Packages will be installed and removed automatically to fulfill the dependencies of the software you want to install? Every package is build by a trusty maintainer of the OS instead of some overworked windows engineer that needs to create profit.

    Do you know how Deb files work? They are simpel zips of the folder structure and files the software consists of. A textfile with metadata like maintainer, name, version and, very important: dependencies. Last but not least there are a two or three files that can contain scripts that need to be executed prior or past installation. That’s it. And you can do everything with it.

    On Windows you often are forced to find the right combination of weird parameters to ensure a program starts. commandlines like “c:\windows\powershell.exe -e cmd /c program name”, happen way more often then you would expect.

    On Linux I get: Global package manager and updates with trusted packages, no telemetry, more safety, no ads, better privacy…and many more.

    My personal opinion: I don’t understand how people can even question the superiority of Linux for personal devices.