|
|
Subscribe / Log in / New account

Android

Android

Posted Jun 2, 2010 11:34 UTC (Wed) by nix (subscriber, #2304)
In reply to: Android by drag
Parent article: Danjou: Thoughts and rambling on the X protocol

We need to eliminate all direct access from the X server to your hardware
Isn't KMS very nearly there already? The only thing it needs root for now is to ensure that nobody else is snooping on your input devices.


to post comments

Android

Posted Jun 2, 2010 15:22 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link] (10 responses)

That's what Wayland is, basically. It's a simple layer between hardware and client software.

It uses KMS and command submission infrastructure so it doesn't need to run as root and touch hardware directly.

If/when KMS+Gallium3D layer matures enough, it should be fairly simple to move QT/GTK directly to this layer (they are less and less dependent on exotic X features, anyway) and run rootless X for compatibility with the old clients. Like Apple did in 2000-s.

Android

Posted Jun 2, 2010 17:04 UTC (Wed) by nix (subscriber, #2304) [Link] (9 responses)

I meant that *X with KMS* is very nearly at the 'not running as root or touching hardware directly' stage. This is quite different from some direct-on-the-hardware layer: we still have X protocol support, network transparency and the whole shebang.

To be honest I can't see any advantage whatsoever in having a direct-on-the-hardware Gtk/Qt port: you lose network transparency, which is useful, and gain a tiny bit of performance which is probably entirely imperceptible locally in any case.

Android

Posted Jun 2, 2010 17:51 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link] (8 responses)

Network transparency will be soon broken in KDE, so it's not a great loss.

And there are better ways to create networked GUI applications now - VNC and SPICE. One can even use streaming video with SPICE, something which is impossible in pure networked X.

And X with KMS already can work as a simple user, without root access. It might happen in Ubuntu this year: https://blueprints.edge.launchpad.net/ubuntu/+spec/deskto... (Fedora might have it already, no idea)

X network transparency

Posted Jun 2, 2010 19:02 UTC (Wed) by martinfick (subscriber, #4455) [Link] (7 responses)

"Network transparency will be soon broken in KDE, so it's not a great loss."

Wow, where is the logic in this statement? If KDE breaks it, it will be a great loss (more for KDE than for X). If another large project breaks some other standard, NFS, HTTP, TCP, would you simply conclude that it must therefore be "not a great loss"?

Everyone claiming that network transparency of X can currently be done in better ways is obviously NOT thinking about all the use cases that X supports.

If you are a single user with simple use cases, i.e. I want to see my home desktop from my laptop while at work, yes VNC is good. But if you have ever worked in a collaborative environment across many unixy machines, X is undeniably way more powerful than VNC.

If I simply want to log into a test machine and run one GUI app (perhaps a browser), remotely, without having an entire desktop setup, I can do that easily with X. I can have ten different apps on my desktop running across ten different remote hosts transparently. The fact that these apps might not eventually integrate perfectly with KDE or GNOME in the future is not going to kill X (and they certainly would integrate even less well with VNC). It will be a shame, but the desktops are not the end all be all. X will survive just fine without their full support and will continue to be used in creative powerful ways, even if some people can't envision the use cases that other's have been (and will still be) using for decades.

X network transparency

Posted Jun 2, 2010 19:56 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link] (6 responses)

"Wow, where is the logic in this statement? If KDE breaks it, it will be a great loss (more for KDE than for X). If another large project breaks some other standard, NFS, HTTP, TCP, would you simply conclude that it must therefore be "not a great loss"?"

Is HTTP used by less than 1% of KDE users?

Also, what do you think about removal of Gopher support from FireFox?

"If you are a single user with simple use cases, i.e. I want to see my home desktop from my laptop while at work, yes VNC is good. But if you have ever worked in a collaborative environment across many unixy machines, X is undeniably way more powerful than VNC."

Yawn. I worked in a collaborative environment. X is still not superior to VNC.

"If I simply want to log into a test machine and run one GUI app (perhaps a browser), remotely, without having an entire desktop setup, I can do that easily with X. I can have ten different apps on my desktop running across ten different remote hosts transparently."

Yawn. So most of people won't care about it. Apple's GUI is not network transparent, but I don't see people crying rivers about it. That's what is going to happen.

Also, you can certainly have only your application windows without complete desktop environment with VNC. VirtualBox does this, for example.

X network transparency

Posted Jun 2, 2010 20:27 UTC (Wed) by sfeam (subscriber, #2841) [Link] (3 responses)

"If I simply want to log into a test machine and run one GUI app (perhaps a browser), remotely, without having an entire desktop setup, I can do that easily with X. I can have ten different apps on my desktop running across ten different remote hosts transparently."
Yawn. So most of people won't care about it. Apple's GUI is not network transparent, but I don't see people crying rivers about it. That's what is going to happen.

Maybe all that yawning indicates you are too tired to think about how and why people still use this? I agree strongly with martinfick. It is very nice to be able to ssh in to another machine, often a server not running a desktop at all, and fire up one X-based utility. Ditto for ssh access to an older or minimally configured machine that doesn't have enough memory to run vncserver.

And yes, it is a problem that Apple's GUI does not support this. It means, for example, that even though FileMaker running on an Apple server provides a nice http interface for user access, I still have to walk over to another lab in order to perform administrative tasks on it. I don't cry a river, but I'd switch to an X11+linux equivalent for FileMaker if I knew of one.

X network transparency

Posted Jun 2, 2010 21:49 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link] (1 responses)

"Maybe all that yawning indicates you are too tired to think about how and why people still use this? I agree strongly with martinfick. It is very nice to be able to ssh in to another machine, often a server not running a desktop at all, and fire up one X-based utility. "

