Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> Nobody has ever explained to me what it means, what its goals are, what constraints it has on the system or the protocol.

In today's world, what I think people want to do (and certainly what I want to do) is ssh to a machine, run a graphical program on that machine and see and interact with it in my graphical environment. X11 with ssh tunneling lets me do that. It's not a great experience, for all sorts of reasons, but it's an experience, and people who have been around for a while remember that it used to work better. It's usable enough on many applications to work in a pinch, or for ocassional work (I always run mythtv-setup via remote X, because it's inconvenient otherwise; sometimes I run a graphical browser over remote X to access localnetwork only servers from outside my home, but only if I can't get proxying to work, because browsers on remote X are awful in 2020 in ways they weren't in 2005)

I haven't looked in a while, and maybe waypipe fills this gap now, but I think at least some people are frustrated because Wayland is supposed to replace X11, but it doesn't hit all their use cases, and they may not care that much about the things it does better because they were used to the old ways. (Of course, if those things include hardware support, that will be a forcing function).

I certainly understand your frustration though. You built something new and better, and people won't use it because they're stuck on something that barely works.



It's not a great experience, and it doesn't work at all with everything that uses video acceleration (like a modern browser, and as a corollary all Electron applications).

In contrast Windows RDP protocol works much better, even if it's sending the whole desktop as a video stream, and works even on modest connections (like a 20mbit/s ADSL).

In fact nowadays I would argue that the method used by Xorg is no longer ideal: the commands that needs to be sent between the application and the GPU are too big to be sent on a network connection. Instead we got much better video compression algorithms, so it's better instead of sending on the network the commands to draw the application to just have the server GPU render the application and then send a compressed video stream to the client.


> it doesn't work at all with everything that uses video acceleration (like a modern browser, and as a corollary all Electron applications).

Works for me. 15 years ago it was a bit more problematic, but worked still.

> works even on modest connections (like a 20mbit/s ADSL)

This is not modest by any means. Vnc works good on 56 kbit, and marginally at 24kbit.


> It's not a great experience, and it doesn't work at all with everything that uses video acceleration (like a modern browser, and as a corollary all Electron applications).

I'm posting this with Firefox 79 running on FreeBSD, displayed on Windows (VcXsrv) via remote X over ssh (gigE lan because I'm at home). Not sure how much modern I need to get. chromium-84 also installed and worked enough. Scrolling is glitchy, and I don't dare watch a video[1], but either would work enough if I need to use a graphical browser to administer some network device remotely (I used to be able to use w3m for a lot of those)

I'm sure RDP would be better, but it doesn't fit my use case. I don't want a whole desktop, just one window, and I do need it to tunnel through ssh, and it's nice when it's a simple setting, so I can just run a program and it shows up. If there's an easy way to tunnel RDP that I'm not aware of, I'm happy to learn, especially if the experience is better, but if it's super fiddly, I'd rather use what I know and what works, even if it's laggy and awful.

If RDP worked like X, I'd love to setup a beefy windows server in my basement and play games on it via RDP from my PCs around the house. If anyone has tips on that, would love to read them. (Requirements: single server, three simultaneous users, single GPU ideal, but flexible; want to play Civ V etc with the family. Cost (including licensing) needs to be comparable with three low tier desktops (i3-8300 ))

> In fact nowadays I would argue that the method used by Xorg is no longer ideal

Again --- I know it's not ideal, it's just less fiddly and I already know how to use it, and it how to make it work hasn't changed significantly in the last 15 years (mostly the windows X servers are better and crash less), and desktop applications tend to be more synchronous and harder to use over high latency connections. I'm not looking to run all my applications from the other side of the country, I just want to occasionally run a couple things from home when I'm not there, or to setup my HTPC with a mouse and keyboard instead of a remote control.

I think everyone will hate me for suggesting it, but I could imagine an X11 extension where if the client is not local to the server, it would switch to rendering everything locally and sending compressed video; I don't expect anybody to build that, but there's no reason you couldn't do it. It wouldn't solve important issues like head of line blocking, of course.

[1] Ok, for giggles, I tried to watch something on youtube. It was surprisingly decent. Lots of tearing, and I don't know where the audio went (clearly, not over X which doesn't do that, not sure if it was playing on the X client host), and it took a long time to stop the video because I'm guessing a whole ton of frames were buffered. But, I got the idea of the video, and it didn't kill the session. If I were doing this over my WAN, it would be a lot worse, clearly.


I understand what you want but as someone who spends a non insignificant time watching youtube videos over what amounts to a glorified VNC (it's not VNC though) I don't see why a video compression based solution wouldn't work for you. The only downside is that real time video encoding is very CPU intensive if you're running it on a budget VPS. However, CPU based HEVC decoding is also really bad on a VPS. On a dedicated server or machine it's going to be insignificant though.

>If RDP worked like X, I'd love to setup a beefy windows server in my basement and play games on it via RDP from my PCs around the house. If anyone has tips on that, would love to read them.

Let's be honest. Using X for this would have absolutely atrocious results. Steam already has a solution for that and it is based on video encoding. You can stream games from a local machine to any computer with the Steam client installed on it. There is also dedicated hardware to stream to a TV and use a controller instead so you might not even need more than one computer. [0]

[0] https://store.steampowered.com/steamlink/about/


> If RDP worked like X, I'd love to setup a beefy windows server in my basement and play games on it via RDP from my PCs around the house. If anyone has tips on that, would love to read them. (Requirements: single server, three simultaneous users, single GPU ideal, but flexible; want to play Civ V etc with the family. Cost (including licensing) needs to be comparable with three low tier desktops (i3-8300 ))

Steam's in-home streaming is close to what you want. However, I don't think it supports multiple simultaneous users. Perhaps there is a way to hack that to work somehow, assuming you had three Steam accounts with a copy of the game each.


Search for XPRA.


XPRA sounds like screen for X? Plus maybe a betterish protocol, but also maybe a bit more fiddly?




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: