Thing thing uses RDP for communication which was designed for remotely administering servers over low speed networks.
VirtualBox in contrast integrates at the driver level, and allows you to share the underlying GPU buffers, giving you a native experience that works for things like games or heavy apps. It integrates the Linux filesystem on a driver level as well.
(And before somebody jumps in to correct me - in ancient times X11 performed quite well over the network but modern Linux GUI apps are no longer designed to minimise X11 network traffic)
Remote desktop protocols prefer lossless compression to achieve pixel-perfect rendering, at the expense of framerate/latency.
RDP is unique in that it's not just streaming, but integrates with Windows' GUI stack to actually offload compositing to the client. This however works less and less well with web and Electron apps which do not use native OS widgets.
If I connect remotely from a 2 monitor setup, disconnect and re-connect from my laptop with just a single display, it all magically works. Everything readjusts automatically. I don't know of any other remote desktop protocol/tool that does this so well.
A lot of claims were also made about how Tauri is magically more performant than Electron apps and feels like a native app, but not only is this not true, on some platforms like Linux, Tauri apps are actually slower than Electron because the system webview it uses (generally WebKitGTK) is often slower and less optimised than the Chromium build that Electron ships with[2].
There's a bunch more claims due to it being "Rust" and all the memes that comes with that territory, but all that is basically irrelevant since your "app" is basically shitty javascript in the end. It's like putting lipstick and dressing up a pig, doesn't change the fact that it's still a pig.
[1] https://github.com/orgs/tauri-apps/discussions/3162
[2] https://www.reddit.com/r/tauri/comments/1kg5zb8/will_tauri_f...
- All the work is done in my high performance backend, where I joyfully optimise my hot loops to the assembly level. The web view is a thin layer on top.
- HTML and CSS is a joy to work with in comparison to many UI toolkits. LLMs are better at supporting a web stack.
- The UI zooms/scales, and is accessible with screen readers (looking at you, imgui).
- Cross platform with low effort.
IMO you have to be extremely careful not to pull in a whole frontend stack. Stay as vanilla as possible, maybe alpine.js or tailwind, and I've got hot reload set up so the developer productivity loop is tight when editing the view.
I know that RDP doesn’t work for gaming, but for anything else (even for CAD), it’s the best thing barring direct access to the machine (or, Parsec).
The overhead difference is like memcpy vs a very fast SQL database.
There's probably a cool and snappy acroynm you could use, like Virtual Interface (with nearly) No Overheard, or "Vino".
It’s been 4 years since I even took a good look at it.
Games (if they don't use kernel level anti cheat systems) are all flawless with Proton.
But, I honestly don't have a need to use much other windows only software. Almost everything I need to use has Linux versions, or alternatives that fit my needs.
I did the switch 2 decades ago and except for my annual 3 weeks of gaming, I never use wine nor do I use or feel the need for a win VM.
Someone stomp me down and tell me I'm wrong, please.
I guess the Linux VR stack might get a bit of love from Valve for the Steam Frame, so things might improve in the near future.
I haven't used Wine directly in years, only indirectly through Steam.
Games work great in Proton. Valve has gone all-in on Linux and I suspect before terribly long we'll see more stuff that's SteamOS native, with a compatibility layer for the people who are still using Windows.
I would suspect now that most people either play games which will mostly work okay from Steam, or use stuff that just works in a browser (and I'm kind of lumping Electron apps in with that). Then there are things that are never going to work all that well in Wine or have a native Linux port but which might be worth looking into something else for, like switching from Premiere to Resolve for video editing.
https://learn.microsoft.com/en-us/virtualization/windowscont...