Announcement

Collapse
No announcement yet.

Adam Jackson On The State Of The X.Org Server In 2020

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #41
    Well, I just hope X hangs in there until XFCE switches to something else. I recently finished giving Gnome and KDE another try, just in case I'm missing something, but the most polite thing I can same about them is - Yikes!, talk about way over engineering a desktop!. But I know most people like them, so I'll keep it at that and just say the wonderful thing about Linux is that there's something to fit everyone's taste.

    Comment


    • #42
      Originally posted by jntesteves View Post

      Won't happen because KDE is "abandonware"
      This is rediculous!

      ** Wayland <-> X - on topic **
      I am no programming expert (I might did a lot of programming as a scientist, though - mostly the former century) - so the X code base may be a problem ...
      But I am a Unix expert and no: no Wayland implementation (i.e. real code - not a protocol) is currently ready for professional use at all - not even on GNOME desktop.
      So putting the plug before the huge problems are solved is stupid. And yes, it is simple company tactics like MS or Apple.
      Implementing Wayland and using most of the fat and abandoned X stack is the future - really? Sorry, not at all.
      Similar to Apples macOS using Darwin: a microkernel with a fat BSD kernel in it with all rights - so no positive effect (many will doubt that there are any) from microkernel could be seen. And is this a problem - no. As no one knows the facts or is even interested in them.

      ** KDE (Qt) <-> GNOME GTK - off topic **
      To the point of this comment - XFCE is slower than KDE right now - on Intel Haswell as well as on AMD Ryzen 5 3600.
      This may be caused by the GTK toolkit - also used by GNOME which is much more fat.
      I have never seen an expert (Unix) to really select GNOME to be used as full DE - and even on RHEL people always shouted at it.
      For me KDE has become - to my surprise - the only current desktop to not forcing a workflow to USERS but trying to support the user with any workflow THEY feel comfortable with and is really performant and looks cute.
      This is what FREE software is for - enabling users without locking them in proprietary traps or force brain washing.
      With this original vision of the founder of GNU & FSF and the one responsible for GPL: the most liberating license from the USER perspective, KDE is more free SW than GNOME.
      It may hurt - but it is the truth.
      Currently KDE is really impressive - I still like some GNOME applications - don't get me wrong - but just by the more professional use cases I get more and more accustomed to KDE programs and may soon try the entire KDE SW stack - just to see how that feels. And it started with smaller programs like okular.

      So from my point of view GNOME is dead - bloat - `one direction' only ... which is of cause induced by my workflow (Windows users may feel more at home than me).
      BUT to say that KDE can be configured to suit very different workflows and GNOME can not (not possible at all, also not by tweaks - this makes GNOME similar to Windows, too) and this being a reality does speak aloud.
      It is ridiculous that CDE (used in the 1990ies and thereafter by many proprietary Unix vendors) was able to do things which are not possible with big, fat `current' DEs ...
      Well, I was just astonished to see in Fedora that vim was replaced - due to the `steep learning curve'. Yes, this is a typical feature of professional programs - the same for emacs, of cause. So currently the way is clear ... and it goes down. If the way to the masses is really connected with losing professional users (also clearly stated by Apple when abandoning their professional image SW) I am not content and think this is completely wrong. We should teach people to be able to cope with complex things - not brainwash people to be suited for stupid tools only capable for simple things.

      So no, KDE is absolutely sure not abandonware as it is progressing well ... and in a direction I am really wanting more changes to come - while other DEs and programs I hoped they stop changing things before it really got messed up totally (Mozilla - it's you) as they broke more and more professional features.
      I started to really look to KDE with the new computer - Kubuntu Bionic, Focal, Groovy and KDE neon (with Plasma 5.20.1 just now). I am really impressed.

      Currently I would still not bet on Wayland at all ... as I still don't see any of the promised advantages to materialize in ANY of its implementations in the next months ahead ...
      And if security is the concern I just smile and go away ... but maintainability may be a reason ... but to what extent is abandoned X to stay for the next RHEL releases ???
      And is this percentage really better off than the server - which at least seems to be quite stable ???

      So the user perspective is decisive - not a mere developer perspective ... and I think that there is really a lot to be learnt.
      And RedHat is still not a monopolist ... so it does not suit them well.
      I think IBM is really good at documentation - maybe RedHat can improve on that front and shed light on it.
      With the documentation one may get aware of things which have forgotten to be cleared ... common options no longer available ... transparency is important ...
      May have helped systemd, too.
      Forcing new technology over people which is no longer suitable for their professional work{flow} is not wise.

      Comment


      • #43
        Originally posted by JPFSanders View Post
        Similarly to the issue with the NVIDIA blob, (where most normies don't understand/know what is wrong with it from a Linux kernel perspective) most people doesn't understand what is the problem with Wayland.

        I will try to clarify it using language and books as a metaphor:

        English = Language
        1984 = A well known book written using the English language.

        Then X:

        X11 = Display Protocol (Language)
        X.org (xfree86) = Display server implementing the X11 protocol. (Book)

        Then Wayland:

        Wayland = Display Protocol
        Cagebreak = Compositor implementing wayland protocol
        Cardboard = Compositor implementing wayland protocol
        dwl = Compositor implementing wayland protocol
        river = Compositor implementing wayland protocol
        Sway = Compositor implementing wayland protocol
        Velox = Compositor implementing wayland protocol
        waymonad = Compositor implementing wayland protocol
        Enlightenment = Compositor implementing wayland protocol
        Greenfield = Compositor implementing wayland protocol
        Grefsen = Compositor implementing wayland protocol
        hikari = Compositor implementing wayland protocol
        KDE KWin = Compositor implementing wayland protocol
        Liri Shell = Compositor implementing wayland protocol
        labwc = Compositor implementing wayland protocol
        Mutter (Gnome) = Compositor implementing wayland protocol
        wayfire = Compositor implementing wayland protocol
        Weston = Compositor implementing wayland protocol
        wio = Compositor implementing wayland protocol
        Cage = Compositor implementing wayland protocol
        Maze Compositor = Compositor implementing wayland protocol
        Motorcar = Compositor implementing wayland protocol

        Some of those support display managers, some of those don't.

        Wayland depends on a buffer technology called GBM, all compositors support it.

        NVIDIA has other plans and came with its own buffer technology called EGLStreams

        All compositors support GBM.

        Only: KDE KWin, Mutter (gnome) and Weston support Nvidia's EGLStreams"

        When some functionality is missing in "Wayland" 90% of the time is something missing in Gnome or KDE or whatever compositor you happen to be using Wayland as a protocol is feature complete and doesn't impose any functionality constrains as it aims to be a general purpose display protocol as opposed to how X was conceived (IE: built-in fonts, or printer server)

        That means that for example screenshot applications or remote access are to some degree, compositor specific.

        This implies that if you want to stream using a Gnome streaming application you will have to be using the Gnome project's window manager. Or the KDE streaming application will require the KDE window manager.

        Wayland is a good design, and the community may well go with it because X11 is old and atrocious (it works though) and Wayland is a viable alternative.

        But call a spade a spade, it was IMHO a bad idea not to agree on common desktop things like remote access or permission management from the beginning, although as mentioned above it was done to keep the display free of non-display things.

        Sooner or later the practical outcome is that there is going to be a screenshot protocol and everything that implements Wayland is going to have to implement that protocol as well.

        The required negotiation for that to happen is taking/going to take years and delay Wayland adoption. If they'd designed that at the same time as an optional part of the Wayland protocol it would have saved time and confusion.

        Add NVIDIA's disdain for desktop Linux and you have the current situation.
        I agree with your sentiment however there is a minor correction, Wayland doesn't depend on GBM, its just a barebones protocol. The actual problem is that due to Linux being a monolothic kernel, in Linux's view of things every GPU driver should be using GBM (and hence a lot of Linux devs think this way) and so what has naturally happened is that by default all Desktops/Compositors used GBM.

        But yeah, the utter stupidity that Wayland did here was releasing a protocol as stable when there wasn't even proper implementation by the DE's (or at least the major ones). The Wayland protocol should have been marked as stable after all of the uses cases have been ironed out. Due to this mismanagement, we also now have this case where all of the compositors are duplicating graphics hardware/driver code where as ideally this should have been abstracted away (this is one of the few things that X11 did well). Its also created a perverse situation where there isn't a real standard reference implementation (technically there is Weston but no one uses it), in reality the reference implementation is Gnome/Mutter which then introduces a lot of implicit bias on design/features that get added into Wayland (at least with X11, since everyone was using it there was also shared responsibility from everyone).

        I mean as an analogy, imagine if bluez was just contained the bluetooth protocol but it didn't come with a way of abstracting over the hardware. Then every application would have to handle this themselves and because of this there is a lot of wasted effort in figuring out all of the corner/exception cases multiple times, this is the situation we have right now with Wayland.

        tl;dr wayland shouldn't have been released as stable until it handled all the entire required features (i.e. clipboard, screen casting) and it should also come with an abstraction for GPU drivers/hardware so that compositors don't have to worry about AMD/NVidia/Intel/GBM.

        Otherwise you just have the situation know where the transition period is giant 13 year old fuken mess (and thats even if you remove NVidia from the equation).
        Last edited by mdedetrich; 28 October 2020, 04:48 PM.

        Comment


        • #44
          Originally posted by JMB9 View Post
          This is rediculous!
          Not quoting your full post, while this answer is some thought I noticed me thinking: Your definition of professional and backwards oriented behaviour seems to be the same. I think you can't accept change to the better, you just dislike change for being a change.

          Comment


          • #45
            Originally posted by horizonbrave View Post
            RIP unix bearded veterans
            SteamVR is not working on Wayland. I expect it to take two years before SteamVR work with Wayland.

            So, have fun with your Wayland and grandpa pancake gaming

            Comment


            • #46
              Originally posted by moilami View Post

              SteamVR is not working on Wayland. I expect it to take two years before SteamVR work with Wayland.

              So, have fun with your Wayland and grandpa pancake gaming


              That not exactly true. SteamVR is Wayland compositor picky.and requires you to have AMD graphics because you need accelerated Xwayland. So the reason SteamVR does not work is not a Wayland protocol problem. Instead its particular compositor implementation and not having a jackass video card vendor.

              Comment


              • #47
                Originally posted by Hibbelharry View Post

                Not quoting your full post, while this answer is some thought I noticed me thinking: Your definition of professional and backwards oriented behavior seems to be the same. I think you can't accept change to the better, you just dislike change for being a change.
                The interesting point about your thought is you seem to assume that the changes in discussion are `to the better' for me ... why?
                As I started in 1987 with DOS using 3.5" diskettes and a 20 MB HD with 13" CRT at 640x480 pix with MCGA card I have seen a lot of changes.
                I like changes which improve my way of working - so I am using a 31.5" 4k screen and longing for 8k and can use it right when screens will become available.
                As given I just switched DEs - from something tiny to something big.

                So I don't think that if you looked at the arguments you could really think I have problems with changes.
                But seems to have the same mind share "Wayland is good" - similar to "Windows is good" ... or "Smartphones are good".
                And yes, I have more than doubts with these statements - which are not common sense (but may be shared by several people) - do you really think any of these statement is true ???
                Again, I am for choices - it is OK when several DEs will switch to Wayland - I am happy for those users who like it a lot - just aborting development of X before Wayland is accepted by users (let alone all those DEs out there) - or saying that a really well developed DE is abandoned as it is not about to switch to Wayland yet is not what I would underline.
                Where is your problem with my argumentation - or is it just that you dislike my point of view?

                Then you have full right to express yours ... but stating I have trouble with a changing environments - this is so odd ... as I adapted my workflow in a way I did not since totally switching to Linux about 1994/95. But yes, there are changes which are not sane - or not sane at a too early stage in development.
                Or changes which brings with them a lack of control ...

                But maybe you just calm down and reflect upon different opinions ... and realize that professionals look longer and need more proof before switching technologies.
                I am not against Wayland - maybe sometime in future I am happy with it. But just now ... it is OK to use it with DEs thinking they are ripe for it ... but not to abandon critical SW which is just needed for most of the Unix systems out there ...
                Wayland has currently no visible advantage for users ... at least I have not heard of anything Wayland implementations can do which X can not.
                Similar to Pulse Audio - when it was introduced sound broke in many ways - and nothing was audible to say: yes, a real advantage. So what was for the better back then?
                It was a total mess for a quite long time ... and I am not keen to see these cutting edge effects with a core component. I call this behavior professional.

                Comment


                • #48
                  Originally posted by karolherbst View Post

                  I am using KDE with wayland and most of the things just work. There are some random issues here and there, but those need to be reported and developers need to work on them.
                  Yeah, I know and it's great. Nice to play with. But when you're doing work, you don't want most things to work, and then logout/in using X to get the rest done. You want all things to work. Now, if there was something you could do with wayland but not with X, that would be another story.

                  Comment


                  • #49
                    Originally posted by mdedetrich View Post
                    But yeah, the utter stupidity that Wayland did here was releasing a protocol as stable when there wasn't even proper implementation by the DE's (or at least the major ones).
                    This is making a chicken and egg problem. Major DE will not start implementing protocols in many cases until they are declared stable. So order of events is locked. Few alterations to X11 protocol tried going you way and go not traction until after 4 and they finally gave up and declared it stable. Yes the X11 kind of common clipboard this was. So the large fragmentation mess in the way X11 clipboard is implemented is caused by doing exactly what you suggested there.

                    X11 history basically says you have to declared it stable first then get implementations. Going the other way is path to major mess. If you think wayland mess is bad now you don't want to see what it would look like if you did what you suggested.

                    Originally posted by mdedetrich View Post
                    The Wayland protocol should have been marked as stable after all of the uses cases have been ironed out.
                    X11 was not developed that way. Yes X11 has many documented attempts in the protocol history where this workflow absolutely never works. Wayland you are going to be dealing with the same people who were part of some of those history screw ups in X11 protocol and cannot expect them to act any differently.

                    Sometimes what you can do is limited by your audience. You can have the biggest bright spark idea but if it does not work with the audience you are not getting anywhere.

                    Originally posted by mdedetrich View Post
                    Due to this mismanagement, we also now have this case where all of the compositors are duplicating graphics hardware/driver code where as ideally this should have been abstracted away (this is one of the few things that X11 did well).
                    wlroots and libwayland-server are using library abstraction instead of socket/network abstraction. The reality is all compositors are not duplicating graphics hardware/driver code there are just 2 competing solutions. X11 at one point had 20 competing solutions.

                    Originally posted by mdedetrich View Post
                    (at least with X11, since everyone was using it there was also shared responsibility from everyone).
                    Bull crap. https://en.wikipedia.org/wiki/Accelerated-X

                    Its really simple to forget early X11 time frame you have competing solutions. Those competing X11 solutions were sharing stuff less than the Wayland solutions now are.

                    Originally posted by mdedetrich View Post
                    it should also come with an abstraction for GPU drivers/hardware so that compositors don't have to worry about AMD/NVidia/Intel/GBM.
                    KMS DRM and GBM all provide abstraction. All vendors make drivers providing those its really simple to forget nouveau is developed by Nvidia for usage in their arm soc chips. So they picked a set of abstractions then Nvidia said they would not play ball.

                    Gnome/Kde/Weston ... All wayland compositors don't have special code for AMD/Intel or Nvidia embedded platforms(nouveau). It is Nvidia causing a lot of extra work.

                    Comment


                    • #50
                      Originally posted by Hibbelharry View Post

                      Not quoting your full post, while this answer is some thought I noticed me thinking: Your definition of professional and backwards oriented behaviour seems to be the same. I think you can't accept change to the better, you just dislike change for being a change.
                      Because professional must have what you call "backwards oriented behaviour".
                      Just look at what Red Hat does with the kernel. They maintain a stable api and abi for 10 years!

                      However nobody would care if the change was seamless!
                      That's the whole problem with abandoning X before its successor is feature complete

                      Comment

                      Working...
                      X