Hacker News new | ask | show | jobs
by cryptarch 3355 days ago
I think it is more significant from a user's perspective that they get the GNU tools to run on their NT machine with MS support.

What's the use of Linux syscall -> NT syscall translation if not compatibility with developer tools, most of which are GNU software?

2 comments

So you were actually serious? I thought your first post was great satire. Poe's law strikes again...
I think the syscall translation part is an irrelevant hack, seems silly to act like that is what makes the project more useful because it does not guarantee performance, compatibility or stability.
The syscall translation makes it more useful than the previous UNIX subsystem, because it means it can near-perfectly emulate a popular POSIX-like system (Linux), and thus be compatible with most of its software, rather than being its own eccentric platform that existing POSIX software must first be ported to.
So is it near-perfect yet?

I don't see the value if it's not more stable than "excentric" platforms like Cygwin and MSYS, but I guess I wouldn't use it either way because there's no way I'm installing Windows 10 on my hardware.

> developer tools, most of which are GNU software?

such as python, nodejs, elixir and PHP?

You can say that about Linux as well; the bread-and-butter of the CLI experience is still the GNU stuff.

EDIT: Yes, there are non-GNU Linux distributions, but WSL is based off Ubuntu specifically and ships with a GNU userland by default.

I feel that you miss the point of WSL. Bash and coreutils have worked on Windows for years. In fact, they ship with git so most developers have had them for years.

The point is compatibility much more than CLI UX. The ability to run that nodejs or Python project even though one of the 1352 subsubsubdependencies has a bug on Windows.

So it's supposed to be more stable than Cygwin? Is it that right now?

I thought Cygwin was very stable and included most things you could want, while also supporting Win7/8, which are the last versions I'm willing to run on my hardware.

There are Linux distributions which contain almost no GNU software, e.g. Alpine Linux which is built around musl libc and busybox: https://alpinelinux.org/about/
WSL is "Ubuntu GNU/NT". You can't base your WSL install off other distros AFAIK.
It takes a little work, but SuSE can work with WSL too: https://www.suse.com/communities/blog/make-windows-green-par...
What if you run a ToyBox userland then? Or BusyBox for that matter
What if your run ToyBox on Ubuntu? You have a lot of work to do upfront and get less functionality in return.