Live data from Hacker News

Loss32: Let's Build a Win32/Linux

loss32.org

471–480 of 493 posts

Re: Loss32: Let's Build a Win32/Linux

#471
post #50

This might offend some people but even Linus Torvalds thinks that the ABI compatibility is not good enough in Linux distros, and this is one of the main reasons Linux is not popular on the desktop. https://www.youtube.com/watch?v=5PmHRSeA2c8&t=283s

> the ABI compatibility is not good enough in Linux distros

surely forced versioning of GLIBC didn't help.

"This program requires GLIBC_2.33"

Re: Loss32: Let's Build a Win32/Linux

#472
post #68
post #64

Earlier quoted context omitted.

My gaming PC isn't compatible with windows 11, so it was the first to get upgraded to Linux. Immediate and significant improvement in experience. Windows kept logging down the system trying to download a dozen different language versions of word (for which I didn't have a licence and didn't want regardless). Steam kept going into a crash restart cycle. Virus scanner was ... being difficult. Everything just works on L…

>> some sound issues Is this 1998? Linux is forever having sound issues. Why is sound so hard?

> Why is sound so hard?

Because they keep "updating" it every couple of years. Though, "updating" in latest years, meant just adding additional layers on top of ALSA. SW design and engineering is hard.

Re: Loss32: Let's Build a Win32/Linux

#473
post #460

Earlier quoted context omitted.

Is it painful? Why? You need a build environment that has the old libraries. It does not have to be ancient, just exactly what you need.

It has to be as ancient as the oldest glibc you want to support, usually a Red Hat release with very old version and manual security backports. These can have nearly decade-old glibc versions, especially if you care about extended support contracts. You generally have difficulty actually running contemporary build tools on such a thing, so the workaround is to use —-sysroot against what is basically a chroot of the o…

If the problem is getting the build tools to work in your old chroot, then the problem is still "people distributing programs that request the newest version", i.e. the build tool developers / packagers. I generally do not have this problem, but I am a C programmer building computational tools.

Re: Loss32: Let's Build a Win32/Linux

#474
post #473

Earlier quoted context omitted.

It has to be as ancient as the oldest glibc you want to support, usually a Red Hat release with very old version and manual security backports. These can have nearly decade-old glibc versions, especially if you care about extended support contracts. You generally have difficulty actually running contemporary build tools on such a thing, so the workaround is to use —-sysroot against what is basically a chroot of the o…

If the problem is getting the build tools to work in your old chroot, then the problem is still "people distributing programs that request the newest version", i.e. the build tool developers / packagers. I generally do not have this problem, but I am a C programmer building computational tools.

Look, it’s not that complicated. If you just build your software with gcc or whatever in a docker container with pinned versions, put the binary on your website, and call it a day, 5 minutes later someone is going to complain it doesn’t work on their 3 year old Linux Mint install. The balkanization of Linux is undeniable at this point. If you want to fix this problem without breaking anything else, you have to jump through hoops (and glibc is far from the only culprit).

You can see what the best-in-class hoop jumping looks like in a bunch of open source projects that do binary releases — it’s nontrivial. Or you can see all the machinations that Flatpak goes through to get userspace Mesa drivers etc. working on a different glibc version than the base system. On every other major OS, including other free software ones, this isn’t a problem. Like at all. Windows’ infamous MSVC versioning is even mostly a non-issue at this point, and all you had to do before was bundle the right version in your installer. I’ll take a single compiler flag over the Linux mess every day of the week.

Do you distribute a commercial product to a large Linux userbase, without refusing to support anything that isn’t Ubuntu LTS? I’m kind of doubting that, because me and everyone I know who didn’t go with a pure Electron app (which mostly solves this for you with their own build process complexity) has wasted a bunch of time on this issue. Even statically linking with musl has its futziness, and that’s literally impossible for many apps (e.g. anything that touches a GPU). The Linux ecosystem could make a few pretty minor attitude adjustments and improve things with almost no downside, but it won’t. So the year of the Linux desktop remains illusive.

Re: Loss32: Let's Build a Win32/Linux

#475

Earlier quoted context omitted.

And more performant. Software written for 2005 Windows runs super fast on todays systems.

Sometimes I install Office 97 for kicks and marvel at how much I can do with it, yet it asks so little of my system. <2Mb RAM for Word 97!

