Preferences

GaryBluto parent
I see it's time for the bimonthly reinvention of VirtualBox and VMWare's seamless modes from a few faceless techies on GitHub and designed for people who can't be bothered to use WINE or VirtualBox.

torginus
And unfortunately it has become the norm in open-source to push out shiny-looking projects with pretty logos and UX but shoddy underlying technology and deceptive/overstated claims (looking at you Tauri).

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.

mikaraento
Nit: RDP’s roots are more in multi-user windows like Citrix Metaframe than in remote administration. I’ve found it to perform better than the alternatives (remote X11, VNC, Chrome Remote Desktop) for remote GUIs. Nomachine is the only alternative that was close to its performance.

(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)

yonatan8070
From my personal experience (by feel, not scientific), NVIDIA GameStream is way faster than RDP. I used it with Sunshine and Moonlight.
Things made for game streaming will be more responsive at the tradeoff of massive bandwidth usage in comparison. RDP can work over slow connections reasonably well.
Nextgrid
Massive bandwidth usage and video compression artifacts. It's fine for games and media consumption, but may be problematic for office work.

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.

cheema33
Agreed that RDP is very well designed. And we don't have an equivalent in Linux or Mac world. All competing protocols are a compromise. I am particularly impressed with good multi-monitor support in RDP. Competitions has had more than a decade to get it right. But I am unaware of any that does.

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.

Amekedl
Care to elaborate regarding tauri? I figured it has matured into a fine electron alternative.
d3Xt3r
Not OP, but I recall Tauri greatly overstating their memory usage claims. It is ultimately a browser running your "app", but just because it's not bundled with your app, doesn't make it consume any lesser RAM. And they even admitted that their benchmarks were wrong[1].

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...

venturecruelty
I can't believe people will still put in all of this work instead of just... using their system's native GUI. Mind-boggling.
SeasonalEnnui
I've done both, I prefer embedded web views:

- 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.

mentalgear
I can recommend svelte(kit): great API and compiles down to just js.
mentalgear
Mostly Tauri claimed their main advantage was smaller app sizes since it's using the native WebView. What they didn't say is how a bottomless pit it is to try standardizing rendering on X different webviews, multiplied by X different webview versions (outdated, not updated systems) ; so now they have pivoted to shipping their own build-in browser ; Competition in open-space is okay but it shouldn't be made by only pushing its perceived advantages while withholding the systemic disadvantages.
venturecruelty
Well yeah. The goal for most of these people is to pad a portfolio so they can either get or remain gainfully employed. We are in the performative software era. It's not about data structures or algorithms anymore, it's all about GitHub stars.
wtcactus
Windows implementation of RDP is actually very good. You get a degree of responsiveness that is unachievable with neither Linux RDP implementation or any other product (maybe barring Parsec, that also doesn’t allow for Linux hosts).

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).

torginus
Yeah, but if the Windows app essentially draws into a GPU texture (which is mapped to a dmabuf buffer in the Linux kernel), you can just grab that texture and send it to the compositor.

The overhead difference is like memcpy vs a very fast SQL database.

knollimar
wait is it viable to run CAD (specifically autocad/revit) in any of these? It's the last thing keeping me on Windows
Yes, CAD software is perfectly usable via RDP.
DANmode
I love your username.

Willing to chat origin?

fragmede
I know this isn't the question you asked, but FreeCAD has made great strides.
hypercube33
Actually with RemoteFX GPU I think DirectX 9 games or something would work OK over it.
Nextgrid
I remember booting Crysis with that. I wouldn't say it was playable, but the fact it managed to actually launch was impressive. Maybe with modern hardware & bandwidths it would actually be.
ErroneousBosh
Why don't they just write a thin layer that interfaces Windows library calls to native Linux calls, possibly with a thin wrapper to shim it where nothing else quite fits? You could re-implement maybe some of the Windows libs as a "clean room project", given the functional description, that then hands off to an equivalent in Linux.

There's probably a cool and snappy acroynm you could use, like Virtual Interface (with nearly) No Overheard, or "Vino".

jstanley
That's just progress. Things that used to be hard become easy. Things that used to be impossible become hard.

Hard things become easy when for example it becomes feasible to connect to RDP instead of mucking about at the driver level.

It will be more reliable but less performant.

prox
As someone who is looking to go Linux, do most windows apps work now through Wine or VirtualBox ? I know Valve did a lot of work for games.

It’s been 4 years since I even took a good look at it.

MattPalmer1086
Just anecdata, but the few things I use via Wine have all worked fine. I use yabridge so I can use windows VSTs in my Linux DAW.

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.

d-lisp
I still have problems running some VSTs with yabridge (could be fixed in an afternoon, but it's important that people should know that it's not a plug and play experience).
wolfi1
I, for one, use Notepad++ with wine. I'm accustomed to it
mlok
About games compatibility made possible by Steam, check Proton DB : https://www.protondb.com/
prmoustache
Bar a few exceptions (gaminh mostly) you'd have a much better experience switching to native linux apps. Most are really good once you get past the resistance to change. It takes a bit of time to get used to some but once you are set you are no less productive.

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.

codingrightnow
What windows apps do you need? I switched full time to Ubuntu about a month ago and haven't missed a thing. I thought it would be harder, but after some usability configuration changes like how the mouse scrolls, some browser keyboard settings, system font sizes, and logging into a few accounts it has been snag free. Oh and I did install Microsoft fonts. I hate most Linux fonts. The biggest change really is just getting used to new icons. There are several features in Ubuntu I vastly prefer over windows, like window tabs in the file explorer for instance.
trimethylpurine
Windows 11 has tabs in the file explorer by default.
0134340
So does KDE's Dolphin and many others on Linux. Linux had tabs on file explorers well before Explorer did as well as virtual desktops, app stores, and a few other things that Windows didn't have but later implemented.
trimethylpurine
Right. It seems that maybe gp wasn't aware.
camtarn
Bit of a mixed bag for me. There are a lot of things that work remarkably well, but I have some issues with GPU performance (Cyberpunk 2077 just doesn't run well on Linux for me, despite running great on Windows on the same PC, and GPU-heavy apps like Insta360 Studio and Topaz Denoise run excruciatingly slow or not at all) and some things just don't work (my audio VST plugins work alright, albeit with some bugs about window position handling, but I can't get some of the licensing apps to work under WINE).
downut
I hardly want to run windows apps at all, but I have a garmin etrex 32x and I can't for the life of me get garmin windows software to run on wine or linux crossover (something to do with USB) and there is nothing available on linux that can talk to the device. I'd run Windows 10 in a VM but I looked (I think?) pretty carefully and valid Windows licenses seem to be well over $100, cheaper to use a refurbed office desktop.

Someone stomp me down and tell me I'm wrong, please.

SapporoChris
Most things work great. There are some niche things that do not work so well. Example: SteamVR,Vive VR Hub, some AntiCheat for games.
SteamVR works ok, but last I checked it still performs worse than on Windows. If you are feeling adventurous, you can try a FOSS VR stack [1]. It works for Steam games running Proton and when it works it provides better performance. I had some troubles with it, sometimes you need to switch versions or you get some artifacts in games, or some games just don't work at all. Good thing is, switching between FOSS and SteamVR is as simple as launching either first before starting the VR game in Steam.

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.

[1] https://lvra.gitlab.io/docs/fossvr/envision/

SapporoChris
Regarding FOSS VR stack, Unfortunately, WiVRn doesn't support Vive Focus Vision.

SteamVR for Linux requires DRM leasing to function and many Linux distros, well... window managers/compositors do not support this. But yes it can work.

A lot of them do, but for almost everything there are native alternatives.

I haven't used Wine directly in years, only indirectly through Steam.

encom
Anything that needs a driver isn't going to work. At my last job I needed to talk to some motor controllers and BMS systems through impressively terrible Windows software using proprietary device drivers. I had to keep a Windows partition around on my machine for this. I did have limited success with QEMU, but I never got it working quite right.
ErroneousBosh
What do you use in Windows? It's probably easier starting there and then working out what you can do about it.

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.

tiahura
Office doesn’t.
prmoustache
Office is easy to get rid of on a personal level through alternatives.

On a professional level the online office 365 web apps are enough for 99% users. My comoany do not even bother giving us licenses for the desktop apps so linux and windows users are on equal term really.

Except these seamless modes have been broken for many years. Also using a containerized Windows means one doesn't have to fiddle with the insane Windows 11 setup process and TPM issues.
torginus
For those of us who have used containerized Windows in prod, it is its on kind of hell
jopsen
What is containerized Windows?

This item has no comments currently.