12 ms·
"More powerful than Linux" is silly. It's a VM. The most useful thing is that it does a bunch of convenience features for you. I am not suggesting that it is no
by jchw 1y ago
"More powerful than Linux" is silly. It's a VM. The most useful thing is that it does a bunch of convenience features for you. I am not suggesting that it is not extremely convenient, but it's not somehow more powerful than just using Linux.
You know what's even more convenient than a VM? Not needing a VM and still having the exact same functionality. And you don't need a bunch of janky wrapper scripts, there's more than one tool that gives you essentially the same thing; I have used both Distrobox and toolbx to quickly drop into a Ubuntu or Fedora shell. It's pretty handy on NixOS if I want to test building some software in a more typical Linux environment. As a bonus, you get working hardware acceleration, graphical applications work out of the box, there is no I/O tax for going over a 9p bridge because there is no 9p bridge, and there is no weird memory balloon issues to deal with because there is no VM and there is no guest kernel.
I get that WSL is revolutionary for Windows users, but I'm sorry, the reason why there's no WSL is because on Linux we don't need to use VMs to use Linux. It's that simple...
- sweeter 1y agoAnd if they think that this version of Linux "isn't janky" but regular Linux is, than idk what to say.
- PaulHoule 1y agoWith WSL you can use “Linux the good parts” (command line tools, efficient-enough paradigms for fork() servers) and completely avoid X Windows, the Wayland death spiral, 100 revisions of Gnome and KDE that not so much reinvent the wheel but instead show us why the wheel is not square or triangular…
- xnickb 1y agoAfter having used i3 and Sway, Windows is surprisingly bad at handling windows for an OS called Windows. It requires a bit of work to setup to your liking of course, but hey, at least you have an option to set it up to your liking
- williamscales 1y agoAgreed. I used tiling WMs for a long while (ion3, XMonad) and it was such a productivity boost. Then I was forced to use a Mac for work, so I was using a floating WM again. On my personal machine, ion3 went away and I never fully got around to migrate to i3. By the time I got enough free time to really work on my personal setup, it had accumulated two huge monitors and was a different machine. I found I was pretty happy just scattering windows around everywhere. Especially with a trackball's cursor throw. This was pretty surprising to me at first. Anyway this is just my little personal anecdote. If I go back to a Linux install I'll definitely have to check out i3 again. Thanks for reminding me :)
- the__alchemist 1y agoCompiling and testing cross-platform software for Linux lately (Ubuntu and similar)... You can't even launch an application or script without CLI. Bad UX, IMO. For these decisions, There are always reasons, a justification, something about security. I don't buy it.
- folkrav 1y ago> You can't even launch an application or script without CLI. Care to elaborate? I'm not sure I understand what you're saying here.
- the__alchemist 1y agoI compile my program using WSL, or Linux native. It won't launch; not an executable. So, into the CLI: chmod +x. Ok. It's a compiled binary program, so semantically I don't see the purpose of this. Probably another use case bleeding into this. (I think there's a GUI way too). Still can't double click it. Nothing to launch from the right-click menu. After doing some research, it appears you used to be able to do it (Ubuntu/Gnome[?]), but it was removed at some point. Can launch from CLI. I make a .desktop file and shell script to move it to the right place. Double click the shell file. It opens a text editor. Search the right click menu; still no way. To the CLI we go; chmod +x, and launch if from the CLI. Then after adding the Desktop icon, I can launch it. On windows, you just double click the identified-through-file-extension executable file. This, like most things in Linux, implies the UX is designed for workflows I don't use as a PC user. Likely servers?
- const_cast 1y agoYeah the typical way programs are run is by using a .desktop file that's installed. The reason nobody cares is because running random executable that have a GUI is a pretty rare use case for Linux desktops. We don't have wizards or .msi installers, we just install using the package manager. And then it shows up where it needs to. If you're on KDE, you can right-click the start menu and add the application. Also, right-click menu should give you a run option.
- 1y ago
- ahartmetz 1y ago>the Wayland death spiral That sounds like Wayland getting worse, but it's actually been slowly improving and it's pretty good now. Only took a decade+ to get there.
- pelorat 1y agoMir was good from year one.
- davrosthedalek 1y agoJudging from what happened to X11, that means wayland will be deprecated very soon. /s
- const_cast 1y agoIt's all opinion of course, but IMO Windows is the most clumsy and unintuitive desktop experience out there. We're all just used to the jank upon jank that we think it's intuitive. KDE is much more cohesive, stable, and has significantly more features.
- tyingq 1y agoI know you're saying you don't have to use it, but for any that didn't know, WSL2 does ship with it's own Wayland. And it does have some weird bugs.
- jchw 1y agoIt blows my mind that people can complain about the direction KDE is going when trying to paint a picture about how it's so much nicer to use Windows. I know the boiling frog experiment is fake, but just checking: are you sure the water isn't getting a little uncomfortably warm in the Windows pool right now?
- adamc 1y agoIt's handy if you have other services that are Windows-based, though. And, being a VM, it's fairly convenient to have multiple versions and to back up.
- 0x457 1y ago> "More powerful than Linux" is silly. It's a VM. I don't think it's silly. Sure, it's a VM, but it's so nice that I barely reboot into Linux. You get the best of both worlds with WSL.
- xnickb 1y agoBut you still get the worst of the Windows world, which is more than many are willing to deal with. I was using windows for years as my main gaming OS, but after they announced W11 being the only way forward. Switching to Linux on the desktop was like a breath of fresh air. I'll leave it at that. If I were to run an OS on a VM it's gonna be windows, not Linux
- lxgr 1y agoFor me, the best part of running Linux as the base OS is not having to deal with Windows. No ridiculous start menu spam; a sane, non-bloated operating system (imagine being able to update user space libraries without a reboot, due to being able to delete files that other processes still have opened!); being able to back up my data at the file level without relying on weird block-level imaging shenanigans and so much more. How is inverting the host/guest relationship an improvement on that?
- phendrenad2 1y agoI have a theory that 99.9% of preferring Windows or Linux comes down to "do ads in the start menu trigger my OCD".
- lxgr 1y agoIt runs much deeper than that for me. Windows at its core just does not seem like a serious operating system to me. Whenever there are two ways to do something, its developers seem to have picked the non-reasonable one compared to Unix – and doing that for decades adds up. But yes, first impressions undoubtedly matter too.
- 1y ago
- ThinkBeat 1y agoYour comment that you can do Linux things on Linux missed the point entirely. Where is the reverse WSL on Linux, where Windows is deeply embedded and you have all the Windows features in your hands? You can use Wine/Crosseover, which is cool, but even now the number of software products it supports is tiny. Steam has a lot of games. You can run a virtual machine with Windows on it. That is identical to what you can do on Windows with Linux. WSL2-> is a virtual machine with unique tooling around it that makes it easier to use and integrates well with Windows.
- randunel 1y agoWindows supports Linux because the latter is open source, it's a lot easier than the reverse. Linux, on the other hand, barely supports Windows because the latter is closed, and not just closed, windows issues component updates which specifically check if they run in wine and stop running, being actively hostile to a potential Linux host. The two are not equivalent, nobody in the Linux kernel team is actively sabotaging WSL, whereas Microsoft is actively sabotaging wine.
- tyushk 1y ago> whereas Microsoft is actively sabotaging wine Do you have a link to where I can read more about this? My understanding is that Microsoft saw Wine as inconsequential to their business, even offloading the Mono runtime to them [1] when they dropped support for it. [1] https://www.mono-project.com/ https://www.mono-project.com/
- randunel 1y ago> Until 2020, Microsoft had not made any public statements about Wine. However, the Windows Update online service will block updates to Microsoft applications running in Wine. On 16 February 2005, Ivan Leo Puoti discovered that Microsoft had started checking the Windows Registry for the Wine configuration key and would block the Windows Update for any component.[125] As Puoti noted: "It's also the first time Microsoft acknowledges the existence of Wine." https://en.m.wikipedia.org/wiki/Wine_(software) https://en.m.wikipedia.org/wiki/Wine_(software)
- fsloth 1y agoThis is very much YMMV thing. There is no objectively best platform. There are different users and requirements. I’ve been a software developer for 20 years and in _my_ opinion Windows is the best platform for professional software development. I only drop of to linux when need some of the excellent posix tools but my whole work ergonomy is based on Windows shortcuts and Visual Studio. I’ve been forced to use Mac for the past 1.5y but would prefer not to. Why would Windows be superior for me? Because that’s where the users are (for the work stuff I did before this latest gig). I started in real time graphics and then spent over a decade in CAD for AEC (developing components for various offerings including SketchUp). The most critical thing for the stuff I did was the need to develop on the same platform as users run the software - C++ is only theoretically platform independent. Windows API:s are shit for sure for the most part. But still, from this pov, WSL was and will be the best Linux for me as well. YMMV.
- folkrav 1y agoI fully agree with you - "YMMV" is the one true take. Visual Studio has never been particularly attractive to me, my whole workflow is filled with POSIX tools, and my code mostly runs on Docker and Linux servers. Windows is just another thing to worry about for me, be it having to deal with the subtle quirks of WSL not running on raw metal or having to deal with running UNIX-first tooling (or finding alternatives) on Windows. If it wasn't for our work provided machines being Windows by default, and at home, being into VR gaming and audio production (mostly commercial plugins), I'd completely ditch Windows in a heartbeat.
- ActorNightly 1y agoYeah if you are working with Linux only, its better to go full linux. WSL2 is really handy when you want to run other software though. For example, I use Solidworks, so I need to run windows. Forscan for Ford vehicles also has to run under Windows. Having WSL2 means that I can just have one laptop and run any software that I want.
- 0xfeba 1y ago> Forscan for Ford vehicles also has to run under Windows. I've successfully run it with WINE. Thought, my Forscan executable was 3 years old or so and that may have changed, but I doubt it.
- bunderbunder 1y agoThe thing about WINE is that it's not necessarily solid enough to rely on at work. You never know when the next software upgrade will break something that used to work. That's always true, of course. But, compared to other options, relying on WINE increases the chances of it happening by an amount that someone could be forgiven for thinking isn't acceptable.
- the__alchemist 1y agoWhen I hear cases of using Wine etc as a substitute, I can't help but think of the "We have McDonald's at home" meme!
- jchw 1y agoWine is fantastic, but it is fantastic in the sense of being an amazing piece of technology. It's really lacking bits that would make it a great product. It's possible to see what Wine as a great product would look like. No offense to crossover because they do good work, but Valve's Steam Play shows what you can really do with Wine if you focus on delivering a product using Wine. Steam offers two main things: - It pins the version of Wine, providing a unified stable runtime. Apps don't just break with Wine updates, they're tested with specific Proton versions. You can manually override this and 9 times out of 10 it's totally fine. Often times it's better. But, if you want it to work 10 out of 10 times, you have to do what Valve does here. - It manages the wineserver (the lifecycle of the running Wine instance) and wine prefix for you. The latter is an interesting bit to me. I think desktop environments should in fact integrate with Wine. I think they should show a tray icon or something when a Wineserver is running and offer options like killing the wineserver or spawning task manager. (I actually experimented with a standalone program to do this.[1]) Wine processes should show up nested under a wineserver in system process views, with an option to go to the wineprefix, and there should be graphical tools to manage wine prefixes. To be fair, some of that has existed forever in some forms, but it never really felt that great. I think to feel good, it needs to feel like it's all a part of the desktop system, like Wine can really integrate into GNOME and KDE as a first-class thing. Really it'd be nice if Wine could optionally expose a D-Bus interface to make it so that desktop environments could nicely integrate with it without needing to do very nasty things, but Wine really likes to just be as C/POSIX/XDG as possible so I have no idea if something like that would have a snowball's chance in hell of working either on the Wine or desktop environment side. Still, it bums me out a bit. One pet peeve of mine regarding using Wine on Linux is that EXE icons didn't work out of the box on Dolphin in NixOS; I found that the old EXE thumb creator in kio-extras was a bit gnarly and involved shelling out to an old weird C program that wasn't all that fast and parsing the command line output. NixOS was missing the runtime dependency, but I decided it'd be better to just write a new EXE parser to extract the icon, and thankfully KDE accepted this approach, so now KDE has its own PE/NE parser. Thumb creators are not sandboxed on KDE yet, so enable it at your own risk; it should be disabled by default but available if you have kio-extras installed. (Sidenote: I don't know anything about icons in OS/2 LX executables, but I think it'd be cool to make those work, too.) The next pet peeve I had is that over network shares, most EXE files I had wouldn't get icons... It's because of the file size limit for remote thumbnails. If you bump the limit up really high, you'll get EXE thumbnails, but at the cost of downloading every single EXE, every single time you browse a remote folder. Yes, no caching, due to another bug. The next KDE frameworks version fixes most of this: other people sorted out multiple PreviewJob issues with caching on remote files, and I finally merged an MR that makes KIO use kio-fuse when available to spawn thumb creators instead of always copying to a temporary file. With these improvements combined, not just EXE thumbnails, but also video thumbnails work great on remote shares provided you have kio-fuse running. There's still no mechanism to bypass the file size limit even if both the thumbcreator and kio-fuse remote can handle reading only a small portion of the file, but maybe some day. (This would require more work. Some kio slaves, like for example the mpt one, could support partially reading files but don't because it's complicated. Others can't but there's no way for a kio-fuse client to know that. Meanwhile thumb creators may sometimes be able to produce a thumbnail without reading most of the file and sometimes not, so it feels like you would need a way to bail out if it turns out you need to read a lot of data. Complicated...) I could've left most of that detail out, but I want to keep the giant textwall. To me this little bit of polish actually matters. If you browse an SMB share on Linux you should see icons for the EXE files just like on Windows, without any need to configure anything. If you don't have that, then right from the very first double-click the first experience is a bad one. That sucks. Linux has thousands of these papercuts everywhere and easily hundreds for Wine alone. They seem small, but when you try to fix them it's not actually that easy; you can make a quick hack, but what if we want to do things right, and make a robust integration? Not as easy. But if you don't do that work, you get where we're at today, where users just expect and somewhat tolerate mediocre user experience. I think we can do better, but it takes a lot more people doing some ultimately very boring groundwork. And the payoff is not something that feels amazing, it's the opposite: it's something boring, where the user never really has any hesitation because they already know it will work and never even think about the idea that it might not. Once you can get users into that mode you know you've done something right. Thanks for coming to my TED talk. Next time you have a minor pet peeve on Linux, please try to file a bug. The maintainers may not care, and maybe there won't be anyone to work on it, and maybe it would be hard to coordinate a fix across multiple projects. But honestly, I think a huge component of the problem is literally complacency. Most of us Linux users have dealt with desktop Linux forever and don't even register the workarounds we do (anymore than Windows or Mac users, albeit they probably have a lot less of them.) To get to a better state, we've gotta confront those workarounds and attack them at the source. [1]: https://github.com/jchv/winemon https://github.com/jchv/winemon just an experiment though.
- zymhan 1y agoThe integration between Windows and the WSL VM is far deeper than a typical VM hypervisor. You cannot claim with a straight face that Virtualbox is easier to use.
- cogman10 1y agoIt's deeper but let's not overblow it. I think the two fairly deep integrations are window's ability to navigate WSL's filesystem and wslg's fairly good ability to serve up guis. The filesystem navigation is something that AFAIK can't easily be replicated. wslg, however, is something that other VMs have and can do. It's a bit of a pain, but doable. What makes WSL nice is the fact that it feels pretty close to being a native terminal that can launch native application. I do wish that WSL1 was taken further. My biggest grip with WSL is the fact that it is a VM and thus takes a large memory footprint. It'd be nice if the WSL1 approach panned out and we instead had a nice clean compatibility wrapper over winapi for linux applications.
- WorldMaker 1y ago> The filesystem navigation is something that AFAIK can't easily be replicated. The filesystem navigation getting partially open sourced is one of the more interesting parts being open sourced per this announcement. The Plan9 file server that serves files from Windows into Linux is included in the new open source dump. (The Windows filesystem driver that runs a Plan9 client on the Windows side to get files from Linux is not in the open source expansion.) It's still fascinating that the whole thing is Plan9-based, given the OS never really succeeded, but apparently its network file system is a really good inter-compatibility file communication layer between Linux and Windows. > I do wish that WSL1 was taken further. WSL1 survives and there's still a chance it will see more work eventually, as the tides shift. I think the biggest thing that blocked WSL1 from more success was lack of partners and user interest in Windows Subsystem for Android apps. That still remains a potentially good idea for Windows if it had been allowed "real" access to Google Play Services and App Store, rather than second rate copy of Amazon's copy of Google Play Services and Fire App Store. An actual Google partnership seems doomed given one of the reasons to get Windows Subsystem for Android competitive was fear of ChromeOS, but Google still loves to talk about how "Open" Android is despite the Google Play Services moat and that still sounds like something that a court with enough fortitude could challenge (even if it is probably unlikely to happen).
- high_na_euv 1y agoSo, how you run Windows on Linux like WSL does?
- zakki 1y agoMethods I know are using qemu/Wine/proxmox/VirtualBox.
- high_na_euv 1y agoBut he was acting as if Linux didnt need VMs ;)
- jchw 1y agoLinux doesn't need VMs, people need VMs. If you spend most of your time in Windows-exclusive apps and use WSL2 on occasion, then you already know what you want, why are you worried about arguing about it on the Internet? For many software engineers, a lot of our work is Linux, and it wouldn't be atypical to spend most of the time doing Linux development. I work on Linux and deploy to Linux, it's just a no-brainer to run Linux, too, aside from the fact that I simply loathe using modern Windows to begin with. (Outside of that, frankly, most people period live inside of the web browser, Slack, Discord, and/or Steam, none of which are Windows-exclusive.) My point isn't that Linux is better than Windows, it's that WSL2 isn't better than literally running Linux. If you need to do Linux things, it is worse than Linux at basically all of them.
- int_19h 1y agoSteam by itself is irrelevant, what matters is whether the game you want to play runs on Linux. For anything that is PvP multiplayer, this is very much not a given because of how pervasive kernel-level anti-cheat solutions are today.
- jchw 1y agoYou still have to go and make sure that what you want is there and works, but it's not a bad bet. With a few major omissions aside, there is a pretty big library of supported games. > For anything that is PvP multiplayer, this is very much not a given because of how pervasive kernel-level anti-cheat solutions are today. To be fair, though, you probably still have a better shot of being able to play the games you want to under Linux than macOS and that doesn't seem to be that bad of an issue for Mac users. (I mean, I'm sure many of them game on PC anyways, but even that considered macOS has greater marketshare than Linux, so that's a lot of people either able to deal with it or have two computers.)
- ComplexSystems 1y agoIs it a VM? It seems to be much faster than most VMs I've used.
- cogman10 1y agoLiterally built on top of MS's Hyper-V. IDK how many VMs you've used, but there has been a lot of work specifically with x86 to make VMs nearly as fast as native. If you interact with cloud services everything you do is likely on a VM.
- pjmlp 1y agoThe last time I deployed Linux servers on bare metal was about 2010. Apparently Linux VMs on other people's computers is very much appreciated.
- juancn 1y agoTechnically it's not a VM, it's a subsystem, the same way Win32, Win64, Posix, OS/2, etc. are. It's a feature of the NT-family of kernels where you can create many environments sharing the same underlying executive and HAL. It's a quite interesting way to build an OS: https://en.wikipedia.org/wiki/Architecture_of_Windows_NT https://en.wikipedia.org/wiki/Architecture_of_Windows_NT
- zargon 1y agoWSL1 was a subsystem. WSL2 is mostly a VM.
- enragedcacti 1y agoWSL 2 is actually virtualized despite the name
- oblio 1y agoThey had to give that up because it was too slow, I think for IO. Unfortunate.
- Dylan16807 1y agoIt's complicated. WSL1 is much faster at accessing the drives mounted in Windows, but much slower at accessing its own emulated drive. If you have control over where you put your git repo, WSL2 will hit max speed. If you want it shared between OSes, WSL2 will be slower.
- akho 1y agoIt also didn't have working fsync, and corrupted SQLite databases. I think that's more important.
- ori_b 1y agoIt used to be. They moved to a VM. Turns out that it's easier to emulate a CPU than syscalls. The CPU churns a lot less, too, which means that once things start working things tend to keep working.
- codr7 1y agoI definitely prefer working in Linux. But having Windows tightly integrated when needed is nice. If only I could run replace the Windows shell with a Linux DE...
- nottorp 1y ago> I get that WSL is revolutionary for Windows users It is... I'm working these days on bringing a legacy windows only application to the 21st century. We are throwing a WSL container behind it and relying on the huge ecosystem of server software available for Linux to add functionality. Yes that stuff could run directly on windows, but you'd be a lot more limited in what's supported. Even for some restricted values of supported. And you'd have to reinvent the wheel for a few parts.
- meta_ai_x 1y agoWindows has many useful software that is not available on Linux. So, for me Windows + WSL is more productive than just using Linux. The UI is still better on Windows(basic utilities like File Explorer and Config Management is better on Windows). No Remoting Software beats RDP. When I remote to a Windows workstation through RDP, I can't tell the difference. VNC is always janky. Of course there is Word/Excel/Illustrator which is simply not available on Linux
- a2128 1y agoFile Explorer is better on Windows? How? I tried Windows 11 for the first time a month ago and it takes several seconds for file explorer to open, it's asynchronously loading like 3 different UI frameworks as random elements pop in with no consistency, there's two different rightclick menus because they couldn't figure out how to make the new one have all the functionality of the old one so they decided to just keep the old one behind "Show More Options", and it's constantly pushing OneDrive in your face. I'm offended that this is what they thought is good enough to ship to a billion users.
- qwertox 1y agoThe File Explorer on Windows 11 is the worst experience ever. Windows 7 was snappy as hell, but I don't know what they did to damage it that badly. I use XYplorer, which is written in Visual Basic (so a 32 bit application), but is so much faster the native explorer (and is full with features).
- deleted 1y ago[deleted]
- amlib 1y ago> No Remoting Software beats RDP. When I remote to a Windows workstation through RDP, I can't tell the difference. VNC is always janky Any recent distro running Gnome or KDE has built-in support for connecting and hosting an RDP session. This used to be a pain point, you don't need to use VNC anymore. It's actually worse on windows since you need to pony up for a pro license to get RDP hosting support...
- ClumsyPilot 1y ago> You know what's even more convenient than a VM? Not needing a VM and still having the exact same functionality I mean this is basically heresy now. most code is virtualised, or sandboxed, or in a VM, or a docker container, or several of the above at the same time.
- jchw 1y agoThe important bit though is that Docker containers are not VMs or sandboxes, they're "just" a combination of technologies that give you an isolated userland using mostly Linux namespaces. If you're running a Linux host you already have namespaces, so you can just use them directly. Distrobox gives you basically the same sort of experience as WSL2 except it doesn't have any of the weird parts of running a VM because it's not VMs.
- ok123456 1y agoMy coworkers stubbornly try to use WSL instead of Linux directly. They constantly run into corner cases and waste time working around them compared to just using Linux. Some tooling detects that it is running on Windows, and some detects that it is running on Linux. In practice, it's the worst of both worlds.
- makeitdouble 1y agoSaying running full Linux avoids wasting time on fiddly workarounds kinda blows my mind. Full hardware support is still not a given, and Windows emulation is still need for so many cases (e.g. games, specialized software etc). Until I can choose any machine based on form factor and specs alone and just run Linux on it, WSL will the best version of Linux it can run.
- trelane 1y ago> Full hardware support is still not a given, If you're not buying your hardware from a vendor you can call and get support with Linux from, you're going to have a hard time.
- guappa 1y ago> Full hardware support is still not a given I bought an iphone and then got angry it didn't run android
- bongodongobob 1y agoWhat modern hardware isn't supported by Linux? I haven't had driver problems in probably over a decade. I don't even target Linux for my builds, it just works. Same with the pile of random laptops I've installed it on. Wifi out of the box etc.
- delta_p_delta_x 1y ago> What modern hardware isn't supported by Linux? Fingerprint sensors and IR login cameras that are pre-installed on many laptops, and have Windows-only drivers. As an end-user (yes, I'm an engineer too, but from the perspective of the OS and driver developers I am an end-user) I don't care who is in charge of getting the device to work on an OS—I only care that it works or not. And these devices don't, on Linux. So, they are broken.
- RajT88 1y agoI heard 2025 was the year of Linux on the desktop!
- krferriter 1y agoIt's a VM plus some usability automation. Can't ignore the usability benefits.
- vhguru 1y agoIf Windows provided easier access to hardware, especially USB, from WSL it would be nice. In fact, if WSL enumerated devices and dealt with them as native Linux does, even better.
- xylophile 1y agoJust FYI, you may also enjoy systemd-machine. It's essentially the same thing as toolbx but it handles the system bus much more sanely, and you can see everything running inside the guest from the host's systemctl.
- shmerl 1y ago> You know what's even more convenient than a VM? Not needing a VM and still having the exact same functionality. Exactly.