Announcement

Collapse
No announcement yet.

It's Time To Admit It: The X.Org Server Is Abandonware

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

  • Originally posted by Raka555 View Post
    What exactly is/was wrong with MIR ?
    MIR came exactly at a time where all sails should have been hoisted to get Wayland out there. The underlying principles between Wayland and MIR aren't that different. Canonical wanted to become the gatekeeper for Linux graphics with MIR and a CLA on it that made them the sole source for commercial licenses. It didn't propel Canonical into a dominant position. All it did was create confusion and it made it unclear which display system was the way forward for Linux. Nvidia used it initially as an excuse to not support Wayland and it slowed stuff down for several years. After years Canonical pulled the plug out of MIR as a MIR server and salvaged the work by repurposing MIR as a Wayland compositor. MIR itself isn't bad, but Canonical's hubris and power hunger derailed the Wayland roll out that was running fine until then.

    Comment


    • What about cygwin Xserver? Is it abandonware too? Or other Xservers working over the native UI Systems?

      Comment


      • Originally posted by mdedetrich View Post
        Also FYI, the EGLStreams interface is very similar to what is used on Android and Windows, this is why they suggested it.
        Sorry bull crap on that Android bit. Android interface in fact has nothing todo with EGLStreams https://www.collabora.com/news-and-b...using-drm/kms/ In 2018 Android legacy interface was deprecated and replaced with Mainline Linux drm/kms/gbm this was not that hard since Android existing logic was already based off linux drm/kms/gbm logic to user space. https://github.com/libhybris/libhybris Yes you can dig though libhybris here that allowed android userspace drivers to be used with wayland and X11 solutions. Yes android old driver with libhybris in fact works with Xwayland without a problem.

        Android and Wayland are based of the EGL standard from Khronos before EGLstreams was added. Wayland starts in 2008 and EGLStreams from Nvida appears in 2009. Yes Android is even older they come out of 2003 EGL for their original libhybris user-space. EGLstreams is absolutely not based on the work Android it.

        Do note libhybris for android drivers was used in early Wayland development and it is from 2004 so wayland protocol was designed to suite android drivers of the time this is also why Xwayland with them works perfectly.

        Wayland protocol has hell of a lot in common with the way Android does things because old Android drivers were used in the early development process along side GDM drivers.

        EGLStreams might have something in common with Windows but is absolutely not Android. If EGLStreams were in fact based around android user-space drivers interface plugging it into Wayland and XWayland would not be a problem.

        Originally posted by mdedetrich View Post
        Perfectly reasonable for NVidia to do this since X11 is meant to be deprecated. The real problem here is that NVidia suggested a solution that works with their driver (EGLStreams) and the entire community originally said "f off" because the suggestion came from an NVidia email.
        That not the case exactly. Wayland protocol is 12 months old when Nvidia finally speaks up about EGLStreams and the first form is going to require major altering because you cannot run standard EGL applications on it. Took Nvidia another 3 years to get EGLStreams to be able to run normal EGL applications. So someone walks up to your door with something that is without question broken the answer really should be "f off" and that was early EGLStreams.

        Originally posted by mdedetrich View Post
        Then when Linux people finally realized that apart from NVidia really doesn't have a choice (barring re-implementing their entire driver which isn't going to happen), EGLStreams is the best they can do. Note that NVidia blob can't work with GBM without a severe performance hit because they are fundamentally designed in a different way (grossly oversimplified, GBM is a synchronous interface where as EGLStreams is an asynchronous/stream based interface).
        That is a no you have missed early Wayland using userspace Android users with the libhybris interface. So there was never any requirement for Nvidia to support GBM. EGLStreams is NIH by Nvidia like it or not. If they had followed libhybris model XWayland with Nvidia would work now. Libhybris uses the libglvnd Nvidia invented.

        Originally posted by mdedetrich View Post
        Also as another tidbit, NVidia actually wanted to use EGLstreams as the basic interface for compositing (since its an open standard approved by Khronos) but Linux people largely ignored this.
        But it was all Nvidia NIH work with no other supporters by any other vendors. If you are going to push something like this expect to be left holding the bag todo everything.

        Originally posted by mdedetrich View Post
        On the other hand, NVidia suggested EGLStreams even before Wayland,
        That is wrong and you repeat it. Wayland is before EGLStreams. Lot of people mix up EGL and EGLStreams. EGL is before wayland and before Wayland Nvidia has basically no useful EGL support.

        Originally posted by mdedetrich View Post
        The biggest issue here Is Linux's developers unable to accept the fact that NVidia's stance is not going to change (for completely rational reasons) and to be collaborative in working with them. That is purely Linux's fault.
        No you have missed the complete level of what the.

        Nvidia makes libglvnd in 2012. Libglvnd is accepted as the officially abstraction by everyone on Linux in 2012 including Nvidia. If you want to be correct libglvnd deprecates EGLstreams.

        Basically nvidia is causing problems because they have not deprecated eglstreams and moved to libglvnd to provided normal EGL The way libglvnd does things does line up with Windows and Androids ways quite well. Eglstreams is Nvidia bastard child that need to be taken out back and put out of it misry. Yes what Nvidia does with Eglstreams could also be done by libglvnd using EGL. Remember libhybrids provided android drivers don't have GDM synchronous model either..

        Remember Nvidia proposed libglvnd not providing a libglvnd wrapper to normal EGL for EGLStreams interface that is Nvidia failure.

        Comment


        • Hmm, so I see comments are being removed from this thread. So not only can we not get blocklists working, but now comments are being deleted too (a comment which had several likes). I guess I can see which way the wind is blowing around here. People who don't believe in Gnome are not welcome here, nor is anyone that would dare to speak against it. Noted. I paid for a lifetime membership, but will probably stop coming here soon enough. It's just not worth it anymore. Just like I said in my (now deleted) comment; choice is being taken away from Linux users, day by day. And apparently the choice of having a certain opinion is one of those things.

          Comment


          • sa666666 Did you quote 144hz in your now deleted post? It seems to me some of144hz's posts are gone, also all posts that quoted them. If that's the case, it wasn't your post that was problematic, it was just caught in the clean-up.

            Comment


            • sa666666
              http://islinuxaboutchoice.com/ -> NO
              It is no coincidence that this statement comes from the same background you are criticizing...

              Given that imho Linux should be about choice, at least when it comes to UX, because otherwise it is just an open source os.
              But the availability of the source code means nothing to most of the users.
              I think in this and other instances it's not much about choice, but rather replacing the status quo (broken as it may be) with something clearly not ready and thus even more broken.
              Effectively making the users unwilling beta testers for very immature software.

              PS: I know that for some use cases Wayland is more than ready, but to be widely adopted it must be transparent.
              Until then it will be an inferior experience

              Comment


              • Originally posted by oiaohm View Post

                Sorry bull crap on that Android bit. Android interface in fact has nothing todo with EGLStreams https://www.collabora.com/news-and-b...using-drm/kms/ In 2018 Android legacy interface was deprecated and replaced with Mainline Linux drm/kms/gbm this was not that hard since Android existing logic was already based off linux drm/kms/gbm logic to user space. https://github.com/libhybris/libhybris Yes you can dig though libhybris here that allowed android userspace drivers to be used with wayland and X11 solutions. Yes android old driver with libhybris in fact works with Xwayland without a problem.
                I was talking about the framebuffer implementation which indeed has changed a couple of years ago as you pointed out, although slightly irrelevant considering most Android devices lag behind a couple or more years (and at the time NVidia used framebuffers which is the go to solution)

                Originally posted by oiaohm View Post
                Android and Wayland are based of the EGL standard from Khronos before EGLstreams was added. Wayland starts in 2008 and EGLStreams from Nvida appears in 2009. Yes Android is even older they come out of 2003 EGL for their original libhybris user-space. EGLstreams is absolutely not based on the work Android it.
                Wayland in its early years was a bit of a pipe dream and no one really took it seriously (no discredit to Wayland here, this is normal for something new).

                Originally posted by oiaohm View Post
                Do note libhybris for android drivers was used in early Wayland development and it is from 2004 so wayland protocol was designed to suite android drivers of the time this is also why Xwayland with them works perfectly.
                I know the Wayland protocal is just that, a protocol so it doesn't really care about the underlying details. My point is about the current situation with Linux and the NVidia blob.

                Originally posted by oiaohm View Post
                Wayland protocol has hell of a lot in common with the way Android does things because old Android drivers were used in the early development process along side GDM drivers.

                EGLStreams might have something in common with Windows but is absolutely not Android. If EGLStreams were in fact based around android user-space drivers interface plugging it into Wayland and XWayland would not be a problem.
                EGLStreams and the Wayland protocol is not the same thing. I know that the Android protocol was very similar to Wayland, I was talking about the graphics driver stack.

                Originally posted by oiaohm View Post
                That not the case exactly. Wayland protocol is 12 months old when Nvidia finally speaks up about EGLStreams and the first form is going to require major altering because you cannot run standard EGL applications on it. Took Nvidia another 3 years to get EGLStreams to be able to run normal EGL applications. So someone walks up to your door with something that is without question broken the answer really should be "f off" and that was early EGLStreams.
                Yes because understandably NVidia doesn't want to spend time implementing a solution that Linux isn't going to adopt because Linux is hostile towards NVidia. To be clear, at the time the primary argument used against NVidia was a hostile version of "release an open source driver" or "use GBM directly" rather than finding a proper solution. For example KDE initially didn't want to implement EGLStreams not because of the merit's (and non merit's) of EGLStream's but because they didn't want to manage multiple codepaths and everything should be GBM based (which is kinda ridiculous because one of the main effects of Wayland being a protocol is that compositors have to deal with this).

                And yes NVidia also didn't treat Wayland seriously because Mir also existed and also because of the whole "NIH" syndrome that the Linux ecosystem tends to get itself into. If I was NVidia I also wouldn't spend any time on this "brand new hot thing" unless I had some signal that it was going to be seriously adopted.

                Originally posted by oiaohm View Post
                That is a no you have missed early Wayland using userspace Android users with the libhybris interface. So there was never any requirement for Nvidia to support GBM. EGLStreams is NIH by Nvidia like it or not. If they had followed libhybris model XWayland with Nvidia would work now. Libhybris uses the libglvnd Nvidia invented.
                This is correct for Android, but not for Linux desktop. Android as far as the ecosystem goes is far more open to "proprietary drivers" and so I am not surprised that some solution was made because its in Google's best interest to do so (otherwise they can't release a phone).

                On the other hand with Linux desktop wouldn't have accepted libhybris even if NVidia suggested it (in fact this is the first I heard of libhybris so I am reading up on it but since it is the first time I have heard of it thats already indicative enough.


                Originally posted by oiaohm View Post
                But it was all Nvidia NIH work with no other supporters by any other vendors. If you are going to push something like this expect to be left holding the bag todo everything.
                I am not sure what you mean by vendors. EGLStreams is an open standard and variants of it was used in the past (Android pre 2018). I mean you are implying that NVidia did a lot of effort to implement something completely different which apart from not being correct is also making no sense (why would NVidia spend all of their time making something completely new?).

                The fact is, the majority of NVidia's driver is actually a cross platform blob with an interface for every OS they support (old MAC'os with NVidia cards, BSD's, Linux and Windows). NVidia proposed a solution that gave the best performance for how their driver is designed (they said this directly).


                Originally posted by oiaohm View Post
                That is wrong and you repeat it. Wayland is before EGLStreams. Lot of people mix up EGL and EGLStreams. EGL is before wayland and before Wayland Nvidia has basically no useful EGL support.
                Yes, technically Wayland came before EGLStreams but as stated previously no one took Wayland seriously because it was so new.



                Originally posted by oiaohm View Post
                Basically nvidia is causing problems because they have not deprecated eglstreams and moved to libglvnd to provided normal EGL The way libglvnd does things does line up with Windows and Androids ways quite well. Eglstreams is Nvidia bastard child that need to be taken out back and put out of it misry. Yes what Nvidia does with Eglstreams could also be done by libglvnd using EGL. Remember libhybrids provided android drivers don't have GDM synchronous model either..

                Remember Nvidia proposed libglvnd not providing a libglvnd wrapper to normal EGL for EGLStreams interface that is Nvidia failure.
                This may be partially correct but at least according to https://github.com/NVIDIA/libglvnd, libglvnd does support EGL and also appears to be updated (last commit was 3months ago which from a company like NVidia isn't atypical workflow).

                So I am not sure what the problem here is, at least according to that project repository NVidia does intend to fully support EGL unless I am missing something (the project is also open source so anyone can commit the changes necessary).

                Also FYI: Google is also developing a new kernel that will eventually replace Linux for Android and one of the main features of their new kernel is that it maintains an ABI for drivers which sit in userspace (in other words it works much better with proprietary drivers) rather than expecting everything to be in the kernel tree. This is because of very real issues that Android faces where a lot of phones are using outdated Linux versions and the Linux version can't be updated independently of proprietary drivers (which poses obviously problems).
                Last edited by mdedetrich; 26 October 2020, 02:08 PM.

                Comment


                • Originally posted by Gusar View Post
                  sa666666 Did you quote 144hz in your now deleted post? It seems to me some of144hz's posts are gone, also all posts that quoted them. If that's the case, it wasn't your post that was problematic, it was just caught in the clean-up.
                  Well if that's the case, I sincerely apologize. And sorry for the outburst there, but it seems that coming to these forums and dealing with certain people is just getting more and more toxic. And on top of all that, all that's going on with Linux and the direction it's heading (for better or worse). And finally of course, COVID. This year really sucks, and I think nerves are frayed and tempers flare. It's certainly the case for me. That being said, there are certain people here that provoke this behaviour, and no doubt delight in it.

                  Comment


                  • Originally posted by bearoso View Post
                    That's an good insight.

                    BeOS and Haiku run programs with full privilege. Windows XP and earlier did the same. Those operating systems were intended for single users. X11 is rarely used or allowed as a multi-user server anymore, so security would only protect users from themselves. That's what's stupid about Wayland. Wayland runs as a client application, but it tries to prevent stuff like keyboard grabbing, mouse warping, or giving any client program control of anything, even though everything is sandboxed to the user. That, too, only protects users from themselves. How about we treat people as competent and allow them to control their own hardware?
                    and what about running untrusted applications, like games? Or sometimes you also get malware and stuff. If the user wants to run a screen recorder or something under wayland the compositor can just allow it, but ultimately the compositor is in control and could ask the user before granting that. In X no such mechanism exists.

                    Comment


                    • Originally posted by bobbie424242 View Post
                      Wake me up when I can run Sway without telling me that "--my-next-gpu-wont-be-nvidia".
                      Until then, Xorg works just fine with i3.
                      I'm afraid you can sleep forever then.

                      Comment

                      Working...
                      X