4 ms·
until you need to forward X, which I sometimes find very useful (on a LAN it's not too bad)
by amrcnimgrnt 5y ago
until you need to forward X, which I sometimes find very useful (on a LAN it's not too bad)
- tokamak-teapot 5y agoI used to use it over the internet in 1995. It worked nicely then.
- handrous 5y agoAFAIK it worked a lot better back then because X programs sent basic drawing instructions, so messages were tiny. I'm pretty sure most of them send images over the wire now for the whole window, like VNC or what have you, thanks to all the fancy eye-candy and extra layers we've added.
- bitwize 5y agoThat's still a stupid way of doing it. What they should be doing is caching pixmap atlases server side and sending draw requests to draw subsets of those. If they send an entire image over the wire for each frame draw, it's purely due to developer laziness. Also, with "flat design", suddenly libXaw is on the cutting edge of UI look and feel again...
- rjsw 5y agoDevelopers don't get to see what is going on, everything is hidden in multiple layers of libraries, it isn't down to laziness.
- bitwize 5y agoSomeone had to write the libraries!
- audidude 5y agoYes, they do that. But they often use Xshm to upload those pictures to the display server, and that still means sending them to the peer for server-side blitting. Further more, by using TCP/X11 for the wire protocol, any dropped packets have to be retransmitted before you can update unrelated portions of the display because it requires in-order processing by design. This is why high-quality, high-frame-rate remote displays never use that design.
- AnonymousPlanet 5y agoYou might find waypipe interesting: https://gitlab.freedesktop.org/mstoeckl/waypipe/ https://gitlab.freedesktop.org/mstoeckl/waypipe/
- Teknoman117 5y agoNice to see someone is working on it. Over Christmas 2017 I threw together a simple demo of a "system compositor" (a compositor that runs another wayland compositor) that sent all of the video frames rendered into a hardware video encoder (libva on an Intel GPU) as well as the screen. I was able to record playing games without much CPU overhead at all. I never really got beyond nesting the weston reference compositor because both gnome's wayland compositor and kde's kwin compositor don't support running nested (or at least didn't at the time). Was quite proud of myself for being able to record steam games playing at full screen framerate (Crypt of the Necrodancer and other simple things, I had a i7-5600u in my laptop). I'd have probably turned it into a project like this, but I work for a streaming service professionally and they didn't approve of me working on open source work in that realm :(
- ozarkerD 5y agoDang that sounds really cool. Such a shame you couldn’t keep working on it
- CountSessine 5y agoBut you can do this with XWayland?
- amrcnimgrnt 5y agoI don't know, I didn't know about it :p
- cpach 5y agoHow often does one need to do that though? At ${dayjob} we do it once in a blue moon; not out of sheer necessity but for legacy reasons. Other than that I never do it.
- tablespoon 5y ago>> until you need to forward X, which I sometimes find very useful (on a LAN it's not too bad) > Other than that I never do it. If we got rid of all the features that someone never uses (or even a lot of people never use), we wouldn't have any features anymore.
- handrous 5y agoI think there's a lot of potential for "run an app remotely, draw it locally". A crippled, single-application version of that's an entire, recent, highly-publicized startup, even (the controversial remote-Chrome-as-a-service company that's been posted about quite a bit in the last couple months). I think it's not widely done because Apple and Microsoft haven't put out good tooling for it. If one of them released that kind of thing as a high-quality, polished feature, I bet it'd be big. Also, IMO the default set-up and behavior for it on Linux machines isn't very good (shocker, that). Much better would be persistent remote sessions that let you drop your connection on one machine and re-connect on another, and leave them running indefinitely when not connected. You can get that working with some extra software but it's a bit janky and the UX is nerd-only, like most of this stuff.
- amrcnimgrnt 5y agoWhen you need it you need it, no matter how often. in grad school we used it to share very powerful workstations without getting out of the office. Sometimes I need to use a GUI program on my Desktop while I'm away. It might be something as silly as adjusting a parameter on a simulation run. Sometimes I want to start a program on a remote computer (say VLC on my kids laptop downstairs) Embarrassing admission - sometimes I know how to adjust a setting from the GUI and not from terminal. Maybe I want to mute a computer downstairs (btw, just an example. I'd use alsamixer, if killall weren't an option). Honestly, I'd use it a lot more if it were faster and less laggy. Daily, even.