And there are people who still use Gopher. Should we base all our browsers around Gopher layer? Maybe, you know, by using big ASCII ART pictures transformed 'on-the-fly' to 24-bit color images.

Cause that's about the same way current X works.

"Ditto for ssh access to an older or minimally configured machine that doesn't have enough memory to run vncserver."

This excuse is quite thin. Vnc4server with minimal DE takes about 4Mb of RAM.

"And yes, it is a problem that Apple's GUI does not support this. It means, for example, that even though FileMaker running on an Apple server provides a nice http interface for user access, I still have to walk over to another lab in order to perform administrative tasks on it. I don't cry a river, but I'd switch to an X11+linux equivalent for FileMaker if I knew of one."

And I just use VNC for Apple. You know the one that Apple bundles with each copy of Mac OS X (http://www.wikihow.com/Setup-VNC-on-Mac-OS-X).

So maybe you should stop assuming that networked X is the only way to do networked graphics?

X network transparency

Posted Jun 8, 2010 14:38 UTC (Tue) by jschrod (subscriber, #1646) [Link]

Did it ever occur to you that a remote desktop is something different than a remote application and that for many people it is not a good enough substitution? Use cases that cannot be replicated have already been cited. (In particular: many remote applications that integrate with one's WM, and not many remote desktops that need a full desktop setup at the remote system.)

But you think that all the world has to have the same needs as you, don't you?

X network transparency

Posted Jun 3, 2010 8:42 UTC (Thu) by Janne (guest, #40891) [Link]

"And yes, it is a problem that Apple's GUI does not support this. It means, for example, that even though FileMaker running on an Apple server provides a nice http interface for user access, I still have to walk over to another lab in order to perform administrative tasks on it. I don't cry a river, but I'd switch to an X11+linux equivalent for FileMaker if I knew of one. "

Well, you could just use VNC, which works just fine on Macs. Apple even has a polished implementation of it available:

http://www.apple.com/remotedesktop/

But of course, standard free VNC would work as well, it just might not have all the bells and whistles of the Apple Remote Desktop.

And if you are running X11-aware UNIX-apps, then you could use X11 for MacOS, which is shipped with every copy of OS X....

X network transparency

Posted Jun 2, 2010 20:39 UTC (Wed) by sbishop (guest, #33061) [Link] (1 responses)

Yawn. So most of people won't care about it. Apple's GUI is not network transparent, but I don't see people crying rivers about it. That's what is going to happen.

And if that's what you're looking for--a Unix GUI which isn't network transparent--then a solution, as you have already pointed out, is already available.

I know from experience that X network transparency for a single app is extremely useful in a lab environment, where the rest of Linux is also useful.

Inflexible operating systems which only cater to the average user are easy to find. I don't see any reason to throw out the very things which make Linux flexible and unique.

By the way, does anyone know how it is that KDE is supposed to be breaking this valuable feature of X exactly? I don't follow KDE.

X network transparency

Posted Jun 2, 2010 21:17 UTC (Wed) by drag (guest, #31333) [Link]

I like X network transparency a lot and use it all the time.

Moving to OS X is not a good one because I really dislike Apple's corporate policies and I dislike how the Unix side of things and the Aqua side of things are two entirely different worlds. With Gnome on Linux I have full system integration from top to bottom.

But if I was to loose out with X network transparency in exchange for a more efficient system, less memory usage, and better designed drivers (and the other benefits that that gives) then it would be a happy trade off.

There are a massive number of different ways to do remote GUI systems nowadays.

X is pretty good, but nobody ever fixed it's deficiencies. Instead we have a shitload of hacks and work arounds on the toolkit level to make it usable.

Android

Posted Jun 2, 2010 18:44 UTC (Wed) by drag (guest, #31333) [Link] (1 responses)

> Isn't KMS very nearly there already? The only thing it needs root for now is to ensure that nobody else is snooping on your input devices.

We are getting closer and closer, certainly.

What we will eventually need is a generic DDX that only targets "Linux" rather then individual video devices.

Graphics drivers are maturing: Open Source ATI and Nvidia drivers are doing a good job progressing and are in the progress of providing mature Gallium drivers.

Open Source Intel driver developers do not seem to have received the 'Gallium religion' yet.. they seem happy with their own UXA stuff happening in the X Server; but I think they will get the religion rapidly once they realize that writing a new driver from the hardware-on-up for each API they want to support is a shitty idea.

--------------------------

For remote desktop/network transparency I envision something like SPICE were you are able to stream video using modern compression techniques to client systems.

Maybe using WebM. Have the rendering happen on the remote machine, the buffers for the applications get rendered to Vp8. PulseAudio + Gstreamer outputs the audio to Vorbis.

These get combined to a WebM stream that get sent to the 'client' (your local machine).

Then all that is needed is a protocol for input control were pointer, keyboard, copy/paste buffer, input gets feed back to the remote machine in order to interact with the programs.

The client program to display the remote desktop then needs to not be anything more complicated then a web browser. Browser would render the WebM video and then Javascript to capture the input from the user and send it back to the remote system.

With modern computer architectures with built-in video acceleration both the clients and the servers will be able to do the compression/decompression no-sweat.

Android

Posted Jun 3, 2010 16:24 UTC (Thu) by Spudd86 (subscriber, #51683) [Link]

VP8 is not a low delay codec, it would not be suited to this usecase (Dirac however does have a low delay mode, but it's not implemented in a way that enables low delay operation in the open source encoders and decoders, however there is hardware that does it, but it's REALLY high end stuff like $10k price tag type things)


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds