“Wine” is not a virtual machine or an emulator; it is just a compatibility later that allows Windows applications and games to run under Linux and Mac OS. Most of them, anyway.
Yeah. I wouldn’t run Linux without it. So many Windows programs just run under Linux with it.
It’s one of the main reasons people don’t have to switch back to Windows.
I have a couple of simple bookkeeping clients where I use an old version of Quickbooks Desktop. (They are so small it’s not worth it for them to pay the exorbitant Quickbooks Online fee.) It absolutely will not run in Wine. I have tried several times. So I have a Win10 virtual drive just for the one time per month I need to spend 15 minutes or so on these clients. And it’s always a nightmare. No, I don’t want you to back up my “drive.” No, I don’t want you to check for updates. JFC, I just want to do my little thing and GTFO.
Since everyone here loves using the terminal; this week Microsoft has revealed that they ported coreutils (the most basic group of shell commands used to navigate, search, or manipulate files in Unix-like systems) to windows!
A Microsoft-maintained build of uutils/coreutils, findutils, and grep packaged as a single multi-call binary for Windows. The goal is to make moving between Linux, macOS, WSL, containers, and Windows frictionless: the same commands, flags, and pipelines work the same way, so existing scripts carry over without translation.
There are many shell command-line utilities out there, but here’s a list of the GNU coreutils. Now there’s nothing stopping windows users from abandoning their File Manager and other Windows’ system GUIs for a life in powershell. ![]()
Strong EEE vibes there. Wonder how long before they start adding some subtle Windows-only flag that will “accidentally” break scripts on other platforms.
Besides, those utils aren’t always the same even between Unixes, Linuxes, and macOS versions. They’re loosely similar but exact params and behaviors do differ.
I think that ship has sailed. Anyone working in cmd or PowerShell is there for a reason. There’s already cygwin or the seemingly backwards named Windows Subsystem for Linux (WSL) if EEE was the goal. And certainly an AI coding agent is an easy escape hatch to lock-in (like your help moving a Doper from Python to GoogleSheets not too long ago).
Anyway, thanks @orcenio . I do enough in PowerShell that I installed it although it looks like I’ll have to fix the path order to get the right versions.
They seem to have chosen to port a selection of uutils (which is the recent Rustlang rewrite utils). Probably chose these due to the permissive MIT licence. Although they state that they will be excluding commands which conflict with some built-in commands native to CMD and PowerShell. Also they purposely won’t port a selection of commands because they do not care about POSIX compliance.
Commands that exist upstream but aren’t shipped here because they rely on POSIX-only concepts, would break existing Windows scripts, or simply aren’t useful on Windows.
dd: Perhaps useful in the future.dircolors,shred,sync,uname: Not particularly useful on Windows.chcon,chgrp,chmod,chown,chroot,groups,hostid,id,install,logname,mkfifo,mknod,nice,nohup,pinky,runcon,stdbuf,stty,tty,users,who: POSIX-only concepts unavailable on Windows.
Agree w @CaveMike that your contention doesn’t make much sense.
As you rightly say, there’s already n different conflicting versions w different syntaxes and nuances. MS making that become n+1 doesn’t amount to much until and unless they can take over *nix world. Which we all know isn’t going to happen.
It’s not so much a prophecy as much as a worry. The difference between the existing n variations and Microsoft’s n+1 is not so much any technical differentiation but just a reputational one, IMO. Microsoft has historically not been a good citizen.
Any OS can make their own compliant or at least mostly-compatible set of utils, as many of the *NIXes have already done. But unlike Microsoft, most of those companies rely on that same ecosystem and are innately incentivized to play nice with it. Many of them have an open source pedigree, depend on a core upstream Linux/GNU open-source community, and usually survive by selling enterprise support instead of the OS itself.
Microsoft sidesteps that whole community (and ethos) when they reimplement something like this on their own, as they have done many times in the past. And historically, at least, they’ve tended to play good citizens only for a few years during the “embrace” phase, then gradually extend it with proprietary Windows/Microsoft-only add-ons or flags or modes, until it is no longer compatible with the rest of the ecosystem.
The danger there isn’t so much that they will extinguish *nix — they’re too small in that space, and they themselves rely on it too much these days, if only for Azure — but that they’ll be tempted to introduce yet more Microsoft-first incompatibilities instead of working together with the rest of the ecosystem, making everyone else’s lives harder again.
Even during the first Web Wars, for example, even before IE6 took over the world, Microsoft’s ActiveX and JScript did actively hamper adoption of better and more open standards & browsers. And even now, with things like WSL (Windows Subsystem for Linux), there are still many tools that don’t quite work the same (or as well) on Windows. Docker and virtualized filesystems can be painful to troubleshoot, still. (Personally, I guess I wish they’d move to a proper *nix kernel and just plop a Windows UI on top if they must, instead of all these half-assed compatibility layers.)
But to their credit, Microsoft has been getting more open-source friendly, especially in the dev-facing side (where these utils are targeted): VSCode, TypeScript, Playwright, etc… even as their consumer-facing side continued to enshittify with Copilot, Edge and Windows ads.
I think it’s that tug-of-war (between their consumer and dev divisions) that makes it hard to trust them as a company. Their leadership is forever torn between trying to product-ize their own users vs trying to evolve Microsoft’s culture and image to be more trustworthy, and it always feel like it’s one step forward, two steps back for them. Microsoft, the dev tooling division releases a bunch of excellent FOSS tools, but then they are caught in the reputational blast radii of Microsoft, the consumer slop company, and Microsoft, the sloppy SAAS services company.
I dunno. Maybe it’s just an unreasonable personal grudge I have against them, remembering how much of a PITA they’ve been since the 90s. Shrug. Maybe it’s just me, and that perception is antiquated now? I dunno.
Besides, as @CaveMike said — AI makes porting trivial these days anyway.