Top
Best
New

Posted by pbohun 3/29/2025

Convert Linux to Windows(philipbohun.com)
371 points | 452 commentspage 5
amelius 3/30/2025|
> While the Linux syscalls themselves are very stable and reliable, the c library on top of them is not. Practically all of userland is based on libc, and therefore by proxy Linux itself has a binary compatibility problem.

Can't we freeze the functionality of libc? Why does it need to be updated so frequently?

And even if we make changes to its implementation, why do we need to bump the version number if the underlying API is still the same?

kazinator 3/30/2025||
> I can pull down a 20 year old exe and still run it today on Windows.

Sure, but for how much longer will Microsoft allow this unsigned ancient binary?

Using Linux for runing Windows programs is going to be desperately needed as Microsoft enshittifies Windows going forward.

marticode 3/30/2025|
I really don't see Microsoft blocking unsigned exe. There's just too much old Windows/DOS software out there still in use, sometimes running critical infrastructure.
SunlitCat 3/30/2025||
Like someone already said somewhere, it will come in steps.

Windows S Mode was already a test.

The nagging, warning and outright "blocking" (while hiding the "run anyway" button under "more info") is the first step. This already is a warning to software vendors that something will come.

The next step will be blocking unsigned exes on Home Editions (not on Pro or Enterprise), so that software vendors and most of places depending on unsigned old software can move on to signed software.

Then Home and Pro Editions of windows wont be able to run unsigned software anymore and if you need unsigned software to run you'll have to use an Enterprise Edition.

The last step would be no windows can run unsigned software anymore and if you need unsigned software running, you'll need to run that one on an Azure instance of Windows which can still run unsigned software or (if you can't / don't want to run your software in the cloud) you will have to contact Microsoft for a special Windows version, costing lots of money. But if your business depends on that one single unsigned exe file, you might be ready to pay for that one.

shmerl 3/30/2025||
By the way, Wine is more stable than Windows itself in supporting older Windows ABIs.

Someone should develop an analog for Linux itself. I.e. support for older / historic ABIs that would be translated into whatever modern Linux has.

Some isolated example of that is SDL 1.x translated to SDL 2.

Wine itself already exists, you don't need to develop any new distro for running Windows programs on Linux. Just improve Wine if anything is missing.

jillesvangurp 3/30/2025|
Exactly, wine is all that's needed here for windows stuff. And we have snap, flatpak, docker, and a few other things for Linux stuff.

We'll probably get a bit of irony in a few years when somebody at MS realizes that they can just use wine on top of their Linux emulation layer to run any old MS legacy software from the past three decades+ and then cleans up the rest of windows to not have any support for legacy APIs. Because having that is redundant. Emulators are great. There's no need to run ancient software natively.

artemonster 3/30/2025||
> "In Windows, you do not make system calls directly. Instead, you dynamically link to libraries that make the system calls for you. This allows Microsoft to do all sorts of shenanigans at the kernal level while providing a stable API to userspace."

Or, in other words, "We can solve any problem by introducing an extra level of indirection."

pizlonator 3/29/2025||
Seems like it would be easier to identify and fix cases of ABI compat breakage in the Linux userland than to convert Linux to Windows.
Spivak 3/30/2025||
This would be an option if the Linux userland wasn't a mish-mash of unconnected developers with their own practices and release cadence. It's why we have LTS distros where the company will put in the massive amount of work to preserve binary compatibility.

But the trade-off is that the software you have in your repos will be really old. At the end your RHEL support cycle libs will be a decade out of date.

GoblinSlayer 3/30/2025||
OpenSSL
pizlonator 3/30/2025||
What about it
avodonosov 3/30/2025||
Breaks compatibility. They remove or rename functions often and openly say they are not going to maintain compatibility.
pizlonator 3/30/2025||
There are lots of alternative ssl libraries.

Point still stands: fixing the situation with these libraries seems like less fuss than turning Linux into windows.

blueflow 3/30/2025||
> There's also no guarantee that a binary produced today on Linux will even work on the various distributions of Linux today due to the same installed library version problem.

On Linux, you are supposed to share the source code, not the binaries. FOSS source is easier to fix than a binary blob. This is why the FSF exists.

bobsmooth 3/30/2025|
99% of Windows users don't even know what compiling is, nevermind compiling from source themselves.
adham-omran 3/30/2025||
It is not just _running_ things that's the problem, authentication and authorization are massive, I've attempted to run various Audio plugins with Wine which either do not run at all or they run on a one-time basis which is not feasible for any long term setup. Oh if only you could run them under a vm..
pkulak 3/30/2025||
How much more of this opinion should I read when it’s established in the third paragraph that the author doesn’t realize that AppImage does not bundle a libc? Flatpaks do, and Snaps are a closed system that bundles _Ubuntu_, so really the answer is Flatpaks. And the rest of the world has also come to that conclusion.
tex0 3/30/2025||
That is pretty much what I'm doing with Steam, Proton and my Game Library. 99% the time it works just great.
lvturner 3/30/2025||
Sadly a few sim racing games don't run at all and VR is a bit hit and miss (though the Quest3 with either WiVRN or ALVR seems to work well)

Still I'd rather this than deal with daily driving Windows! I'm amazed at how good Gaming on Linux has gotten over the past few years.

int_19h 3/30/2025||
If you mostly do singleplayer, sure.

Anything online with anti-cheat is usually broken.

akimbostrawman 4/1/2025||
>usually broken

The working number is usually around 40-50% see areweanticheatyet.com

vednig 3/30/2025|
Thank you for writing these thoughts.

I've also reached a similar conclusion while building ZeeeroOS from scratch.

There's also Fat binaries(arch independent) that should be considered but no one does when building for Linux.

[1] https://github.com/zeeeroos

More comments...