Same here. I have a physical copy of Word 97, although TBH I use the classic licence key 11111-111111111 to "activate" it because it's easier.

It runs fine under WINE, and you can install the 3 service packs for it too. As released, when you try to save a .RTF file it actually doesn't. Not that that matters, but it's nice to have all the known the bug fixes.

It runs inside the L2 cache on any modern-ish CPU. Even on a Core 2 Duo, it's fast.

It is hilarious and sad to recall that when it came out -- I was working for PC Pro magazine around then -- it was seen as big and bloated and sluggish compared to Office 95. The Mac version, Office 98, was a port of the Windows version, and Mac owners hated it.

Now, it's tiny and sleek.

Re: Loss32: Let's Build a Win32/Linux

#476

Someone please create a windows 7 like user interface or even XP like interface too and you got yourself a serious fan I might seriously recommend it to newbies and like there is just this love I have for windows 7 even though I really didn't use it for much but its so much more elegant in its own way than windows 10 like it can be a really fun experiment and I would be interested to see how that would pan out.

https://github.com/SerenityOS/serenity is just that, except it's a whole OS that's Win2k styled. If it ever gets good hardware support it might have a chance. Or maybe ReactOS - the actual windows clone - gets finished. Rumours put a first release date some time after Hurd.

> https://github.com/SerenityOS/serenity is just that, except it's a whole OS that's Win2k styled.

It's a Unix underneath, though. A strange modernised Unix written in C++ but it's definitely Unix-like.

It's a Unix-like with a Win2K GUI, which is a pretty attractive combination, TBH...

Re: Loss32: Let's Build a Win32/Linux

#477

Earlier quoted context omitted.

One month ago their site went dark https://github.com/versoft-software/free95/ They also forked Uinxed kernel so as to run their userland. I believe they are the same. Still, it makes sense what they are trying to do.

To be honest, this seems like a project by some kid or something that has absolutely no idea what they're doing. It's a little painful to witness.

I agree. I wrote an article saying so about 9 months ago.

As a little Yule gift, one of the creators wrote me a hatemail at Xmas telling me he still remembered and it still burned and what a bad person I was.

Well, he got his own back. I was hurt, too. Perhaps he thinks that makes us even. Share the pain.

Re: Loss32: Let's Build a Win32/Linux

#478
post #396
post #71

Earlier quoted context omitted.

Enterprise is not retail and is usually done via volume licensing, but probably without any additional configuration it might have that stuff intact. But you can use group policy etc. freely. I don't know how Win 11 is though

FWIW, ChatGPT advised against LTSC or Server editions for a dev workstation and recommended Enterprise, as you do. However, I can’t find Enterprise from a reputable EU vendor. Do you know of any? Is Enterprise available to end users?

It's not officially, but nothing prevents you from buying licenses.

I don't use Windows anymore but iirc the easiest way is to get the E3 or E5 licenses. The volume licensing is "Contact us" pricing

LTSC is also Enterprise, but it's meant for e.g. computers attached to an industrial machine/line that rarely gets updated and such. But it's used by many prosumers as a way to avoid bloat and e.g. keep Win10 for longer

Re: Loss32: Let's Build a Win32/Linux

#479
post #79
post #50

This might offend some people but even Linus Torvalds thinks that the ABI compatibility is not good enough in Linux distros, and this is one of the main reasons Linux is not popular on the desktop. https://www.youtube.com/watch?v=5PmHRSeA2c8&t=283s

To quote a friend; "Glibc is a waste of a perfectly good stable kernel ABI"

But Glibc has pretty good ABI compatibility. As do other low level system interfaces. The main problem for desktop applications is the lack of a stable GUI toolkit ABI - and that doesn't matter for other kinds of applications like games.

Re: Loss32: Let's Build a Win32/Linux

#480

Earlier quoted context omitted.

At least glibc uses versioned symbols. Hundreds of other widely-used open source libraries don't.

Versioned glibc symbols are part of the reason that binaries aren't portable across Linux distributions and time.

No, versioned symbols are required for ABI compatibility.

The only thing that is lacking is an SDK to easily target older glibc versions compared to the one you are using on your build server - but that's something that you can build yourself with some effort.

Post reply on HN